./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i -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(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 6e6f79eda5be95b806b33aaa2a353a360ae33a1e35cc1bf6f128d14768d932de --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 16:50:35,085 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 16:50:35,086 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 16:50:35,106 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 16:50:35,106 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 16:50:35,107 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 16:50:35,108 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 16:50:35,109 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 16:50:35,112 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 16:50:35,115 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 16:50:35,115 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 16:50:35,117 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 16:50:35,117 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 16:50:35,121 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 16:50:35,122 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 16:50:35,124 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 16:50:35,126 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 16:50:35,126 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 16:50:35,127 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 16:50:35,131 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 16:50:35,132 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 16:50:35,136 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 16:50:35,137 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 16:50:35,137 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 16:50:35,139 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 16:50:35,142 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 16:50:35,142 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 16:50:35,142 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 16:50:35,143 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 16:50:35,143 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 16:50:35,143 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 16:50:35,144 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 16:50:35,145 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 16:50:35,146 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 16:50:35,147 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 16:50:35,147 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 16:50:35,147 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 16:50:35,148 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 16:50:35,148 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 16:50:35,148 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 16:50:35,149 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 16:50:35,152 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 16:50:35,168 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 16:50:35,168 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 16:50:35,168 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 16:50:35,168 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 16:50:35,169 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 16:50:35,169 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 16:50:35,169 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 16:50:35,170 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 16:50:35,170 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 16:50:35,170 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 16:50:35,170 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 16:50:35,170 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 16:50:35,170 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 16:50:35,170 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 16:50:35,171 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 16:50:35,171 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 16:50:35,171 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 16:50:35,171 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 16:50:35,171 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 16:50:35,171 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 16:50:35,172 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 16:50:35,172 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 16:50:35,172 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 16:50:35,172 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 16:50:35,172 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:50:35,172 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 16:50:35,172 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 16:50:35,173 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.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(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 6e6f79eda5be95b806b33aaa2a353a360ae33a1e35cc1bf6f128d14768d932de [2022-02-20 16:50:35,399 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 16:50:35,423 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 16:50:35,425 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 16:50:35,426 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 16:50:35,426 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 16:50:35,427 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i [2022-02-20 16:50:35,481 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ed27f1c54/2b59986604264bc2b48a8b7197f6a00d/FLAGc1b4f0e3e [2022-02-20 16:50:36,178 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 16:50:36,179 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i [2022-02-20 16:50:36,219 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ed27f1c54/2b59986604264bc2b48a8b7197f6a00d/FLAGc1b4f0e3e [2022-02-20 16:50:36,499 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ed27f1c54/2b59986604264bc2b48a8b7197f6a00d [2022-02-20 16:50:36,501 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 16:50:36,502 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 16:50:36,503 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 16:50:36,503 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 16:50:36,517 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 16:50:36,518 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:50:36" (1/1) ... [2022-02-20 16:50:36,520 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@179ec7d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:36, skipping insertion in model container [2022-02-20 16:50:36,520 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:50:36" (1/1) ... [2022-02-20 16:50:36,539 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 16:50:36,633 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:50:36,786 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i[452,465] [2022-02-20 16:50:37,441 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:50:37,473 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 16:50:37,489 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i[452,465] [2022-02-20 16:50:37,621 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:50:37,750 INFO L208 MainTranslator]: Completed translation [2022-02-20 16:50:37,763 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37 WrapperNode [2022-02-20 16:50:37,763 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 16:50:37,765 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 16:50:37,765 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 16:50:37,765 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 16:50:37,770 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:37,852 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,003 INFO L137 Inliner]: procedures = 474, calls = 839, calls flagged for inlining = 54, calls inlined = 38, statements flattened = 1022 [2022-02-20 16:50:38,004 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 16:50:38,004 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 16:50:38,005 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 16:50:38,005 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 16:50:38,011 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,012 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,028 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,030 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,083 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,100 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,106 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,121 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 16:50:38,125 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 16:50:38,125 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 16:50:38,126 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 16:50:38,126 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (1/1) ... [2022-02-20 16:50:38,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:50:38,138 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:50:38,181 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 16:50:38,188 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 16:50:38,214 INFO L130 BoogieDeclarations]: Found specification of procedure zf_timer_off [2022-02-20 16:50:38,214 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_timer_off [2022-02-20 16:50:38,214 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-02-20 16:50:38,214 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_atomic_begin [2022-02-20 16:50:38,214 INFO L130 BoogieDeclarations]: Found specification of procedure spin_unlock_irqrestore [2022-02-20 16:50:38,215 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_unlock_irqrestore [2022-02-20 16:50:38,215 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 16:50:38,215 INFO L130 BoogieDeclarations]: Found specification of procedure spin_unlock [2022-02-20 16:50:38,215 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_unlock [2022-02-20 16:50:38,215 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-02-20 16:50:38,215 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_atomic_end [2022-02-20 16:50:38,215 INFO L130 BoogieDeclarations]: Found specification of procedure zf_get_control [2022-02-20 16:50:38,215 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_get_control [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure request_region [2022-02-20 16:50:38,216 INFO L138 BoogieDeclarations]: Found implementation of procedure request_region [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 16:50:38,216 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~TO~VOID [2022-02-20 16:50:38,217 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~TO~VOID [2022-02-20 16:50:38,217 INFO L130 BoogieDeclarations]: Found specification of procedure spin_lock_irqsave [2022-02-20 16:50:38,217 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_lock_irqsave [2022-02-20 16:50:38,217 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~int~TO~VOID [2022-02-20 16:50:38,217 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~int~TO~VOID [2022-02-20 16:50:38,217 INFO L130 BoogieDeclarations]: Found specification of procedure release_region [2022-02-20 16:50:38,217 INFO L138 BoogieDeclarations]: Found implementation of procedure release_region [2022-02-20 16:50:38,217 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 16:50:38,218 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 16:50:38,218 INFO L130 BoogieDeclarations]: Found specification of procedure spin_lock_init [2022-02-20 16:50:38,218 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_lock_init [2022-02-20 16:50:38,218 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$ [2022-02-20 16:50:38,218 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 16:50:38,218 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 16:50:38,219 INFO L130 BoogieDeclarations]: Found specification of procedure del_timer [2022-02-20 16:50:38,219 INFO L138 BoogieDeclarations]: Found implementation of procedure del_timer [2022-02-20 16:50:38,219 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 16:50:38,219 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 16:50:38,219 INFO L130 BoogieDeclarations]: Found specification of procedure add_timer [2022-02-20 16:50:38,219 INFO L138 BoogieDeclarations]: Found implementation of procedure add_timer [2022-02-20 16:50:38,219 INFO L130 BoogieDeclarations]: Found specification of procedure cdev_add [2022-02-20 16:50:38,220 INFO L138 BoogieDeclarations]: Found implementation of procedure cdev_add [2022-02-20 16:50:38,220 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~$Pointer$~X~int~X~$Pointer$~TO~int [2022-02-20 16:50:38,220 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~$Pointer$~X~int~X~$Pointer$~TO~int [2022-02-20 16:50:38,220 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 16:50:38,220 INFO L130 BoogieDeclarations]: Found specification of procedure printk [2022-02-20 16:50:38,220 INFO L138 BoogieDeclarations]: Found implementation of procedure printk [2022-02-20 16:50:38,220 INFO L130 BoogieDeclarations]: Found specification of procedure outw [2022-02-20 16:50:38,220 INFO L138 BoogieDeclarations]: Found implementation of procedure outw [2022-02-20 16:50:38,221 INFO L130 BoogieDeclarations]: Found specification of procedure outb [2022-02-20 16:50:38,221 INFO L138 BoogieDeclarations]: Found implementation of procedure outb [2022-02-20 16:50:38,221 INFO L130 BoogieDeclarations]: Found specification of procedure misc_deregister [2022-02-20 16:50:38,221 INFO L138 BoogieDeclarations]: Found implementation of procedure misc_deregister [2022-02-20 16:50:38,222 INFO L130 BoogieDeclarations]: Found specification of procedure assert_context_process [2022-02-20 16:50:38,222 INFO L138 BoogieDeclarations]: Found implementation of procedure assert_context_process [2022-02-20 16:50:38,223 INFO L130 BoogieDeclarations]: Found specification of procedure zf_set_control [2022-02-20 16:50:38,223 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_set_control [2022-02-20 16:50:38,223 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 16:50:38,223 INFO L130 BoogieDeclarations]: Found specification of procedure zf_readw [2022-02-20 16:50:38,223 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_readw [2022-02-20 16:50:38,223 INFO L130 BoogieDeclarations]: Found specification of procedure zf_ping [2022-02-20 16:50:38,224 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_ping [2022-02-20 16:50:38,224 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int [2022-02-20 16:50:38,224 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int [2022-02-20 16:50:38,224 INFO L130 BoogieDeclarations]: Found specification of procedure spin_lock [2022-02-20 16:50:38,224 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_lock [2022-02-20 16:50:38,224 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~$Pointer$~TO~int [2022-02-20 16:50:38,224 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~$Pointer$~TO~int [2022-02-20 16:50:38,224 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 16:50:38,438 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 16:50:38,440 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 16:50:40,510 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 16:50:40,518 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 16:50:40,519 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 16:50:40,520 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:50:40 BoogieIcfgContainer [2022-02-20 16:50:40,520 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 16:50:40,521 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 16:50:40,521 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 16:50:40,523 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 16:50:40,523 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 04:50:36" (1/3) ... [2022-02-20 16:50:40,524 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2053d204 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:50:40, skipping insertion in model container [2022-02-20 16:50:40,524 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:37" (2/3) ... [2022-02-20 16:50:40,524 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2053d204 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:50:40, skipping insertion in model container [2022-02-20 16:50:40,524 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:50:40" (3/3) ... [2022-02-20 16:50:40,525 INFO L111 eAbstractionObserver]: Analyzing ICFG ddv_machzwd_inw.i [2022-02-20 16:50:40,528 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 16:50:40,528 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 16:50:40,559 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 16:50:40,563 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 16:50:40,563 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 16:50:40,583 INFO L276 IsEmpty]: Start isEmpty. Operand has 353 states, 247 states have (on average 1.360323886639676) internal successors, (336), 253 states have internal predecessors, (336), 78 states have call successors, (78), 26 states have call predecessors, (78), 26 states have return successors, (78), 78 states have call predecessors, (78), 78 states have call successors, (78) [2022-02-20 16:50:40,587 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 16:50:40,587 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:50:40,587 INFO L514 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] [2022-02-20 16:50:40,587 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:50:40,591 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:50:40,591 INFO L85 PathProgramCache]: Analyzing trace with hash 566951616, now seen corresponding path program 1 times [2022-02-20 16:50:40,597 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:50:40,597 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [750185019] [2022-02-20 16:50:40,597 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:50:40,598 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:50:40,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:40,991 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 16:50:41,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:41,027 INFO L290 TraceCheckUtils]: 0: Hoare triple {368#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {356#true} is VALID [2022-02-20 16:50:41,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:50:41,028 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {356#true} {356#true} #846#return; {356#true} is VALID [2022-02-20 16:50:41,029 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 16:50:41,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:41,041 INFO L290 TraceCheckUtils]: 0: Hoare triple {356#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {356#true} is VALID [2022-02-20 16:50:41,042 INFO L290 TraceCheckUtils]: 1: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:50:41,042 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {356#true} {357#false} #848#return; {357#false} is VALID [2022-02-20 16:50:41,042 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-02-20 16:50:41,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:41,053 INFO L290 TraceCheckUtils]: 0: Hoare triple {356#true} ~byte := #in~byte;~port := #in~port; {356#true} is VALID [2022-02-20 16:50:41,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:50:41,056 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {356#true} {357#false} #788#return; {357#false} is VALID [2022-02-20 16:50:41,060 INFO L290 TraceCheckUtils]: 0: Hoare triple {356#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {356#true} is VALID [2022-02-20 16:50:41,061 INFO L290 TraceCheckUtils]: 1: Hoare triple {356#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {356#true} is VALID [2022-02-20 16:50:41,062 INFO L272 TraceCheckUtils]: 2: Hoare triple {356#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {368#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 16:50:41,063 INFO L290 TraceCheckUtils]: 3: Hoare triple {368#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {356#true} is VALID [2022-02-20 16:50:41,064 INFO L290 TraceCheckUtils]: 4: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:50:41,064 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {356#true} {356#true} #846#return; {356#true} is VALID [2022-02-20 16:50:41,064 INFO L290 TraceCheckUtils]: 6: Hoare triple {356#true} init_kernel_~i~1#1 := 0; {361#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:41,065 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} assume !(init_kernel_~i~1#1 < 10); {357#false} is VALID [2022-02-20 16:50:41,069 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#false} init_kernel_~i~1#1 := 0; {357#false} is VALID [2022-02-20 16:50:41,070 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#false} assume !(init_kernel_~i~1#1 < 1); {357#false} is VALID [2022-02-20 16:50:41,070 INFO L290 TraceCheckUtils]: 10: Hoare triple {357#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {357#false} is VALID [2022-02-20 16:50:41,070 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#false} call zf_init_#t~ret218#1 := printk(20, 0); {356#true} is VALID [2022-02-20 16:50:41,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {356#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {356#true} is VALID [2022-02-20 16:50:41,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:50:41,071 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {356#true} {357#false} #848#return; {357#false} is VALID [2022-02-20 16:50:41,071 INFO L290 TraceCheckUtils]: 15: Hoare triple {357#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {357#false} is VALID [2022-02-20 16:50:41,071 INFO L272 TraceCheckUtils]: 16: Hoare triple {357#false} call zf_init_#t~ret219#1 := zf_readw(2); {357#false} is VALID [2022-02-20 16:50:41,071 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#false} ~port#1 := #in~port#1; {357#false} is VALID [2022-02-20 16:50:41,073 INFO L272 TraceCheckUtils]: 18: Hoare triple {357#false} call outb(~port#1, 536); {356#true} is VALID [2022-02-20 16:50:41,073 INFO L290 TraceCheckUtils]: 19: Hoare triple {356#true} ~byte := #in~byte;~port := #in~port; {356#true} is VALID [2022-02-20 16:50:41,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:50:41,073 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {356#true} {357#false} #788#return; {357#false} is VALID [2022-02-20 16:50:41,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {357#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {357#false} is VALID [2022-02-20 16:50:41,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {357#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {357#false} is VALID [2022-02-20 16:50:41,075 INFO L290 TraceCheckUtils]: 24: Hoare triple {357#false} assume 0 == __VERIFIER_assert_~expression#1; {357#false} is VALID [2022-02-20 16:50:41,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {357#false} assume !false; {357#false} is VALID [2022-02-20 16:50:41,075 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:50:41,076 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 16:50:41,076 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [750185019] [2022-02-20 16:50:41,077 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [750185019] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:50:41,077 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:50:41,077 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 16:50:41,079 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [566876245] [2022-02-20 16:50:41,080 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:50:41,086 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-02-20 16:50:41,087 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:50:41,090 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:50:41,120 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:50:41,120 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 16:50:41,121 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 16:50:41,143 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 16:50:41,144 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 16:50:41,149 INFO L87 Difference]: Start difference. First operand has 353 states, 247 states have (on average 1.360323886639676) internal successors, (336), 253 states have internal predecessors, (336), 78 states have call successors, (78), 26 states have call predecessors, (78), 26 states have return successors, (78), 78 states have call predecessors, (78), 78 states have call successors, (78) Second operand has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:50:43,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:43,413 INFO L93 Difference]: Finished difference Result 712 states and 1016 transitions. [2022-02-20 16:50:43,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 16:50:43,414 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-02-20 16:50:43,414 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:50:43,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:50:43,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 1016 transitions. [2022-02-20 16:50:43,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:50:43,500 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 1016 transitions. [2022-02-20 16:50:43,501 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 1016 transitions. [2022-02-20 16:50:44,097 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1016 edges. 1016 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:50:44,132 INFO L225 Difference]: With dead ends: 712 [2022-02-20 16:50:44,132 INFO L226 Difference]: Without dead ends: 355 [2022-02-20 16:50:44,138 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 16:50:44,144 INFO L933 BasicCegarLoop]: 462 mSDtfsCounter, 86 mSDsluCounter, 583 mSDsCounter, 0 mSdLazyCounter, 244 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 96 SdHoareTripleChecker+Valid, 1045 SdHoareTripleChecker+Invalid, 325 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 244 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 16:50:44,145 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [96 Valid, 1045 Invalid, 325 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 244 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 16:50:44,157 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 355 states. [2022-02-20 16:50:44,202 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 355 to 345. [2022-02-20 16:50:44,202 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:50:44,204 INFO L82 GeneralOperation]: Start isEquivalent. First operand 355 states. Second operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:44,206 INFO L74 IsIncluded]: Start isIncluded. First operand 355 states. Second operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:44,207 INFO L87 Difference]: Start difference. First operand 355 states. Second operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:44,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:44,220 INFO L93 Difference]: Finished difference Result 355 states and 487 transitions. [2022-02-20 16:50:44,220 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 487 transitions. [2022-02-20 16:50:44,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:50:44,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:50:44,226 INFO L74 IsIncluded]: Start isIncluded. First operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 355 states. [2022-02-20 16:50:44,227 INFO L87 Difference]: Start difference. First operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 355 states. [2022-02-20 16:50:44,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:44,238 INFO L93 Difference]: Finished difference Result 355 states and 487 transitions. [2022-02-20 16:50:44,238 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 487 transitions. [2022-02-20 16:50:44,241 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:50:44,242 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:50:44,242 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:50:44,242 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:50:44,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:44,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 345 states to 345 states and 475 transitions. [2022-02-20 16:50:44,256 INFO L78 Accepts]: Start accepts. Automaton has 345 states and 475 transitions. Word has length 26 [2022-02-20 16:50:44,256 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:50:44,256 INFO L470 AbstractCegarLoop]: Abstraction has 345 states and 475 transitions. [2022-02-20 16:50:44,256 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 4.75) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:50:44,257 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 475 transitions. [2022-02-20 16:50:44,257 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 16:50:44,257 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:50:44,257 INFO L514 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] [2022-02-20 16:50:44,258 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 16:50:44,258 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:50:44,258 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:50:44,258 INFO L85 PathProgramCache]: Analyzing trace with hash 1401870588, now seen corresponding path program 1 times [2022-02-20 16:50:44,259 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:50:44,259 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [710602889] [2022-02-20 16:50:44,259 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:50:44,259 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:50:44,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:44,358 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 16:50:44,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:44,365 INFO L290 TraceCheckUtils]: 0: Hoare triple {2551#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {2538#true} is VALID [2022-02-20 16:50:44,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,366 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2538#true} {2538#true} #846#return; {2538#true} is VALID [2022-02-20 16:50:44,366 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-02-20 16:50:44,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:44,372 INFO L290 TraceCheckUtils]: 0: Hoare triple {2538#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {2538#true} is VALID [2022-02-20 16:50:44,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,373 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2538#true} {2539#false} #848#return; {2539#false} is VALID [2022-02-20 16:50:44,373 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-02-20 16:50:44,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:44,378 INFO L290 TraceCheckUtils]: 0: Hoare triple {2538#true} ~byte := #in~byte;~port := #in~port; {2538#true} is VALID [2022-02-20 16:50:44,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,378 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2538#true} {2539#false} #788#return; {2539#false} is VALID [2022-02-20 16:50:44,378 INFO L290 TraceCheckUtils]: 0: Hoare triple {2538#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {2538#true} is VALID [2022-02-20 16:50:44,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {2538#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {2538#true} is VALID [2022-02-20 16:50:44,379 INFO L272 TraceCheckUtils]: 2: Hoare triple {2538#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {2551#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 16:50:44,380 INFO L290 TraceCheckUtils]: 3: Hoare triple {2551#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {2538#true} is VALID [2022-02-20 16:50:44,380 INFO L290 TraceCheckUtils]: 4: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,380 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {2538#true} {2538#true} #846#return; {2538#true} is VALID [2022-02-20 16:50:44,383 INFO L290 TraceCheckUtils]: 6: Hoare triple {2538#true} init_kernel_~i~1#1 := 0; {2543#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:44,384 INFO L290 TraceCheckUtils]: 7: Hoare triple {2543#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {2543#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:44,384 INFO L290 TraceCheckUtils]: 8: Hoare triple {2543#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {2544#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} is VALID [2022-02-20 16:50:44,385 INFO L290 TraceCheckUtils]: 9: Hoare triple {2544#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} assume !(init_kernel_~i~1#1 < 10); {2539#false} is VALID [2022-02-20 16:50:44,385 INFO L290 TraceCheckUtils]: 10: Hoare triple {2539#false} init_kernel_~i~1#1 := 0; {2539#false} is VALID [2022-02-20 16:50:44,385 INFO L290 TraceCheckUtils]: 11: Hoare triple {2539#false} assume !!(init_kernel_~i~1#1 < 1);call write~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1, 4);call write~int(0, ~#tasklet_registered~0.base, 4 + (~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1), 2); {2539#false} is VALID [2022-02-20 16:50:44,386 INFO L290 TraceCheckUtils]: 12: Hoare triple {2539#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post299#1;havoc init_kernel_#t~post299#1; {2539#false} is VALID [2022-02-20 16:50:44,386 INFO L290 TraceCheckUtils]: 13: Hoare triple {2539#false} assume !(init_kernel_~i~1#1 < 1); {2539#false} is VALID [2022-02-20 16:50:44,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {2539#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {2539#false} is VALID [2022-02-20 16:50:44,386 INFO L272 TraceCheckUtils]: 15: Hoare triple {2539#false} call zf_init_#t~ret218#1 := printk(20, 0); {2538#true} is VALID [2022-02-20 16:50:44,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {2538#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {2538#true} is VALID [2022-02-20 16:50:44,387 INFO L290 TraceCheckUtils]: 17: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,387 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2538#true} {2539#false} #848#return; {2539#false} is VALID [2022-02-20 16:50:44,387 INFO L290 TraceCheckUtils]: 19: Hoare triple {2539#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {2539#false} is VALID [2022-02-20 16:50:44,387 INFO L272 TraceCheckUtils]: 20: Hoare triple {2539#false} call zf_init_#t~ret219#1 := zf_readw(2); {2539#false} is VALID [2022-02-20 16:50:44,387 INFO L290 TraceCheckUtils]: 21: Hoare triple {2539#false} ~port#1 := #in~port#1; {2539#false} is VALID [2022-02-20 16:50:44,387 INFO L272 TraceCheckUtils]: 22: Hoare triple {2539#false} call outb(~port#1, 536); {2538#true} is VALID [2022-02-20 16:50:44,388 INFO L290 TraceCheckUtils]: 23: Hoare triple {2538#true} ~byte := #in~byte;~port := #in~port; {2538#true} is VALID [2022-02-20 16:50:44,388 INFO L290 TraceCheckUtils]: 24: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,388 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {2538#true} {2539#false} #788#return; {2539#false} is VALID [2022-02-20 16:50:44,388 INFO L290 TraceCheckUtils]: 26: Hoare triple {2539#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {2539#false} is VALID [2022-02-20 16:50:44,388 INFO L290 TraceCheckUtils]: 27: Hoare triple {2539#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {2539#false} is VALID [2022-02-20 16:50:44,388 INFO L290 TraceCheckUtils]: 28: Hoare triple {2539#false} assume 0 == __VERIFIER_assert_~expression#1; {2539#false} is VALID [2022-02-20 16:50:44,389 INFO L290 TraceCheckUtils]: 29: Hoare triple {2539#false} assume !false; {2539#false} is VALID [2022-02-20 16:50:44,389 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:50:44,389 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 16:50:44,389 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [710602889] [2022-02-20 16:50:44,390 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [710602889] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 16:50:44,390 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1820176810] [2022-02-20 16:50:44,390 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:50:44,390 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 16:50:44,390 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:50:44,415 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 16:50:44,432 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 16:50:44,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:44,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 844 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 16:50:44,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:44,716 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:50:44,812 INFO L290 TraceCheckUtils]: 0: Hoare triple {2538#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {2538#true} is VALID [2022-02-20 16:50:44,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {2538#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {2538#true} is VALID [2022-02-20 16:50:44,817 INFO L272 TraceCheckUtils]: 2: Hoare triple {2538#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {2538#true} is VALID [2022-02-20 16:50:44,817 INFO L290 TraceCheckUtils]: 3: Hoare triple {2538#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {2538#true} is VALID [2022-02-20 16:50:44,817 INFO L290 TraceCheckUtils]: 4: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,817 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {2538#true} {2538#true} #846#return; {2538#true} is VALID [2022-02-20 16:50:44,818 INFO L290 TraceCheckUtils]: 6: Hoare triple {2538#true} init_kernel_~i~1#1 := 0; {2573#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:44,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {2573#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {2573#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:44,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {2573#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {2544#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} is VALID [2022-02-20 16:50:44,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {2544#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} assume !(init_kernel_~i~1#1 < 10); {2539#false} is VALID [2022-02-20 16:50:44,819 INFO L290 TraceCheckUtils]: 10: Hoare triple {2539#false} init_kernel_~i~1#1 := 0; {2539#false} is VALID [2022-02-20 16:50:44,819 INFO L290 TraceCheckUtils]: 11: Hoare triple {2539#false} assume !!(init_kernel_~i~1#1 < 1);call write~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1, 4);call write~int(0, ~#tasklet_registered~0.base, 4 + (~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1), 2); {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L290 TraceCheckUtils]: 12: Hoare triple {2539#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post299#1;havoc init_kernel_#t~post299#1; {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L290 TraceCheckUtils]: 13: Hoare triple {2539#false} assume !(init_kernel_~i~1#1 < 1); {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L290 TraceCheckUtils]: 14: Hoare triple {2539#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L272 TraceCheckUtils]: 15: Hoare triple {2539#false} call zf_init_#t~ret218#1 := printk(20, 0); {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L290 TraceCheckUtils]: 16: Hoare triple {2539#false} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {2539#false} assume true; {2539#false} is VALID [2022-02-20 16:50:44,820 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2539#false} {2539#false} #848#return; {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L290 TraceCheckUtils]: 19: Hoare triple {2539#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L272 TraceCheckUtils]: 20: Hoare triple {2539#false} call zf_init_#t~ret219#1 := zf_readw(2); {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L290 TraceCheckUtils]: 21: Hoare triple {2539#false} ~port#1 := #in~port#1; {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L272 TraceCheckUtils]: 22: Hoare triple {2539#false} call outb(~port#1, 536); {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L290 TraceCheckUtils]: 23: Hoare triple {2539#false} ~byte := #in~byte;~port := #in~port; {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L290 TraceCheckUtils]: 24: Hoare triple {2539#false} assume true; {2539#false} is VALID [2022-02-20 16:50:44,821 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {2539#false} {2539#false} #788#return; {2539#false} is VALID [2022-02-20 16:50:44,822 INFO L290 TraceCheckUtils]: 26: Hoare triple {2539#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {2539#false} is VALID [2022-02-20 16:50:44,822 INFO L290 TraceCheckUtils]: 27: Hoare triple {2539#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {2539#false} is VALID [2022-02-20 16:50:44,822 INFO L290 TraceCheckUtils]: 28: Hoare triple {2539#false} assume 0 == __VERIFIER_assert_~expression#1; {2539#false} is VALID [2022-02-20 16:50:44,822 INFO L290 TraceCheckUtils]: 29: Hoare triple {2539#false} assume !false; {2539#false} is VALID [2022-02-20 16:50:44,822 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:50:44,822 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 16:50:44,937 INFO L290 TraceCheckUtils]: 29: Hoare triple {2539#false} assume !false; {2539#false} is VALID [2022-02-20 16:50:44,938 INFO L290 TraceCheckUtils]: 28: Hoare triple {2539#false} assume 0 == __VERIFIER_assert_~expression#1; {2539#false} is VALID [2022-02-20 16:50:44,938 INFO L290 TraceCheckUtils]: 27: Hoare triple {2539#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {2539#false} is VALID [2022-02-20 16:50:44,938 INFO L290 TraceCheckUtils]: 26: Hoare triple {2539#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {2539#false} is VALID [2022-02-20 16:50:44,940 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {2538#true} {2539#false} #788#return; {2539#false} is VALID [2022-02-20 16:50:44,940 INFO L290 TraceCheckUtils]: 24: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,940 INFO L290 TraceCheckUtils]: 23: Hoare triple {2538#true} ~byte := #in~byte;~port := #in~port; {2538#true} is VALID [2022-02-20 16:50:44,941 INFO L272 TraceCheckUtils]: 22: Hoare triple {2539#false} call outb(~port#1, 536); {2538#true} is VALID [2022-02-20 16:50:44,942 INFO L290 TraceCheckUtils]: 21: Hoare triple {2539#false} ~port#1 := #in~port#1; {2539#false} is VALID [2022-02-20 16:50:44,952 INFO L272 TraceCheckUtils]: 20: Hoare triple {2539#false} call zf_init_#t~ret219#1 := zf_readw(2); {2539#false} is VALID [2022-02-20 16:50:44,952 INFO L290 TraceCheckUtils]: 19: Hoare triple {2539#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {2539#false} is VALID [2022-02-20 16:50:44,952 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2538#true} {2539#false} #848#return; {2539#false} is VALID [2022-02-20 16:50:44,952 INFO L290 TraceCheckUtils]: 17: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,952 INFO L290 TraceCheckUtils]: 16: Hoare triple {2538#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {2538#true} is VALID [2022-02-20 16:50:44,953 INFO L272 TraceCheckUtils]: 15: Hoare triple {2539#false} call zf_init_#t~ret218#1 := printk(20, 0); {2538#true} is VALID [2022-02-20 16:50:44,953 INFO L290 TraceCheckUtils]: 14: Hoare triple {2539#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {2539#false} is VALID [2022-02-20 16:50:44,953 INFO L290 TraceCheckUtils]: 13: Hoare triple {2539#false} assume !(init_kernel_~i~1#1 < 1); {2539#false} is VALID [2022-02-20 16:50:44,953 INFO L290 TraceCheckUtils]: 12: Hoare triple {2539#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post299#1;havoc init_kernel_#t~post299#1; {2539#false} is VALID [2022-02-20 16:50:44,953 INFO L290 TraceCheckUtils]: 11: Hoare triple {2539#false} assume !!(init_kernel_~i~1#1 < 1);call write~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1, 4);call write~int(0, ~#tasklet_registered~0.base, 4 + (~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1), 2); {2539#false} is VALID [2022-02-20 16:50:44,953 INFO L290 TraceCheckUtils]: 10: Hoare triple {2539#false} init_kernel_~i~1#1 := 0; {2539#false} is VALID [2022-02-20 16:50:44,956 INFO L290 TraceCheckUtils]: 9: Hoare triple {2703#(< |ULTIMATE.start_init_kernel_~i~1#1| 10)} assume !(init_kernel_~i~1#1 < 10); {2539#false} is VALID [2022-02-20 16:50:44,956 INFO L290 TraceCheckUtils]: 8: Hoare triple {2707#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {2703#(< |ULTIMATE.start_init_kernel_~i~1#1| 10)} is VALID [2022-02-20 16:50:44,957 INFO L290 TraceCheckUtils]: 7: Hoare triple {2707#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {2707#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} is VALID [2022-02-20 16:50:44,957 INFO L290 TraceCheckUtils]: 6: Hoare triple {2538#true} init_kernel_~i~1#1 := 0; {2707#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} is VALID [2022-02-20 16:50:44,957 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {2538#true} {2538#true} #846#return; {2538#true} is VALID [2022-02-20 16:50:44,957 INFO L290 TraceCheckUtils]: 4: Hoare triple {2538#true} assume true; {2538#true} is VALID [2022-02-20 16:50:44,957 INFO L290 TraceCheckUtils]: 3: Hoare triple {2538#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {2538#true} is VALID [2022-02-20 16:50:44,958 INFO L272 TraceCheckUtils]: 2: Hoare triple {2538#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {2538#true} is VALID [2022-02-20 16:50:44,958 INFO L290 TraceCheckUtils]: 1: Hoare triple {2538#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {2538#true} is VALID [2022-02-20 16:50:44,958 INFO L290 TraceCheckUtils]: 0: Hoare triple {2538#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {2538#true} is VALID [2022-02-20 16:50:44,958 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:50:44,958 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1820176810] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 16:50:44,958 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 16:50:44,958 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 4, 4] total 8 [2022-02-20 16:50:44,959 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1066885445] [2022-02-20 16:50:44,959 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 16:50:44,960 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 30 [2022-02-20 16:50:44,960 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:50:44,961 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:44,995 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:50:44,995 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 16:50:44,995 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 16:50:44,995 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 16:50:44,995 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-02-20 16:50:44,996 INFO L87 Difference]: Start difference. First operand 345 states and 475 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:49,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:49,305 INFO L93 Difference]: Finished difference Result 698 states and 961 transitions. [2022-02-20 16:50:49,305 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 16:50:49,305 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 30 [2022-02-20 16:50:49,305 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:50:49,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:49,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 960 transitions. [2022-02-20 16:50:49,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:49,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 960 transitions. [2022-02-20 16:50:49,329 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 960 transitions. [2022-02-20 16:50:50,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 960 edges. 960 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:50:50,041 INFO L225 Difference]: With dead ends: 698 [2022-02-20 16:50:50,041 INFO L226 Difference]: Without dead ends: 360 [2022-02-20 16:50:50,041 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 62 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-02-20 16:50:50,042 INFO L933 BasicCegarLoop]: 448 mSDtfsCounter, 254 mSDsluCounter, 1438 mSDsCounter, 0 mSdLazyCounter, 660 mSolverCounterSat, 85 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 296 SdHoareTripleChecker+Valid, 1886 SdHoareTripleChecker+Invalid, 745 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 85 IncrementalHoareTripleChecker+Valid, 660 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:50:50,042 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [296 Valid, 1886 Invalid, 745 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [85 Valid, 660 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-02-20 16:50:50,046 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 360 states. [2022-02-20 16:50:50,094 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 360 to 351. [2022-02-20 16:50:50,094 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:50:50,097 INFO L82 GeneralOperation]: Start isEquivalent. First operand 360 states. Second operand has 351 states, 248 states have (on average 1.3306451612903225) internal successors, (330), 254 states have internal predecessors, (330), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:50,099 INFO L74 IsIncluded]: Start isIncluded. First operand 360 states. Second operand has 351 states, 248 states have (on average 1.3306451612903225) internal successors, (330), 254 states have internal predecessors, (330), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:50,100 INFO L87 Difference]: Start difference. First operand 360 states. Second operand has 351 states, 248 states have (on average 1.3306451612903225) internal successors, (330), 254 states have internal predecessors, (330), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:50,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:50,128 INFO L93 Difference]: Finished difference Result 360 states and 492 transitions. [2022-02-20 16:50:50,128 INFO L276 IsEmpty]: Start isEmpty. Operand 360 states and 492 transitions. [2022-02-20 16:50:50,129 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:50:50,129 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:50:50,130 INFO L74 IsIncluded]: Start isIncluded. First operand has 351 states, 248 states have (on average 1.3306451612903225) internal successors, (330), 254 states have internal predecessors, (330), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 360 states. [2022-02-20 16:50:50,131 INFO L87 Difference]: Start difference. First operand has 351 states, 248 states have (on average 1.3306451612903225) internal successors, (330), 254 states have internal predecessors, (330), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 360 states. [2022-02-20 16:50:50,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:50,153 INFO L93 Difference]: Finished difference Result 360 states and 492 transitions. [2022-02-20 16:50:50,153 INFO L276 IsEmpty]: Start isEmpty. Operand 360 states and 492 transitions. [2022-02-20 16:50:50,155 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:50:50,155 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:50:50,155 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:50:50,155 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:50:50,157 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 351 states, 248 states have (on average 1.3306451612903225) internal successors, (330), 254 states have internal predecessors, (330), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:50,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 351 states to 351 states and 481 transitions. [2022-02-20 16:50:50,168 INFO L78 Accepts]: Start accepts. Automaton has 351 states and 481 transitions. Word has length 30 [2022-02-20 16:50:50,168 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:50:50,168 INFO L470 AbstractCegarLoop]: Abstraction has 351 states and 481 transitions. [2022-02-20 16:50:50,169 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:50,169 INFO L276 IsEmpty]: Start isEmpty. Operand 351 states and 481 transitions. [2022-02-20 16:50:50,169 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 16:50:50,169 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:50:50,169 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 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] [2022-02-20 16:50:50,195 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 16:50:50,388 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 16:50:50,388 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:50:50,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:50:50,388 INFO L85 PathProgramCache]: Analyzing trace with hash 1628813430, now seen corresponding path program 2 times [2022-02-20 16:50:50,388 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:50:50,389 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2140231248] [2022-02-20 16:50:50,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:50:50,389 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:50:50,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:50,537 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 16:50:50,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:50,550 INFO L290 TraceCheckUtils]: 0: Hoare triple {4911#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {4895#true} is VALID [2022-02-20 16:50:50,550 INFO L290 TraceCheckUtils]: 1: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:50,550 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4895#true} {4895#true} #846#return; {4895#true} is VALID [2022-02-20 16:50:50,550 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-02-20 16:50:50,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:50,572 INFO L290 TraceCheckUtils]: 0: Hoare triple {4895#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {4895#true} is VALID [2022-02-20 16:50:50,572 INFO L290 TraceCheckUtils]: 1: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:50,572 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4895#true} {4896#false} #848#return; {4896#false} is VALID [2022-02-20 16:50:50,573 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-02-20 16:50:50,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:50,578 INFO L290 TraceCheckUtils]: 0: Hoare triple {4895#true} ~byte := #in~byte;~port := #in~port; {4895#true} is VALID [2022-02-20 16:50:50,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:50,578 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4895#true} {4896#false} #788#return; {4896#false} is VALID [2022-02-20 16:50:50,578 INFO L290 TraceCheckUtils]: 0: Hoare triple {4895#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {4895#true} is VALID [2022-02-20 16:50:50,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {4895#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {4895#true} is VALID [2022-02-20 16:50:50,580 INFO L272 TraceCheckUtils]: 2: Hoare triple {4895#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {4911#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 16:50:50,580 INFO L290 TraceCheckUtils]: 3: Hoare triple {4911#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {4895#true} is VALID [2022-02-20 16:50:50,580 INFO L290 TraceCheckUtils]: 4: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:50,580 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4895#true} {4895#true} #846#return; {4895#true} is VALID [2022-02-20 16:50:50,581 INFO L290 TraceCheckUtils]: 6: Hoare triple {4895#true} init_kernel_~i~1#1 := 0; {4900#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:50,581 INFO L290 TraceCheckUtils]: 7: Hoare triple {4900#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4900#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:50,581 INFO L290 TraceCheckUtils]: 8: Hoare triple {4900#(= |ULTIMATE.start_init_kernel_~i~1#1| 0)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} is VALID [2022-02-20 16:50:50,582 INFO L290 TraceCheckUtils]: 9: Hoare triple {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} is VALID [2022-02-20 16:50:50,582 INFO L290 TraceCheckUtils]: 10: Hoare triple {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} is VALID [2022-02-20 16:50:50,583 INFO L290 TraceCheckUtils]: 11: Hoare triple {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} is VALID [2022-02-20 16:50:50,583 INFO L290 TraceCheckUtils]: 12: Hoare triple {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} is VALID [2022-02-20 16:50:50,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} is VALID [2022-02-20 16:50:50,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4904#(<= |ULTIMATE.start_init_kernel_~i~1#1| 4)} is VALID [2022-02-20 16:50:50,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {4904#(<= |ULTIMATE.start_init_kernel_~i~1#1| 4)} assume !(init_kernel_~i~1#1 < 10); {4896#false} is VALID [2022-02-20 16:50:50,585 INFO L290 TraceCheckUtils]: 16: Hoare triple {4896#false} init_kernel_~i~1#1 := 0; {4896#false} is VALID [2022-02-20 16:50:50,585 INFO L290 TraceCheckUtils]: 17: Hoare triple {4896#false} assume !!(init_kernel_~i~1#1 < 1);call write~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1, 4);call write~int(0, ~#tasklet_registered~0.base, 4 + (~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1), 2); {4896#false} is VALID [2022-02-20 16:50:50,585 INFO L290 TraceCheckUtils]: 18: Hoare triple {4896#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post299#1;havoc init_kernel_#t~post299#1; {4896#false} is VALID [2022-02-20 16:50:50,585 INFO L290 TraceCheckUtils]: 19: Hoare triple {4896#false} assume !(init_kernel_~i~1#1 < 1); {4896#false} is VALID [2022-02-20 16:50:50,585 INFO L290 TraceCheckUtils]: 20: Hoare triple {4896#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {4896#false} is VALID [2022-02-20 16:50:50,585 INFO L272 TraceCheckUtils]: 21: Hoare triple {4896#false} call zf_init_#t~ret218#1 := printk(20, 0); {4895#true} is VALID [2022-02-20 16:50:50,586 INFO L290 TraceCheckUtils]: 22: Hoare triple {4895#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {4895#true} is VALID [2022-02-20 16:50:50,586 INFO L290 TraceCheckUtils]: 23: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:50,586 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {4895#true} {4896#false} #848#return; {4896#false} is VALID [2022-02-20 16:50:50,586 INFO L290 TraceCheckUtils]: 25: Hoare triple {4896#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {4896#false} is VALID [2022-02-20 16:50:50,586 INFO L272 TraceCheckUtils]: 26: Hoare triple {4896#false} call zf_init_#t~ret219#1 := zf_readw(2); {4896#false} is VALID [2022-02-20 16:50:50,586 INFO L290 TraceCheckUtils]: 27: Hoare triple {4896#false} ~port#1 := #in~port#1; {4896#false} is VALID [2022-02-20 16:50:50,586 INFO L272 TraceCheckUtils]: 28: Hoare triple {4896#false} call outb(~port#1, 536); {4895#true} is VALID [2022-02-20 16:50:50,586 INFO L290 TraceCheckUtils]: 29: Hoare triple {4895#true} ~byte := #in~byte;~port := #in~port; {4895#true} is VALID [2022-02-20 16:50:50,587 INFO L290 TraceCheckUtils]: 30: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:50,587 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4895#true} {4896#false} #788#return; {4896#false} is VALID [2022-02-20 16:50:50,587 INFO L290 TraceCheckUtils]: 32: Hoare triple {4896#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {4896#false} is VALID [2022-02-20 16:50:50,587 INFO L290 TraceCheckUtils]: 33: Hoare triple {4896#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {4896#false} is VALID [2022-02-20 16:50:50,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {4896#false} assume 0 == __VERIFIER_assert_~expression#1; {4896#false} is VALID [2022-02-20 16:50:50,587 INFO L290 TraceCheckUtils]: 35: Hoare triple {4896#false} assume !false; {4896#false} is VALID [2022-02-20 16:50:50,588 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:50:50,588 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 16:50:50,588 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2140231248] [2022-02-20 16:50:50,588 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2140231248] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 16:50:50,589 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1083787350] [2022-02-20 16:50:50,589 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 16:50:50,589 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 16:50:50,589 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:50:50,590 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 16:50:50,592 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 16:50:51,225 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 16:50:51,225 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 16:50:51,231 INFO L263 TraceCheckSpWp]: Trace formula consists of 889 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 16:50:51,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:50:51,255 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:50:51,449 INFO L290 TraceCheckUtils]: 0: Hoare triple {4895#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {4895#true} is VALID [2022-02-20 16:50:51,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {4895#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {4895#true} is VALID [2022-02-20 16:50:51,450 INFO L272 TraceCheckUtils]: 2: Hoare triple {4895#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {4895#true} is VALID [2022-02-20 16:50:51,450 INFO L290 TraceCheckUtils]: 3: Hoare triple {4895#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {4895#true} is VALID [2022-02-20 16:50:51,450 INFO L290 TraceCheckUtils]: 4: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:51,451 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4895#true} {4895#true} #846#return; {4895#true} is VALID [2022-02-20 16:50:51,455 INFO L290 TraceCheckUtils]: 6: Hoare triple {4895#true} init_kernel_~i~1#1 := 0; {4933#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:51,455 INFO L290 TraceCheckUtils]: 7: Hoare triple {4933#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4933#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} is VALID [2022-02-20 16:50:51,456 INFO L290 TraceCheckUtils]: 8: Hoare triple {4933#(<= |ULTIMATE.start_init_kernel_~i~1#1| 0)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} is VALID [2022-02-20 16:50:51,456 INFO L290 TraceCheckUtils]: 9: Hoare triple {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} is VALID [2022-02-20 16:50:51,457 INFO L290 TraceCheckUtils]: 10: Hoare triple {4901#(<= |ULTIMATE.start_init_kernel_~i~1#1| 1)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} is VALID [2022-02-20 16:50:51,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} is VALID [2022-02-20 16:50:51,457 INFO L290 TraceCheckUtils]: 12: Hoare triple {4902#(<= |ULTIMATE.start_init_kernel_~i~1#1| 2)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} is VALID [2022-02-20 16:50:51,458 INFO L290 TraceCheckUtils]: 13: Hoare triple {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} is VALID [2022-02-20 16:50:51,458 INFO L290 TraceCheckUtils]: 14: Hoare triple {4903#(<= |ULTIMATE.start_init_kernel_~i~1#1| 3)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {4904#(<= |ULTIMATE.start_init_kernel_~i~1#1| 4)} is VALID [2022-02-20 16:50:51,458 INFO L290 TraceCheckUtils]: 15: Hoare triple {4904#(<= |ULTIMATE.start_init_kernel_~i~1#1| 4)} assume !(init_kernel_~i~1#1 < 10); {4896#false} is VALID [2022-02-20 16:50:51,458 INFO L290 TraceCheckUtils]: 16: Hoare triple {4896#false} init_kernel_~i~1#1 := 0; {4896#false} is VALID [2022-02-20 16:50:51,459 INFO L290 TraceCheckUtils]: 17: Hoare triple {4896#false} assume !!(init_kernel_~i~1#1 < 1);call write~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1, 4);call write~int(0, ~#tasklet_registered~0.base, 4 + (~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1), 2); {4896#false} is VALID [2022-02-20 16:50:51,459 INFO L290 TraceCheckUtils]: 18: Hoare triple {4896#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post299#1;havoc init_kernel_#t~post299#1; {4896#false} is VALID [2022-02-20 16:50:51,459 INFO L290 TraceCheckUtils]: 19: Hoare triple {4896#false} assume !(init_kernel_~i~1#1 < 1); {4896#false} is VALID [2022-02-20 16:50:51,459 INFO L290 TraceCheckUtils]: 20: Hoare triple {4896#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {4896#false} is VALID [2022-02-20 16:50:51,459 INFO L272 TraceCheckUtils]: 21: Hoare triple {4896#false} call zf_init_#t~ret218#1 := printk(20, 0); {4896#false} is VALID [2022-02-20 16:50:51,459 INFO L290 TraceCheckUtils]: 22: Hoare triple {4896#false} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L290 TraceCheckUtils]: 23: Hoare triple {4896#false} assume true; {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {4896#false} {4896#false} #848#return; {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L290 TraceCheckUtils]: 25: Hoare triple {4896#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L272 TraceCheckUtils]: 26: Hoare triple {4896#false} call zf_init_#t~ret219#1 := zf_readw(2); {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L290 TraceCheckUtils]: 27: Hoare triple {4896#false} ~port#1 := #in~port#1; {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L272 TraceCheckUtils]: 28: Hoare triple {4896#false} call outb(~port#1, 536); {4896#false} is VALID [2022-02-20 16:50:51,460 INFO L290 TraceCheckUtils]: 29: Hoare triple {4896#false} ~byte := #in~byte;~port := #in~port; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L290 TraceCheckUtils]: 30: Hoare triple {4896#false} assume true; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4896#false} {4896#false} #788#return; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L290 TraceCheckUtils]: 32: Hoare triple {4896#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {4896#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L290 TraceCheckUtils]: 34: Hoare triple {4896#false} assume 0 == __VERIFIER_assert_~expression#1; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L290 TraceCheckUtils]: 35: Hoare triple {4896#false} assume !false; {4896#false} is VALID [2022-02-20 16:50:51,461 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:50:51,462 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 16:50:51,661 INFO L290 TraceCheckUtils]: 35: Hoare triple {4896#false} assume !false; {4896#false} is VALID [2022-02-20 16:50:51,662 INFO L290 TraceCheckUtils]: 34: Hoare triple {4896#false} assume 0 == __VERIFIER_assert_~expression#1; {4896#false} is VALID [2022-02-20 16:50:51,662 INFO L290 TraceCheckUtils]: 33: Hoare triple {4896#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if inw_~port#1 % 4294967296 >= ~ddv_ioport_request_start~0 % 4294967296 && inw_~port#1 % 4294967296 < (~ddv_ioport_request_start~0 + ~ddv_ioport_request_len~0) % 4294967296 then 1 else 0), 26, 0;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {4896#false} is VALID [2022-02-20 16:50:51,662 INFO L290 TraceCheckUtils]: 32: Hoare triple {4896#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {4896#false} is VALID [2022-02-20 16:50:51,662 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4895#true} {4896#false} #788#return; {4896#false} is VALID [2022-02-20 16:50:51,662 INFO L290 TraceCheckUtils]: 30: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:51,663 INFO L290 TraceCheckUtils]: 29: Hoare triple {4895#true} ~byte := #in~byte;~port := #in~port; {4895#true} is VALID [2022-02-20 16:50:51,663 INFO L272 TraceCheckUtils]: 28: Hoare triple {4896#false} call outb(~port#1, 536); {4895#true} is VALID [2022-02-20 16:50:51,663 INFO L290 TraceCheckUtils]: 27: Hoare triple {4896#false} ~port#1 := #in~port#1; {4896#false} is VALID [2022-02-20 16:50:51,663 INFO L272 TraceCheckUtils]: 26: Hoare triple {4896#false} call zf_init_#t~ret219#1 := zf_readw(2); {4896#false} is VALID [2022-02-20 16:50:51,663 INFO L290 TraceCheckUtils]: 25: Hoare triple {4896#false} assume -2147483648 <= zf_init_#t~ret218#1 && zf_init_#t~ret218#1 <= 2147483647;havoc zf_init_#t~ret218#1; {4896#false} is VALID [2022-02-20 16:50:51,663 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {4895#true} {4896#false} #848#return; {4896#false} is VALID [2022-02-20 16:50:51,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:51,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {4895#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0; {4895#true} is VALID [2022-02-20 16:50:51,664 INFO L272 TraceCheckUtils]: 21: Hoare triple {4896#false} call zf_init_#t~ret218#1 := printk(20, 0); {4895#true} is VALID [2022-02-20 16:50:51,664 INFO L290 TraceCheckUtils]: 20: Hoare triple {4896#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~int } true;##fun~~TO~int_#in~#fp#1.base, ##fun~~TO~int_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~int_#res#1;havoc ##fun~~TO~int_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {4896#false} is VALID [2022-02-20 16:50:51,664 INFO L290 TraceCheckUtils]: 19: Hoare triple {4896#false} assume !(init_kernel_~i~1#1 < 1); {4896#false} is VALID [2022-02-20 16:50:51,664 INFO L290 TraceCheckUtils]: 18: Hoare triple {4896#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post299#1;havoc init_kernel_#t~post299#1; {4896#false} is VALID [2022-02-20 16:50:51,664 INFO L290 TraceCheckUtils]: 17: Hoare triple {4896#false} assume !!(init_kernel_~i~1#1 < 1);call write~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1, 4);call write~int(0, ~#tasklet_registered~0.base, 4 + (~#tasklet_registered~0.offset + 6 * init_kernel_~i~1#1), 2); {4896#false} is VALID [2022-02-20 16:50:51,664 INFO L290 TraceCheckUtils]: 16: Hoare triple {4896#false} init_kernel_~i~1#1 := 0; {4896#false} is VALID [2022-02-20 16:50:51,665 INFO L290 TraceCheckUtils]: 15: Hoare triple {5081#(< |ULTIMATE.start_init_kernel_~i~1#1| 10)} assume !(init_kernel_~i~1#1 < 10); {4896#false} is VALID [2022-02-20 16:50:51,665 INFO L290 TraceCheckUtils]: 14: Hoare triple {5085#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {5081#(< |ULTIMATE.start_init_kernel_~i~1#1| 10)} is VALID [2022-02-20 16:50:51,666 INFO L290 TraceCheckUtils]: 13: Hoare triple {5085#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {5085#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} is VALID [2022-02-20 16:50:51,666 INFO L290 TraceCheckUtils]: 12: Hoare triple {5092#(< |ULTIMATE.start_init_kernel_~i~1#1| 8)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {5085#(< |ULTIMATE.start_init_kernel_~i~1#1| 9)} is VALID [2022-02-20 16:50:51,667 INFO L290 TraceCheckUtils]: 11: Hoare triple {5092#(< |ULTIMATE.start_init_kernel_~i~1#1| 8)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {5092#(< |ULTIMATE.start_init_kernel_~i~1#1| 8)} is VALID [2022-02-20 16:50:51,667 INFO L290 TraceCheckUtils]: 10: Hoare triple {5099#(< |ULTIMATE.start_init_kernel_~i~1#1| 7)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {5092#(< |ULTIMATE.start_init_kernel_~i~1#1| 8)} is VALID [2022-02-20 16:50:51,667 INFO L290 TraceCheckUtils]: 9: Hoare triple {5099#(< |ULTIMATE.start_init_kernel_~i~1#1| 7)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {5099#(< |ULTIMATE.start_init_kernel_~i~1#1| 7)} is VALID [2022-02-20 16:50:51,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {5106#(< |ULTIMATE.start_init_kernel_~i~1#1| 6)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := 1 + init_kernel_#t~post298#1;havoc init_kernel_#t~post298#1; {5099#(< |ULTIMATE.start_init_kernel_~i~1#1| 7)} is VALID [2022-02-20 16:50:51,668 INFO L290 TraceCheckUtils]: 7: Hoare triple {5106#(< |ULTIMATE.start_init_kernel_~i~1#1| 6)} assume !!(init_kernel_~i~1#1 < 10);call write~$Pointer$(0, 0, ~#shared_workqueue~0.base, ~#shared_workqueue~0.offset + 4 * init_kernel_~i~1#1, 4); {5106#(< |ULTIMATE.start_init_kernel_~i~1#1| 6)} is VALID [2022-02-20 16:50:51,669 INFO L290 TraceCheckUtils]: 6: Hoare triple {4895#true} init_kernel_~i~1#1 := 0; {5106#(< |ULTIMATE.start_init_kernel_~i~1#1| 6)} is VALID [2022-02-20 16:50:51,669 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4895#true} {4895#true} #846#return; {4895#true} is VALID [2022-02-20 16:50:51,669 INFO L290 TraceCheckUtils]: 4: Hoare triple {4895#true} assume true; {4895#true} is VALID [2022-02-20 16:50:51,669 INFO L290 TraceCheckUtils]: 3: Hoare triple {4895#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~int(1, ~lock.base, ~lock.offset, 4);call write~int(0, ~lock.base, 4 + ~lock.offset, 4); {4895#true} is VALID [2022-02-20 16:50:51,669 INFO L272 TraceCheckUtils]: 2: Hoare triple {4895#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {4895#true} is VALID [2022-02-20 16:50:51,669 INFO L290 TraceCheckUtils]: 1: Hoare triple {4895#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {4895#true} is VALID [2022-02-20 16:50:51,670 INFO L290 TraceCheckUtils]: 0: Hoare triple {4895#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(44, 4);call #Ultimate.allocInit(31, 5);call #Ultimate.allocInit(4, 6);call write~init~int(71, 6, 0, 1);call write~init~int(80, 6, 1, 1);call write~init~int(76, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(75, 7);call #Ultimate.allocInit(18, 8);call #Ultimate.allocInit(73, 9);call #Ultimate.allocInit(44, 10);call #Ultimate.allocInit(43, 11);call #Ultimate.allocInit(39, 12);call #Ultimate.allocInit(69, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(6, 15);call write~init~int(82, 15, 0, 1);call write~init~int(69, 15, 1, 1);call write~init~int(83, 15, 2, 1);call write~init~int(69, 15, 3, 1);call write~init~int(84, 15, 4, 1);call write~init~int(0, 15, 5, 1);call #Ultimate.allocInit(4, 16);call write~init~int(83, 16, 0, 1);call write~init~int(77, 16, 1, 1);call write~init~int(73, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(78, 17, 0, 1);call write~init~int(77, 17, 1, 1);call write~init~int(73, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int(83, 18, 0, 1);call write~init~int(67, 18, 1, 1);call write~init~int(73, 18, 2, 1);call write~init~int(0, 18, 3, 1);call #Ultimate.allocInit(40, 19);call #Ultimate.allocInit(58, 20);call #Ultimate.allocInit(31, 21);call #Ultimate.allocInit(36, 22);call #Ultimate.allocInit(14, 23);call #Ultimate.allocInit(35, 24);call #Ultimate.allocInit(44, 25);call #Ultimate.allocInit(22, 26);~current_execution_context~0 := 0;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0, 0;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0, 0;~jiffies~0 := 0;~_ddv_module_author~0 := ~const~array~~LB~int~RB~int();~_ddv_module_description~0 := ~const~array~~LB~int~RB~int();~_ddv_module_license~0 := ~_ddv_module_license~0[0 := 71];~_ddv_module_license~0 := ~_ddv_module_license~0[1 := 80];~_ddv_module_license~0 := ~_ddv_module_license~0[2 := 76];~_ddv_module_license~0 := ~_ddv_module_license~0[3 := 0];~nowayout~0 := 0;~_ddv_module_param_nowayout~0 := ~const~array~~LB~int~RB~int();~#zf_info~0.base, ~#zf_info~0.offset := 27, 0;call #Ultimate.allocInit(40, 27);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~int(~bitwiseOr(32768, 256), ~#zf_info~0.base, ~#zf_info~0.offset, 4);call write~unchecked~int(1, ~#zf_info~0.base, 4 + ~#zf_info~0.offset, 4);call write~init~int(0, ~#zf_info~0.base, 8 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 9 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 10 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 11 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 12 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 13 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 14 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 15 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 16 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 17 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 18 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 19 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 20 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 21 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 22 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 23 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 24 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 25 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 26 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 27 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 28 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 29 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 30 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 31 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 32 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 33 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 34 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 35 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 36 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 37 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 38 + ~#zf_info~0.offset, 1);call write~init~int(0, ~#zf_info~0.base, 39 + ~#zf_info~0.offset, 1);~action~0 := 0;~_ddv_module_param_action~0 := ~const~array~~LB~int~RB~int();~zf_action~0 := 2048;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28, 0;call #Ultimate.allocInit(4, 28);call write~init~int(0, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4);~zf_expect_close~0 := 0;~#zf_lock~0.base, ~#zf_lock~0.offset := 29, 0;call #Ultimate.allocInit(8, 29);call write~init~int(0, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4);call write~init~int(0, ~#zf_lock~0.base, 4 + ~#zf_lock~0.offset, 4);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30, 0;call #Ultimate.allocInit(8, 30);call write~init~int(0, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4);call write~init~int(0, ~#zf_port_lock~0.base, 4 + ~#zf_port_lock~0.offset, 4);~#zf_timer~0.base, ~#zf_timer~0.offset := 31, 0;call #Ultimate.allocInit(16, 31);call write~init~int(0, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_timer~0.base, 4 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 8 + ~#zf_timer~0.offset, 4);call write~init~int(0, ~#zf_timer~0.base, 12 + ~#zf_timer~0.offset, 2);call write~init~int(0, ~#zf_timer~0.base, 14 + ~#zf_timer~0.offset, 2);~next_heartbeat~0 := 0;~#zf_fops~0.base, ~#zf_fops~0.offset := 32, 0;call #Ultimate.allocInit(100, 32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0, 0, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, 4 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, 12 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, 24 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, 40 + ~#zf_fops~0.offset, 4);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, 48 + ~#zf_fops~0.offset, 4);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33, 0;call #Ultimate.allocInit(12, 33);call write~init~int(130, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(14, 0, ~#zf_miscdev~0.base, 4 + ~#zf_miscdev~0.offset, 4);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, 8 + ~#zf_miscdev~0.offset, 4);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34, 0;call #Ultimate.allocInit(12, 34);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4);call write~init~$Pointer$(0, 0, ~#zf_notifier~0.base, 4 + ~#zf_notifier~0.offset, 4);call write~init~int(0, ~#zf_notifier~0.base, 8 + ~#zf_notifier~0.offset, 4);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35, 0;call #Ultimate.allocInit(16, 35);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4);call write~init~$Pointer$(0, 0, ~#fixed_cdev~0.base, 4 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 8 + ~#fixed_cdev~0.offset, 4);call write~init~int(0, ~#fixed_cdev~0.base, 12 + ~#fixed_cdev~0.offset, 4);~fixed_cdev_used~0 := 0;~number_cdev_registered~0 := 0;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36, 0;call #Ultimate.allocInit(64, 36);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0;~number_fixed_genhd_used~0 := 0;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37, 0;call #Ultimate.allocInit(1280, 37);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38, 0;call #Ultimate.allocInit(1460, 38);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39, 0;call #Ultimate.allocInit(236, 39);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40, 0;call #Ultimate.allocInit(128, 40);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41, 0;call #Ultimate.allocInit(6, 41);call write~init~$Pointer$(0, 0, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4);call write~init~int(0, ~#tasklet_registered~0.base, 4 + ~#tasklet_registered~0.offset, 2);~number_timer_registered~0 := 0;~#timer_registered~0.base, ~#timer_registered~0.offset := 42, 0;call #Ultimate.allocInit(4, 42);call write~init~$Pointer$(0, 0, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43, 0;call #Ultimate.allocInit(40, 43);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44, 0;call #Ultimate.allocInit(8, 44);call write~init~int(0, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4);call write~init~int(0, ~#kernel_lock~0.base, 4 + ~#kernel_lock~0.offset, 4);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45, 0;call #Ultimate.allocInit(460, 45);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0, 0;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46, 0;call #Ultimate.allocInit(200, 46);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0;~ddv_ioport_request_len~0 := 0; {4895#true} is VALID [2022-02-20 16:50:51,670 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:50:51,670 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1083787350] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 16:50:51,670 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 16:50:51,670 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 14 [2022-02-20 16:50:51,671 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [811075072] [2022-02-20 16:50:51,671 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 16:50:51,671 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-02-20 16:50:51,672 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:50:51,672 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:51,721 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:50:51,721 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 16:50:51,721 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 16:50:51,722 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 16:50:51,722 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=102, Unknown=0, NotChecked=0, Total=182 [2022-02-20 16:50:51,722 INFO L87 Difference]: Start difference. First operand 351 states and 481 transitions. Second operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:54,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:54,932 INFO L93 Difference]: Finished difference Result 710 states and 976 transitions. [2022-02-20 16:50:54,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 16:50:54,932 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-02-20 16:50:54,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:50:54,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:54,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 975 transitions. [2022-02-20 16:50:54,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:54,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 975 transitions. [2022-02-20 16:50:54,951 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 975 transitions. [2022-02-20 16:50:55,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 975 edges. 975 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:50:55,666 INFO L225 Difference]: With dead ends: 710 [2022-02-20 16:50:55,666 INFO L226 Difference]: Without dead ends: 372 [2022-02-20 16:50:55,667 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=80, Invalid=102, Unknown=0, NotChecked=0, Total=182 [2022-02-20 16:50:55,668 INFO L933 BasicCegarLoop]: 448 mSDtfsCounter, 433 mSDsluCounter, 914 mSDsCounter, 0 mSdLazyCounter, 453 mSolverCounterSat, 125 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 475 SdHoareTripleChecker+Valid, 1362 SdHoareTripleChecker+Invalid, 578 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 125 IncrementalHoareTripleChecker+Valid, 453 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 16:50:55,687 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [475 Valid, 1362 Invalid, 578 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [125 Valid, 453 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-02-20 16:50:55,688 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 372 states. [2022-02-20 16:50:55,743 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 372 to 363. [2022-02-20 16:50:55,743 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:50:55,744 INFO L82 GeneralOperation]: Start isEquivalent. First operand 372 states. Second operand has 363 states, 260 states have (on average 1.3153846153846154) internal successors, (342), 266 states have internal predecessors, (342), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:55,745 INFO L74 IsIncluded]: Start isIncluded. First operand 372 states. Second operand has 363 states, 260 states have (on average 1.3153846153846154) internal successors, (342), 266 states have internal predecessors, (342), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:55,745 INFO L87 Difference]: Start difference. First operand 372 states. Second operand has 363 states, 260 states have (on average 1.3153846153846154) internal successors, (342), 266 states have internal predecessors, (342), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:55,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:55,755 INFO L93 Difference]: Finished difference Result 372 states and 504 transitions. [2022-02-20 16:50:55,755 INFO L276 IsEmpty]: Start isEmpty. Operand 372 states and 504 transitions. [2022-02-20 16:50:55,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:50:55,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:50:55,757 INFO L74 IsIncluded]: Start isIncluded. First operand has 363 states, 260 states have (on average 1.3153846153846154) internal successors, (342), 266 states have internal predecessors, (342), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 372 states. [2022-02-20 16:50:55,758 INFO L87 Difference]: Start difference. First operand has 363 states, 260 states have (on average 1.3153846153846154) internal successors, (342), 266 states have internal predecessors, (342), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 372 states. [2022-02-20 16:50:55,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:50:55,768 INFO L93 Difference]: Finished difference Result 372 states and 504 transitions. [2022-02-20 16:50:55,768 INFO L276 IsEmpty]: Start isEmpty. Operand 372 states and 504 transitions. [2022-02-20 16:50:55,769 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:50:55,769 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:50:55,769 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:50:55,769 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:50:55,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 363 states, 260 states have (on average 1.3153846153846154) internal successors, (342), 266 states have internal predecessors, (342), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:50:55,778 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 363 states to 363 states and 493 transitions. [2022-02-20 16:50:55,779 INFO L78 Accepts]: Start accepts. Automaton has 363 states and 493 transitions. Word has length 36 [2022-02-20 16:50:55,780 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:50:55,780 INFO L470 AbstractCegarLoop]: Abstraction has 363 states and 493 transitions. [2022-02-20 16:50:55,780 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 13 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:50:55,780 INFO L276 IsEmpty]: Start isEmpty. Operand 363 states and 493 transitions. [2022-02-20 16:50:55,782 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-02-20 16:50:55,782 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:50:55,782 INFO L514 BasicCegarLoop]: trace histogram [10, 10, 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] [2022-02-20 16:50:55,807 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 16:50:56,003 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-02-20 16:50:56,003 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:50:56,004 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:50:56,004 INFO L85 PathProgramCache]: Analyzing trace with hash 923995370, now seen corresponding path program 3 times [2022-02-20 16:50:56,004 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:50:56,004 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1195467828] [2022-02-20 16:50:56,004 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:50:56,004 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:50:56,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 16:50:56,420 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 16:50:56,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 16:50:56,546 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 16:50:56,546 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 16:50:56,547 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 16:50:56,548 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 16:50:56,550 INFO L732 BasicCegarLoop]: Path program histogram: [3, 1] [2022-02-20 16:50:56,552 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 16:50:56,594 FATAL L489 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call spin_lock_init(~#kernel_lock~0); [2022-02-20 16:50:56,595 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.UnprovableResult.getProgramExecutionAsString(UnprovableResult.java:132) at de.uni_freiburg.informatik.ultimate.core.lib.results.UnprovableResult.getLongDescription(UnprovableResult.java:125) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:86) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResultReporter.reportResult(CegarLoopResultReporter.java:141) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportLocationResults(TraceAbstractionStarter.java:607) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:182) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 16:50:56,597 INFO L158 Benchmark]: Toolchain (without parser) took 20094.52ms. Allocated memory was 127.9MB in the beginning and 257.9MB in the end (delta: 130.0MB). Free memory was 87.4MB in the beginning and 88.8MB in the end (delta: -1.4MB). Peak memory consumption was 127.9MB. Max. memory is 16.1GB. [2022-02-20 16:50:56,597 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 127.9MB. Free memory was 99.0MB in the beginning and 99.0MB in the end (delta: 21.2kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 16:50:56,597 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1261.03ms. Allocated memory is still 127.9MB. Free memory was 87.0MB in the beginning and 58.8MB in the end (delta: 28.3MB). Peak memory consumption was 55.2MB. Max. memory is 16.1GB. [2022-02-20 16:50:56,597 INFO L158 Benchmark]: Boogie Procedure Inliner took 239.23ms. Allocated memory was 127.9MB in the beginning and 155.2MB in the end (delta: 27.3MB). Free memory was 58.8MB in the beginning and 114.6MB in the end (delta: -55.9MB). Peak memory consumption was 19.9MB. Max. memory is 16.1GB. [2022-02-20 16:50:56,598 INFO L158 Benchmark]: Boogie Preprocessor took 119.66ms. Allocated memory is still 155.2MB. Free memory was 114.6MB in the beginning and 105.0MB in the end (delta: 9.6MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2022-02-20 16:50:56,598 INFO L158 Benchmark]: RCFGBuilder took 2395.65ms. Allocated memory is still 155.2MB. Free memory was 105.0MB in the beginning and 65.2MB in the end (delta: 39.8MB). Peak memory consumption was 69.3MB. Max. memory is 16.1GB. [2022-02-20 16:50:56,598 INFO L158 Benchmark]: TraceAbstraction took 16074.53ms. Allocated memory was 155.2MB in the beginning and 257.9MB in the end (delta: 102.8MB). Free memory was 65.2MB in the beginning and 88.8MB in the end (delta: -23.5MB). Peak memory consumption was 79.2MB. Max. memory is 16.1GB. [2022-02-20 16:50:56,599 INFO L339 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.20ms. Allocated memory is still 127.9MB. Free memory was 99.0MB in the beginning and 99.0MB in the end (delta: 21.2kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1261.03ms. Allocated memory is still 127.9MB. Free memory was 87.0MB in the beginning and 58.8MB in the end (delta: 28.3MB). Peak memory consumption was 55.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 239.23ms. Allocated memory was 127.9MB in the beginning and 155.2MB in the end (delta: 27.3MB). Free memory was 58.8MB in the beginning and 114.6MB in the end (delta: -55.9MB). Peak memory consumption was 19.9MB. Max. memory is 16.1GB. * Boogie Preprocessor took 119.66ms. Allocated memory is still 155.2MB. Free memory was 114.6MB in the beginning and 105.0MB in the end (delta: 9.6MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. * RCFGBuilder took 2395.65ms. Allocated memory is still 155.2MB. Free memory was 105.0MB in the beginning and 65.2MB in the end (delta: 39.8MB). Peak memory consumption was 69.3MB. Max. memory is 16.1GB. * TraceAbstraction took 16074.53ms. Allocated memory was 155.2MB in the beginning and 257.9MB in the end (delta: 102.8MB). Free memory was 65.2MB in the beginning and 88.8MB in the end (delta: -23.5MB). Peak memory consumption was 79.2MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 16:50:56,634 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.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(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 6e6f79eda5be95b806b33aaa2a353a360ae33a1e35cc1bf6f128d14768d932de --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 16:50:58,591 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 16:50:58,592 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 16:50:58,611 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 16:50:58,612 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 16:50:58,613 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 16:50:58,613 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 16:50:58,615 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 16:50:58,616 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 16:50:58,617 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 16:50:58,617 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 16:50:58,618 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 16:50:58,619 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 16:50:58,619 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 16:50:58,620 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 16:50:58,621 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 16:50:58,621 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 16:50:58,622 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 16:50:58,623 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 16:50:58,624 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 16:50:58,625 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 16:50:58,626 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 16:50:58,627 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 16:50:58,628 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 16:50:58,629 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 16:50:58,630 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 16:50:58,630 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 16:50:58,631 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 16:50:58,631 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 16:50:58,632 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 16:50:58,632 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 16:50:58,632 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 16:50:58,633 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 16:50:58,634 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 16:50:58,634 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 16:50:58,634 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 16:50:58,635 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 16:50:58,635 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 16:50:58,635 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 16:50:58,636 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 16:50:58,636 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 16:50:58,637 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2022-02-20 16:50:58,652 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 16:50:58,653 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 16:50:58,653 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 16:50:58,653 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 16:50:58,654 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 16:50:58,654 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 16:50:58,655 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 16:50:58,656 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 16:50:58,656 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 16:50:58,656 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 16:50:58,656 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 16:50:58,656 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 16:50:58,656 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 16:50:58,656 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 16:50:58,657 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 16:50:58,658 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 16:50:58,658 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 16:50:58,658 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 16:50:58,658 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 16:50:58,658 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 16:50:58,658 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:50:58,662 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 16:50:58,663 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 16:50:58,664 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 16:50:58,664 INFO L138 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.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(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 6e6f79eda5be95b806b33aaa2a353a360ae33a1e35cc1bf6f128d14768d932de [2022-02-20 16:50:58,925 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 16:50:58,952 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 16:50:58,954 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 16:50:58,955 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 16:50:58,956 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 16:50:58,957 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i [2022-02-20 16:50:59,007 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/df0b90720/646c4552cca94c23a2c766f5d568c47b/FLAG4b09be25b [2022-02-20 16:50:59,633 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 16:50:59,634 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i [2022-02-20 16:50:59,661 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/df0b90720/646c4552cca94c23a2c766f5d568c47b/FLAG4b09be25b [2022-02-20 16:50:59,984 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/df0b90720/646c4552cca94c23a2c766f5d568c47b [2022-02-20 16:50:59,986 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 16:50:59,987 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 16:50:59,988 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 16:50:59,988 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 16:50:59,991 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 16:50:59,992 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:50:59" (1/1) ... [2022-02-20 16:50:59,993 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4849fde and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:50:59, skipping insertion in model container [2022-02-20 16:50:59,993 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:50:59" (1/1) ... [2022-02-20 16:50:59,997 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 16:51:00,067 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:51:00,203 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i[452,465] [2022-02-20 16:51:01,064 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:51:01,098 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 16:51:01,130 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:51:01,134 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i[452,465] [2022-02-20 16:51:01,322 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:51:01,350 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 16:51:01,358 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ddv-machzwd/ddv_machzwd_inw.i[452,465] [2022-02-20 16:51:01,487 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:51:01,598 INFO L208 MainTranslator]: Completed translation [2022-02-20 16:51:01,598 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01 WrapperNode [2022-02-20 16:51:01,599 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 16:51:01,600 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 16:51:01,600 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 16:51:01,600 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 16:51:01,605 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,649 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,721 INFO L137 Inliner]: procedures = 482, calls = 839, calls flagged for inlining = 54, calls inlined = 38, statements flattened = 979 [2022-02-20 16:51:01,722 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 16:51:01,722 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 16:51:01,723 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 16:51:01,723 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 16:51:01,731 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,731 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,739 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,740 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,807 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,812 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,828 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,844 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 16:51:01,863 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 16:51:01,864 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 16:51:01,864 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 16:51:01,865 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (1/1) ... [2022-02-20 16:51:01,869 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:51:01,890 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:51:01,902 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 16:51:01,933 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 16:51:01,963 INFO L130 BoogieDeclarations]: Found specification of procedure zf_timer_off [2022-02-20 16:51:01,964 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_timer_off [2022-02-20 16:51:01,964 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~$Pointer$~X~C_UINT~X~C_ULONG~TO~C_INT [2022-02-20 16:51:01,964 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~$Pointer$~X~C_UINT~X~C_ULONG~TO~C_INT [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-02-20 16:51:01,965 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_atomic_begin [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure spin_unlock_irqrestore [2022-02-20 16:51:01,965 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_unlock_irqrestore [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2 [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2022-02-20 16:51:01,965 INFO L130 BoogieDeclarations]: Found specification of procedure spin_unlock [2022-02-20 16:51:01,966 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_unlock [2022-02-20 16:51:01,966 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-02-20 16:51:01,966 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_atomic_end [2022-02-20 16:51:01,966 INFO L130 BoogieDeclarations]: Found specification of procedure zf_get_control [2022-02-20 16:51:01,966 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_get_control [2022-02-20 16:51:01,966 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~$Pointer$~TO~C_INT [2022-02-20 16:51:01,966 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~$Pointer$~TO~C_INT [2022-02-20 16:51:01,966 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 16:51:01,966 INFO L130 BoogieDeclarations]: Found specification of procedure request_region [2022-02-20 16:51:01,966 INFO L138 BoogieDeclarations]: Found implementation of procedure request_region [2022-02-20 16:51:01,967 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 16:51:01,967 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 16:51:01,967 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~TO~VOID [2022-02-20 16:51:01,967 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~TO~VOID [2022-02-20 16:51:01,967 INFO L130 BoogieDeclarations]: Found specification of procedure spin_lock_irqsave [2022-02-20 16:51:01,968 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_lock_irqsave [2022-02-20 16:51:01,968 INFO L130 BoogieDeclarations]: Found specification of procedure release_region [2022-02-20 16:51:01,968 INFO L138 BoogieDeclarations]: Found implementation of procedure release_region [2022-02-20 16:51:01,968 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 16:51:01,968 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 16:51:01,968 INFO L130 BoogieDeclarations]: Found specification of procedure spin_lock_init [2022-02-20 16:51:01,968 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_lock_init [2022-02-20 16:51:01,970 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE8 [2022-02-20 16:51:01,970 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 16:51:01,970 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2 [2022-02-20 16:51:01,971 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$ [2022-02-20 16:51:01,971 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 16:51:01,971 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 16:51:01,971 INFO L130 BoogieDeclarations]: Found specification of procedure del_timer [2022-02-20 16:51:01,971 INFO L138 BoogieDeclarations]: Found implementation of procedure del_timer [2022-02-20 16:51:01,971 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 16:51:01,971 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 16:51:01,972 INFO L130 BoogieDeclarations]: Found specification of procedure add_timer [2022-02-20 16:51:01,972 INFO L138 BoogieDeclarations]: Found implementation of procedure add_timer [2022-02-20 16:51:01,972 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE8 [2022-02-20 16:51:01,973 INFO L130 BoogieDeclarations]: Found specification of procedure cdev_add [2022-02-20 16:51:01,973 INFO L138 BoogieDeclarations]: Found implementation of procedure cdev_add [2022-02-20 16:51:01,973 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1 [2022-02-20 16:51:01,974 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2 [2022-02-20 16:51:01,974 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 16:51:01,974 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 16:51:01,974 INFO L130 BoogieDeclarations]: Found specification of procedure printk [2022-02-20 16:51:01,974 INFO L138 BoogieDeclarations]: Found implementation of procedure printk [2022-02-20 16:51:01,974 INFO L130 BoogieDeclarations]: Found specification of procedure outw [2022-02-20 16:51:01,975 INFO L138 BoogieDeclarations]: Found implementation of procedure outw [2022-02-20 16:51:01,975 INFO L130 BoogieDeclarations]: Found specification of procedure outb [2022-02-20 16:51:01,975 INFO L138 BoogieDeclarations]: Found implementation of procedure outb [2022-02-20 16:51:01,975 INFO L130 BoogieDeclarations]: Found specification of procedure misc_deregister [2022-02-20 16:51:01,975 INFO L138 BoogieDeclarations]: Found implementation of procedure misc_deregister [2022-02-20 16:51:01,975 INFO L130 BoogieDeclarations]: Found specification of procedure assert_context_process [2022-02-20 16:51:01,975 INFO L138 BoogieDeclarations]: Found implementation of procedure assert_context_process [2022-02-20 16:51:01,975 INFO L130 BoogieDeclarations]: Found specification of procedure zf_set_control [2022-02-20 16:51:01,975 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_set_control [2022-02-20 16:51:01,976 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~$Pointer$~X~C_ULONG~X~$Pointer$~TO~C_LONG [2022-02-20 16:51:01,976 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~$Pointer$~X~C_ULONG~X~$Pointer$~TO~C_LONG [2022-02-20 16:51:01,976 INFO L130 BoogieDeclarations]: Found specification of procedure zf_readw [2022-02-20 16:51:01,976 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_readw [2022-02-20 16:51:01,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intINTTYPE4 [2022-02-20 16:51:01,976 INFO L130 BoogieDeclarations]: Found specification of procedure zf_ping [2022-02-20 16:51:01,977 INFO L138 BoogieDeclarations]: Found implementation of procedure zf_ping [2022-02-20 16:51:01,977 INFO L130 BoogieDeclarations]: Found specification of procedure spin_lock [2022-02-20 16:51:01,977 INFO L138 BoogieDeclarations]: Found implementation of procedure spin_lock [2022-02-20 16:51:01,977 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~C_ULONG~TO~VOID [2022-02-20 16:51:01,977 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~C_ULONG~TO~VOID [2022-02-20 16:51:02,338 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 16:51:02,340 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 16:51:06,942 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 16:51:06,957 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 16:51:06,958 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 16:51:06,966 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:51:06 BoogieIcfgContainer [2022-02-20 16:51:06,967 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 16:51:06,968 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 16:51:06,968 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 16:51:06,970 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 16:51:06,970 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 04:50:59" (1/3) ... [2022-02-20 16:51:06,970 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63d22b5e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:51:06, skipping insertion in model container [2022-02-20 16:51:06,970 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:51:01" (2/3) ... [2022-02-20 16:51:06,971 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63d22b5e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:51:06, skipping insertion in model container [2022-02-20 16:51:06,971 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:51:06" (3/3) ... [2022-02-20 16:51:06,972 INFO L111 eAbstractionObserver]: Analyzing ICFG ddv_machzwd_inw.i [2022-02-20 16:51:06,983 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 16:51:06,983 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 16:51:07,022 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 16:51:07,042 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 16:51:07,043 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 16:51:07,073 INFO L276 IsEmpty]: Start isEmpty. Operand has 353 states, 247 states have (on average 1.360323886639676) internal successors, (336), 253 states have internal predecessors, (336), 78 states have call successors, (78), 26 states have call predecessors, (78), 26 states have return successors, (78), 78 states have call predecessors, (78), 78 states have call successors, (78) [2022-02-20 16:51:07,076 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 16:51:07,077 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:51:07,077 INFO L514 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] [2022-02-20 16:51:07,077 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:51:07,084 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:51:07,084 INFO L85 PathProgramCache]: Analyzing trace with hash -697881774, now seen corresponding path program 1 times [2022-02-20 16:51:07,095 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:51:07,096 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1420114849] [2022-02-20 16:51:07,096 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:51:07,097 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:51:07,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:51:07,140 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:51:07,144 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2022-02-20 16:51:07,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:07,516 INFO L263 TraceCheckSpWp]: Trace formula consists of 552 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 16:51:07,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:07,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:51:07,639 INFO L290 TraceCheckUtils]: 0: Hoare triple {356#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(18bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);call #Ultimate.allocInit(44bv32, 4bv32);call #Ultimate.allocInit(31bv32, 5bv32);call #Ultimate.allocInit(4bv32, 6bv32);call write~init~intINTTYPE1(71bv8, 6bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(80bv8, 6bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(76bv8, 6bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 6bv32, 3bv32, 1bv32);call #Ultimate.allocInit(75bv32, 7bv32);call #Ultimate.allocInit(18bv32, 8bv32);call #Ultimate.allocInit(73bv32, 9bv32);call #Ultimate.allocInit(44bv32, 10bv32);call #Ultimate.allocInit(43bv32, 11bv32);call #Ultimate.allocInit(39bv32, 12bv32);call #Ultimate.allocInit(69bv32, 13bv32);call #Ultimate.allocInit(9bv32, 14bv32);call #Ultimate.allocInit(6bv32, 15bv32);call write~init~intINTTYPE1(82bv8, 15bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(83bv8, 15bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 3bv32, 1bv32);call write~init~intINTTYPE1(84bv8, 15bv32, 4bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 15bv32, 5bv32, 1bv32);call #Ultimate.allocInit(4bv32, 16bv32);call write~init~intINTTYPE1(83bv8, 16bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 16bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 16bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 16bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 17bv32);call write~init~intINTTYPE1(78bv8, 17bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 17bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 17bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 17bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 18bv32);call write~init~intINTTYPE1(83bv8, 18bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(67bv8, 18bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 18bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 18bv32, 3bv32, 1bv32);call #Ultimate.allocInit(40bv32, 19bv32);call #Ultimate.allocInit(58bv32, 20bv32);call #Ultimate.allocInit(31bv32, 21bv32);call #Ultimate.allocInit(36bv32, 22bv32);call #Ultimate.allocInit(14bv32, 23bv32);call #Ultimate.allocInit(35bv32, 24bv32);call #Ultimate.allocInit(44bv32, 25bv32);call #Ultimate.allocInit(22bv32, 26bv32);~current_execution_context~0 := 0bv32;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0bv32, 0bv32;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0bv32, 0bv32;~jiffies~0 := 0bv32;~_ddv_module_author~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_description~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_license~0 := ~_ddv_module_license~0[0bv32 := 71bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[1bv32 := 80bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[2bv32 := 76bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[3bv32 := 0bv8];~nowayout~0 := 0bv32;~_ddv_module_param_nowayout~0 := ~const~array~~LB~bv32~RB~bv8();~#zf_info~0.base, ~#zf_info~0.offset := 27bv32, 0bv32;call #Ultimate.allocInit(40bv32, 27bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~intINTTYPE4(33024bv32, ~#zf_info~0.base, ~#zf_info~0.offset, 4bv32);call write~unchecked~intINTTYPE4(1bv32, ~#zf_info~0.base, ~bvadd32(4bv32, ~#zf_info~0.offset), 4bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(8bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(9bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(10bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(11bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(12bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(13bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(14bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(15bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(16bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(17bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(18bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(19bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(20bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(21bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(22bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(23bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(24bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(25bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(26bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(27bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(28bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(29bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(30bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(31bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(32bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(33bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(34bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(35bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(36bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(37bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(38bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(39bv32, ~#zf_info~0.offset), 1bv32);~action~0 := 0bv32;~_ddv_module_param_action~0 := ~const~array~~LB~bv32~RB~bv8();~zf_action~0 := 2048bv32;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28bv32, 0bv32;call #Ultimate.allocInit(4bv32, 28bv32);call write~init~intINTTYPE4(0bv32, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4bv32);~zf_expect_close~0 := 0bv8;~#zf_lock~0.base, ~#zf_lock~0.offset := 29bv32, 0bv32;call #Ultimate.allocInit(8bv32, 29bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~bvadd32(4bv32, ~#zf_lock~0.offset), 4bv32);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30bv32, 0bv32;call #Ultimate.allocInit(8bv32, 30bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~bvadd32(4bv32, ~#zf_port_lock~0.offset), 4bv32);~#zf_timer~0.base, ~#zf_timer~0.offset := 31bv32, 0bv32;call #Ultimate.allocInit(16bv32, 31bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_timer~0.base, ~bvadd32(4bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~bvadd32(8bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(12bv32, ~#zf_timer~0.offset), 2bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(14bv32, ~#zf_timer~0.offset), 2bv32);~next_heartbeat~0 := 0bv32;~#zf_fops~0.base, ~#zf_fops~0.offset := 32bv32, 0bv32;call #Ultimate.allocInit(100bv32, 32bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0bv32, 0bv32, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4bv32);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, ~bvadd32(4bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, ~bvadd32(12bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, ~bvadd32(24bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, ~bvadd32(40bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, ~bvadd32(48bv32, ~#zf_fops~0.offset), 4bv32);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33bv32, 0bv32;call #Ultimate.allocInit(12bv32, 33bv32);call write~init~intINTTYPE4(130bv32, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4bv32);call write~init~$Pointer$(14bv32, 0bv32, ~#zf_miscdev~0.base, ~bvadd32(4bv32, ~#zf_miscdev~0.offset), 4bv32);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, ~bvadd32(8bv32, ~#zf_miscdev~0.offset), 4bv32);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34bv32, 0bv32;call #Ultimate.allocInit(12bv32, 34bv32);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_notifier~0.base, ~bvadd32(4bv32, ~#zf_notifier~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_notifier~0.base, ~bvadd32(8bv32, ~#zf_notifier~0.offset), 4bv32);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35bv32, 0bv32;call #Ultimate.allocInit(16bv32, 35bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~bvadd32(4bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(8bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(12bv32, ~#fixed_cdev~0.offset), 4bv32);~fixed_cdev_used~0 := 0bv32;~number_cdev_registered~0 := 0bv16;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36bv32, 0bv32;call #Ultimate.allocInit(64bv32, 36bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0bv16;~number_fixed_genhd_used~0 := 0bv16;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37bv32, 0bv32;call #Ultimate.allocInit(1280bv32, 37bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38bv32, 0bv32;call #Ultimate.allocInit(1460bv32, 38bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39bv32, 0bv32;call #Ultimate.allocInit(236bv32, 39bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40bv32, 0bv32;call #Ultimate.allocInit(128bv32, 40bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0bv16;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41bv32, 0bv32;call #Ultimate.allocInit(6bv32, 41bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4bv32);call write~init~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~#tasklet_registered~0.offset), 2bv32);~number_timer_registered~0 := 0bv16;~#timer_registered~0.base, ~#timer_registered~0.offset := 42bv32, 0bv32;call #Ultimate.allocInit(4bv32, 42bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4bv32);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43bv32, 0bv32;call #Ultimate.allocInit(40bv32, 43bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44bv32, 0bv32;call #Ultimate.allocInit(8bv32, 44bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~bvadd32(4bv32, ~#kernel_lock~0.offset), 4bv32);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45bv32, 0bv32;call #Ultimate.allocInit(460bv32, 45bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0bv32;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0bv32, 0bv32;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46bv32, 0bv32;call #Ultimate.allocInit(200bv32, 46bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0bv32;~ddv_ioport_request_len~0 := 0bv32; {356#true} is VALID [2022-02-20 16:51:07,640 INFO L290 TraceCheckUtils]: 1: Hoare triple {356#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1bv32;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {356#true} is VALID [2022-02-20 16:51:07,640 INFO L272 TraceCheckUtils]: 2: Hoare triple {356#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {356#true} is VALID [2022-02-20 16:51:07,644 INFO L290 TraceCheckUtils]: 3: Hoare triple {356#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~intINTTYPE4(1bv32, ~lock.base, ~lock.offset, 4bv32);call write~intINTTYPE4(0bv32, ~lock.base, ~bvadd32(4bv32, ~lock.offset), 4bv32); {356#true} is VALID [2022-02-20 16:51:07,644 INFO L290 TraceCheckUtils]: 4: Hoare triple {356#true} assume true; {356#true} is VALID [2022-02-20 16:51:07,644 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {356#true} {356#true} #854#return; {356#true} is VALID [2022-02-20 16:51:07,644 INFO L290 TraceCheckUtils]: 6: Hoare triple {356#true} init_kernel_~i~1#1 := 0bv32; {356#true} is VALID [2022-02-20 16:51:07,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {356#true} assume !true; {357#false} is VALID [2022-02-20 16:51:07,645 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#false} init_kernel_~i~1#1 := 0bv32; {357#false} is VALID [2022-02-20 16:51:07,645 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#false} assume !true; {357#false} is VALID [2022-02-20 16:51:07,646 INFO L290 TraceCheckUtils]: 10: Hoare triple {357#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~C_INT } true;##fun~~TO~C_INT_#in~#fp#1.base, ##fun~~TO~C_INT_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~C_INT_#res#1;havoc ##fun~~TO~C_INT_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {357#false} is VALID [2022-02-20 16:51:07,646 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#false} call zf_init_#t~ret218#1 := printk(20bv32, 0bv32); {357#false} is VALID [2022-02-20 16:51:07,647 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#false} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0bv32; {357#false} is VALID [2022-02-20 16:51:07,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {357#false} assume true; {357#false} is VALID [2022-02-20 16:51:07,647 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {357#false} {357#false} #856#return; {357#false} is VALID [2022-02-20 16:51:07,647 INFO L290 TraceCheckUtils]: 15: Hoare triple {357#false} havoc zf_init_#t~ret218#1; {357#false} is VALID [2022-02-20 16:51:07,647 INFO L272 TraceCheckUtils]: 16: Hoare triple {357#false} call zf_init_#t~ret219#1 := zf_readw(2bv8); {357#false} is VALID [2022-02-20 16:51:07,648 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#false} ~port#1 := #in~port#1; {357#false} is VALID [2022-02-20 16:51:07,648 INFO L272 TraceCheckUtils]: 18: Hoare triple {357#false} call outb(~port#1, 536bv32); {357#false} is VALID [2022-02-20 16:51:07,649 INFO L290 TraceCheckUtils]: 19: Hoare triple {357#false} ~byte := #in~byte;~port := #in~port; {357#false} is VALID [2022-02-20 16:51:07,649 INFO L290 TraceCheckUtils]: 20: Hoare triple {357#false} assume true; {357#false} is VALID [2022-02-20 16:51:07,649 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {357#false} {357#false} #790#return; {357#false} is VALID [2022-02-20 16:51:07,649 INFO L290 TraceCheckUtils]: 22: Hoare triple {357#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538bv32;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {357#false} is VALID [2022-02-20 16:51:07,650 INFO L290 TraceCheckUtils]: 23: Hoare triple {357#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if ~bvuge32(inw_~port#1, ~ddv_ioport_request_start~0) && ~bvult32(inw_~port#1, ~bvadd32(~ddv_ioport_request_start~0, ~ddv_ioport_request_len~0)) then 1bv32 else 0bv32), 26bv32, 0bv32;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {357#false} is VALID [2022-02-20 16:51:07,650 INFO L290 TraceCheckUtils]: 24: Hoare triple {357#false} assume 0bv32 == __VERIFIER_assert_~expression#1; {357#false} is VALID [2022-02-20 16:51:07,651 INFO L290 TraceCheckUtils]: 25: Hoare triple {357#false} assume !false; {357#false} is VALID [2022-02-20 16:51:07,652 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:51:07,652 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:51:07,652 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:51:07,652 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1420114849] [2022-02-20 16:51:07,653 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1420114849] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:51:07,653 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:51:07,653 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 16:51:07,657 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1102462049] [2022-02-20 16:51:07,657 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:51:07,661 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-02-20 16:51:07,663 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:51:07,666 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:07,712 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:07,713 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 16:51:07,713 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:51:07,741 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 16:51:07,741 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:51:07,747 INFO L87 Difference]: Start difference. First operand has 353 states, 247 states have (on average 1.360323886639676) internal successors, (336), 253 states have internal predecessors, (336), 78 states have call successors, (78), 26 states have call predecessors, (78), 26 states have return successors, (78), 78 states have call predecessors, (78), 78 states have call successors, (78) Second operand has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:10,809 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:10,809 INFO L93 Difference]: Finished difference Result 700 states and 998 transitions. [2022-02-20 16:51:10,809 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 16:51:10,810 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-02-20 16:51:10,810 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:51:10,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:10,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 998 transitions. [2022-02-20 16:51:10,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:10,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 998 transitions. [2022-02-20 16:51:10,889 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 998 transitions. [2022-02-20 16:51:11,906 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 998 edges. 998 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:11,931 INFO L225 Difference]: With dead ends: 700 [2022-02-20 16:51:11,931 INFO L226 Difference]: Without dead ends: 343 [2022-02-20 16:51:11,935 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:51:11,937 INFO L933 BasicCegarLoop]: 486 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 486 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:51:11,938 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 486 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 16:51:11,951 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 343 states. [2022-02-20 16:51:11,988 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 343 to 343. [2022-02-20 16:51:12,003 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:51:12,005 INFO L82 GeneralOperation]: Start isEquivalent. First operand 343 states. Second operand has 343 states, 240 states have (on average 1.3416666666666666) internal successors, (322), 246 states have internal predecessors, (322), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:12,007 INFO L74 IsIncluded]: Start isIncluded. First operand 343 states. Second operand has 343 states, 240 states have (on average 1.3416666666666666) internal successors, (322), 246 states have internal predecessors, (322), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:12,008 INFO L87 Difference]: Start difference. First operand 343 states. Second operand has 343 states, 240 states have (on average 1.3416666666666666) internal successors, (322), 246 states have internal predecessors, (322), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:12,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:12,035 INFO L93 Difference]: Finished difference Result 343 states and 473 transitions. [2022-02-20 16:51:12,035 INFO L276 IsEmpty]: Start isEmpty. Operand 343 states and 473 transitions. [2022-02-20 16:51:12,039 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:51:12,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:51:12,040 INFO L74 IsIncluded]: Start isIncluded. First operand has 343 states, 240 states have (on average 1.3416666666666666) internal successors, (322), 246 states have internal predecessors, (322), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 343 states. [2022-02-20 16:51:12,041 INFO L87 Difference]: Start difference. First operand has 343 states, 240 states have (on average 1.3416666666666666) internal successors, (322), 246 states have internal predecessors, (322), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 343 states. [2022-02-20 16:51:12,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:12,067 INFO L93 Difference]: Finished difference Result 343 states and 473 transitions. [2022-02-20 16:51:12,067 INFO L276 IsEmpty]: Start isEmpty. Operand 343 states and 473 transitions. [2022-02-20 16:51:12,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:51:12,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:51:12,069 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:51:12,070 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:51:12,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 343 states, 240 states have (on average 1.3416666666666666) internal successors, (322), 246 states have internal predecessors, (322), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:12,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 343 states to 343 states and 473 transitions. [2022-02-20 16:51:12,096 INFO L78 Accepts]: Start accepts. Automaton has 343 states and 473 transitions. Word has length 26 [2022-02-20 16:51:12,096 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:51:12,097 INFO L470 AbstractCegarLoop]: Abstraction has 343 states and 473 transitions. [2022-02-20 16:51:12,097 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 9.5) internal successors, (19), 2 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:12,097 INFO L276 IsEmpty]: Start isEmpty. Operand 343 states and 473 transitions. [2022-02-20 16:51:12,098 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 16:51:12,098 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:51:12,098 INFO L514 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] [2022-02-20 16:51:12,114 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 16:51:12,298 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:51:12,299 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:51:12,299 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:51:12,299 INFO L85 PathProgramCache]: Analyzing trace with hash 544058566, now seen corresponding path program 1 times [2022-02-20 16:51:12,300 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:51:12,300 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [253719202] [2022-02-20 16:51:12,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:51:12,300 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:51:12,300 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:51:12,302 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:51:12,306 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2022-02-20 16:51:12,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:12,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 552 conjuncts, 2 conjunts are in the unsatisfiable core [2022-02-20 16:51:12,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:12,661 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:51:12,771 INFO L290 TraceCheckUtils]: 0: Hoare triple {2558#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(18bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);call #Ultimate.allocInit(44bv32, 4bv32);call #Ultimate.allocInit(31bv32, 5bv32);call #Ultimate.allocInit(4bv32, 6bv32);call write~init~intINTTYPE1(71bv8, 6bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(80bv8, 6bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(76bv8, 6bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 6bv32, 3bv32, 1bv32);call #Ultimate.allocInit(75bv32, 7bv32);call #Ultimate.allocInit(18bv32, 8bv32);call #Ultimate.allocInit(73bv32, 9bv32);call #Ultimate.allocInit(44bv32, 10bv32);call #Ultimate.allocInit(43bv32, 11bv32);call #Ultimate.allocInit(39bv32, 12bv32);call #Ultimate.allocInit(69bv32, 13bv32);call #Ultimate.allocInit(9bv32, 14bv32);call #Ultimate.allocInit(6bv32, 15bv32);call write~init~intINTTYPE1(82bv8, 15bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(83bv8, 15bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 3bv32, 1bv32);call write~init~intINTTYPE1(84bv8, 15bv32, 4bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 15bv32, 5bv32, 1bv32);call #Ultimate.allocInit(4bv32, 16bv32);call write~init~intINTTYPE1(83bv8, 16bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 16bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 16bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 16bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 17bv32);call write~init~intINTTYPE1(78bv8, 17bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 17bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 17bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 17bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 18bv32);call write~init~intINTTYPE1(83bv8, 18bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(67bv8, 18bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 18bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 18bv32, 3bv32, 1bv32);call #Ultimate.allocInit(40bv32, 19bv32);call #Ultimate.allocInit(58bv32, 20bv32);call #Ultimate.allocInit(31bv32, 21bv32);call #Ultimate.allocInit(36bv32, 22bv32);call #Ultimate.allocInit(14bv32, 23bv32);call #Ultimate.allocInit(35bv32, 24bv32);call #Ultimate.allocInit(44bv32, 25bv32);call #Ultimate.allocInit(22bv32, 26bv32);~current_execution_context~0 := 0bv32;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0bv32, 0bv32;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0bv32, 0bv32;~jiffies~0 := 0bv32;~_ddv_module_author~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_description~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_license~0 := ~_ddv_module_license~0[0bv32 := 71bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[1bv32 := 80bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[2bv32 := 76bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[3bv32 := 0bv8];~nowayout~0 := 0bv32;~_ddv_module_param_nowayout~0 := ~const~array~~LB~bv32~RB~bv8();~#zf_info~0.base, ~#zf_info~0.offset := 27bv32, 0bv32;call #Ultimate.allocInit(40bv32, 27bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~intINTTYPE4(33024bv32, ~#zf_info~0.base, ~#zf_info~0.offset, 4bv32);call write~unchecked~intINTTYPE4(1bv32, ~#zf_info~0.base, ~bvadd32(4bv32, ~#zf_info~0.offset), 4bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(8bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(9bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(10bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(11bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(12bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(13bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(14bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(15bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(16bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(17bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(18bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(19bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(20bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(21bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(22bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(23bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(24bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(25bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(26bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(27bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(28bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(29bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(30bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(31bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(32bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(33bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(34bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(35bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(36bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(37bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(38bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(39bv32, ~#zf_info~0.offset), 1bv32);~action~0 := 0bv32;~_ddv_module_param_action~0 := ~const~array~~LB~bv32~RB~bv8();~zf_action~0 := 2048bv32;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28bv32, 0bv32;call #Ultimate.allocInit(4bv32, 28bv32);call write~init~intINTTYPE4(0bv32, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4bv32);~zf_expect_close~0 := 0bv8;~#zf_lock~0.base, ~#zf_lock~0.offset := 29bv32, 0bv32;call #Ultimate.allocInit(8bv32, 29bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~bvadd32(4bv32, ~#zf_lock~0.offset), 4bv32);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30bv32, 0bv32;call #Ultimate.allocInit(8bv32, 30bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~bvadd32(4bv32, ~#zf_port_lock~0.offset), 4bv32);~#zf_timer~0.base, ~#zf_timer~0.offset := 31bv32, 0bv32;call #Ultimate.allocInit(16bv32, 31bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_timer~0.base, ~bvadd32(4bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~bvadd32(8bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(12bv32, ~#zf_timer~0.offset), 2bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(14bv32, ~#zf_timer~0.offset), 2bv32);~next_heartbeat~0 := 0bv32;~#zf_fops~0.base, ~#zf_fops~0.offset := 32bv32, 0bv32;call #Ultimate.allocInit(100bv32, 32bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0bv32, 0bv32, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4bv32);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, ~bvadd32(4bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, ~bvadd32(12bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, ~bvadd32(24bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, ~bvadd32(40bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, ~bvadd32(48bv32, ~#zf_fops~0.offset), 4bv32);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33bv32, 0bv32;call #Ultimate.allocInit(12bv32, 33bv32);call write~init~intINTTYPE4(130bv32, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4bv32);call write~init~$Pointer$(14bv32, 0bv32, ~#zf_miscdev~0.base, ~bvadd32(4bv32, ~#zf_miscdev~0.offset), 4bv32);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, ~bvadd32(8bv32, ~#zf_miscdev~0.offset), 4bv32);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34bv32, 0bv32;call #Ultimate.allocInit(12bv32, 34bv32);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_notifier~0.base, ~bvadd32(4bv32, ~#zf_notifier~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_notifier~0.base, ~bvadd32(8bv32, ~#zf_notifier~0.offset), 4bv32);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35bv32, 0bv32;call #Ultimate.allocInit(16bv32, 35bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~bvadd32(4bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(8bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(12bv32, ~#fixed_cdev~0.offset), 4bv32);~fixed_cdev_used~0 := 0bv32;~number_cdev_registered~0 := 0bv16;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36bv32, 0bv32;call #Ultimate.allocInit(64bv32, 36bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0bv16;~number_fixed_genhd_used~0 := 0bv16;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37bv32, 0bv32;call #Ultimate.allocInit(1280bv32, 37bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38bv32, 0bv32;call #Ultimate.allocInit(1460bv32, 38bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39bv32, 0bv32;call #Ultimate.allocInit(236bv32, 39bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40bv32, 0bv32;call #Ultimate.allocInit(128bv32, 40bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0bv16;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41bv32, 0bv32;call #Ultimate.allocInit(6bv32, 41bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4bv32);call write~init~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~#tasklet_registered~0.offset), 2bv32);~number_timer_registered~0 := 0bv16;~#timer_registered~0.base, ~#timer_registered~0.offset := 42bv32, 0bv32;call #Ultimate.allocInit(4bv32, 42bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4bv32);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43bv32, 0bv32;call #Ultimate.allocInit(40bv32, 43bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44bv32, 0bv32;call #Ultimate.allocInit(8bv32, 44bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~bvadd32(4bv32, ~#kernel_lock~0.offset), 4bv32);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45bv32, 0bv32;call #Ultimate.allocInit(460bv32, 45bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0bv32;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0bv32, 0bv32;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46bv32, 0bv32;call #Ultimate.allocInit(200bv32, 46bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0bv32;~ddv_ioport_request_len~0 := 0bv32; {2558#true} is VALID [2022-02-20 16:51:12,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {2558#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1bv32;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {2558#true} is VALID [2022-02-20 16:51:12,772 INFO L272 TraceCheckUtils]: 2: Hoare triple {2558#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {2558#true} is VALID [2022-02-20 16:51:12,772 INFO L290 TraceCheckUtils]: 3: Hoare triple {2558#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~intINTTYPE4(1bv32, ~lock.base, ~lock.offset, 4bv32);call write~intINTTYPE4(0bv32, ~lock.base, ~bvadd32(4bv32, ~lock.offset), 4bv32); {2558#true} is VALID [2022-02-20 16:51:12,772 INFO L290 TraceCheckUtils]: 4: Hoare triple {2558#true} assume true; {2558#true} is VALID [2022-02-20 16:51:12,773 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {2558#true} {2558#true} #854#return; {2558#true} is VALID [2022-02-20 16:51:12,773 INFO L290 TraceCheckUtils]: 6: Hoare triple {2558#true} init_kernel_~i~1#1 := 0bv32; {2581#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} is VALID [2022-02-20 16:51:12,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {2581#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} assume !~bvslt32(init_kernel_~i~1#1, 10bv32); {2559#false} is VALID [2022-02-20 16:51:12,774 INFO L290 TraceCheckUtils]: 8: Hoare triple {2559#false} init_kernel_~i~1#1 := 0bv32; {2559#false} is VALID [2022-02-20 16:51:12,774 INFO L290 TraceCheckUtils]: 9: Hoare triple {2559#false} assume !~bvslt32(init_kernel_~i~1#1, 1bv32); {2559#false} is VALID [2022-02-20 16:51:12,774 INFO L290 TraceCheckUtils]: 10: Hoare triple {2559#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~C_INT } true;##fun~~TO~C_INT_#in~#fp#1.base, ##fun~~TO~C_INT_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~C_INT_#res#1;havoc ##fun~~TO~C_INT_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {2559#false} is VALID [2022-02-20 16:51:12,774 INFO L272 TraceCheckUtils]: 11: Hoare triple {2559#false} call zf_init_#t~ret218#1 := printk(20bv32, 0bv32); {2559#false} is VALID [2022-02-20 16:51:12,774 INFO L290 TraceCheckUtils]: 12: Hoare triple {2559#false} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0bv32; {2559#false} is VALID [2022-02-20 16:51:12,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {2559#false} assume true; {2559#false} is VALID [2022-02-20 16:51:12,775 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {2559#false} {2559#false} #856#return; {2559#false} is VALID [2022-02-20 16:51:12,775 INFO L290 TraceCheckUtils]: 15: Hoare triple {2559#false} havoc zf_init_#t~ret218#1; {2559#false} is VALID [2022-02-20 16:51:12,776 INFO L272 TraceCheckUtils]: 16: Hoare triple {2559#false} call zf_init_#t~ret219#1 := zf_readw(2bv8); {2559#false} is VALID [2022-02-20 16:51:12,776 INFO L290 TraceCheckUtils]: 17: Hoare triple {2559#false} ~port#1 := #in~port#1; {2559#false} is VALID [2022-02-20 16:51:12,776 INFO L272 TraceCheckUtils]: 18: Hoare triple {2559#false} call outb(~port#1, 536bv32); {2559#false} is VALID [2022-02-20 16:51:12,776 INFO L290 TraceCheckUtils]: 19: Hoare triple {2559#false} ~byte := #in~byte;~port := #in~port; {2559#false} is VALID [2022-02-20 16:51:12,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {2559#false} assume true; {2559#false} is VALID [2022-02-20 16:51:12,776 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2559#false} {2559#false} #790#return; {2559#false} is VALID [2022-02-20 16:51:12,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {2559#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538bv32;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {2559#false} is VALID [2022-02-20 16:51:12,777 INFO L290 TraceCheckUtils]: 23: Hoare triple {2559#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if ~bvuge32(inw_~port#1, ~ddv_ioport_request_start~0) && ~bvult32(inw_~port#1, ~bvadd32(~ddv_ioport_request_start~0, ~ddv_ioport_request_len~0)) then 1bv32 else 0bv32), 26bv32, 0bv32;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {2559#false} is VALID [2022-02-20 16:51:12,777 INFO L290 TraceCheckUtils]: 24: Hoare triple {2559#false} assume 0bv32 == __VERIFIER_assert_~expression#1; {2559#false} is VALID [2022-02-20 16:51:12,777 INFO L290 TraceCheckUtils]: 25: Hoare triple {2559#false} assume !false; {2559#false} is VALID [2022-02-20 16:51:12,777 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:51:12,778 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:51:12,781 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:51:12,781 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [253719202] [2022-02-20 16:51:12,781 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [253719202] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:51:12,781 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:51:12,781 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 16:51:12,782 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [538233983] [2022-02-20 16:51:12,782 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:51:12,783 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-02-20 16:51:12,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:51:12,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:12,817 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:12,817 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 16:51:12,818 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:51:12,818 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 16:51:12,818 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 16:51:12,819 INFO L87 Difference]: Start difference. First operand 343 states and 473 transitions. Second operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:18,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:18,778 INFO L93 Difference]: Finished difference Result 684 states and 944 transitions. [2022-02-20 16:51:18,778 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 16:51:18,778 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-02-20 16:51:18,778 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:51:18,778 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:18,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 944 transitions. [2022-02-20 16:51:18,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:18,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 944 transitions. [2022-02-20 16:51:18,818 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 944 transitions. [2022-02-20 16:51:19,675 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 944 edges. 944 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:19,691 INFO L225 Difference]: With dead ends: 684 [2022-02-20 16:51:19,691 INFO L226 Difference]: Without dead ends: 347 [2022-02-20 16:51:19,692 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 16:51:19,694 INFO L933 BasicCegarLoop]: 469 mSDtfsCounter, 2 mSDsluCounter, 464 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 933 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:51:19,695 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 933 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 16:51:19,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 347 states. [2022-02-20 16:51:19,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 347 to 345. [2022-02-20 16:51:19,721 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:51:19,724 INFO L82 GeneralOperation]: Start isEquivalent. First operand 347 states. Second operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:19,727 INFO L74 IsIncluded]: Start isIncluded. First operand 347 states. Second operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:19,729 INFO L87 Difference]: Start difference. First operand 347 states. Second operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:19,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:19,743 INFO L93 Difference]: Finished difference Result 347 states and 477 transitions. [2022-02-20 16:51:19,743 INFO L276 IsEmpty]: Start isEmpty. Operand 347 states and 477 transitions. [2022-02-20 16:51:19,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:51:19,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:51:19,747 INFO L74 IsIncluded]: Start isIncluded. First operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 347 states. [2022-02-20 16:51:19,748 INFO L87 Difference]: Start difference. First operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 347 states. [2022-02-20 16:51:19,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:19,756 INFO L93 Difference]: Finished difference Result 347 states and 477 transitions. [2022-02-20 16:51:19,756 INFO L276 IsEmpty]: Start isEmpty. Operand 347 states and 477 transitions. [2022-02-20 16:51:19,758 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:51:19,758 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:51:19,758 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:51:19,758 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:51:19,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 345 states, 242 states have (on average 1.3388429752066116) internal successors, (324), 248 states have internal predecessors, (324), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:19,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 345 states to 345 states and 475 transitions. [2022-02-20 16:51:19,770 INFO L78 Accepts]: Start accepts. Automaton has 345 states and 475 transitions. Word has length 26 [2022-02-20 16:51:19,770 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:51:19,770 INFO L470 AbstractCegarLoop]: Abstraction has 345 states and 475 transitions. [2022-02-20 16:51:19,770 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 16:51:19,770 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 475 transitions. [2022-02-20 16:51:19,771 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 16:51:19,771 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:51:19,771 INFO L514 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] [2022-02-20 16:51:19,784 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Ended with exit code 0 [2022-02-20 16:51:19,986 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:51:19,988 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:51:19,994 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:51:19,994 INFO L85 PathProgramCache]: Analyzing trace with hash -989012734, now seen corresponding path program 1 times [2022-02-20 16:51:19,996 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:51:19,997 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1056815326] [2022-02-20 16:51:19,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:51:19,997 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:51:19,997 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:51:19,998 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:51:20,007 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2022-02-20 16:51:20,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:20,409 INFO L263 TraceCheckSpWp]: Trace formula consists of 582 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 16:51:20,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:20,434 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:51:20,524 INFO L290 TraceCheckUtils]: 0: Hoare triple {4747#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(18bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);call #Ultimate.allocInit(44bv32, 4bv32);call #Ultimate.allocInit(31bv32, 5bv32);call #Ultimate.allocInit(4bv32, 6bv32);call write~init~intINTTYPE1(71bv8, 6bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(80bv8, 6bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(76bv8, 6bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 6bv32, 3bv32, 1bv32);call #Ultimate.allocInit(75bv32, 7bv32);call #Ultimate.allocInit(18bv32, 8bv32);call #Ultimate.allocInit(73bv32, 9bv32);call #Ultimate.allocInit(44bv32, 10bv32);call #Ultimate.allocInit(43bv32, 11bv32);call #Ultimate.allocInit(39bv32, 12bv32);call #Ultimate.allocInit(69bv32, 13bv32);call #Ultimate.allocInit(9bv32, 14bv32);call #Ultimate.allocInit(6bv32, 15bv32);call write~init~intINTTYPE1(82bv8, 15bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(83bv8, 15bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 3bv32, 1bv32);call write~init~intINTTYPE1(84bv8, 15bv32, 4bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 15bv32, 5bv32, 1bv32);call #Ultimate.allocInit(4bv32, 16bv32);call write~init~intINTTYPE1(83bv8, 16bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 16bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 16bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 16bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 17bv32);call write~init~intINTTYPE1(78bv8, 17bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 17bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 17bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 17bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 18bv32);call write~init~intINTTYPE1(83bv8, 18bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(67bv8, 18bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 18bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 18bv32, 3bv32, 1bv32);call #Ultimate.allocInit(40bv32, 19bv32);call #Ultimate.allocInit(58bv32, 20bv32);call #Ultimate.allocInit(31bv32, 21bv32);call #Ultimate.allocInit(36bv32, 22bv32);call #Ultimate.allocInit(14bv32, 23bv32);call #Ultimate.allocInit(35bv32, 24bv32);call #Ultimate.allocInit(44bv32, 25bv32);call #Ultimate.allocInit(22bv32, 26bv32);~current_execution_context~0 := 0bv32;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0bv32, 0bv32;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0bv32, 0bv32;~jiffies~0 := 0bv32;~_ddv_module_author~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_description~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_license~0 := ~_ddv_module_license~0[0bv32 := 71bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[1bv32 := 80bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[2bv32 := 76bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[3bv32 := 0bv8];~nowayout~0 := 0bv32;~_ddv_module_param_nowayout~0 := ~const~array~~LB~bv32~RB~bv8();~#zf_info~0.base, ~#zf_info~0.offset := 27bv32, 0bv32;call #Ultimate.allocInit(40bv32, 27bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~intINTTYPE4(33024bv32, ~#zf_info~0.base, ~#zf_info~0.offset, 4bv32);call write~unchecked~intINTTYPE4(1bv32, ~#zf_info~0.base, ~bvadd32(4bv32, ~#zf_info~0.offset), 4bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(8bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(9bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(10bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(11bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(12bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(13bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(14bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(15bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(16bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(17bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(18bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(19bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(20bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(21bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(22bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(23bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(24bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(25bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(26bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(27bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(28bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(29bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(30bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(31bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(32bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(33bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(34bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(35bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(36bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(37bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(38bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(39bv32, ~#zf_info~0.offset), 1bv32);~action~0 := 0bv32;~_ddv_module_param_action~0 := ~const~array~~LB~bv32~RB~bv8();~zf_action~0 := 2048bv32;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28bv32, 0bv32;call #Ultimate.allocInit(4bv32, 28bv32);call write~init~intINTTYPE4(0bv32, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4bv32);~zf_expect_close~0 := 0bv8;~#zf_lock~0.base, ~#zf_lock~0.offset := 29bv32, 0bv32;call #Ultimate.allocInit(8bv32, 29bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~bvadd32(4bv32, ~#zf_lock~0.offset), 4bv32);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30bv32, 0bv32;call #Ultimate.allocInit(8bv32, 30bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~bvadd32(4bv32, ~#zf_port_lock~0.offset), 4bv32);~#zf_timer~0.base, ~#zf_timer~0.offset := 31bv32, 0bv32;call #Ultimate.allocInit(16bv32, 31bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_timer~0.base, ~bvadd32(4bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~bvadd32(8bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(12bv32, ~#zf_timer~0.offset), 2bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(14bv32, ~#zf_timer~0.offset), 2bv32);~next_heartbeat~0 := 0bv32;~#zf_fops~0.base, ~#zf_fops~0.offset := 32bv32, 0bv32;call #Ultimate.allocInit(100bv32, 32bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0bv32, 0bv32, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4bv32);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, ~bvadd32(4bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, ~bvadd32(12bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, ~bvadd32(24bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, ~bvadd32(40bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, ~bvadd32(48bv32, ~#zf_fops~0.offset), 4bv32);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33bv32, 0bv32;call #Ultimate.allocInit(12bv32, 33bv32);call write~init~intINTTYPE4(130bv32, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4bv32);call write~init~$Pointer$(14bv32, 0bv32, ~#zf_miscdev~0.base, ~bvadd32(4bv32, ~#zf_miscdev~0.offset), 4bv32);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, ~bvadd32(8bv32, ~#zf_miscdev~0.offset), 4bv32);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34bv32, 0bv32;call #Ultimate.allocInit(12bv32, 34bv32);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_notifier~0.base, ~bvadd32(4bv32, ~#zf_notifier~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_notifier~0.base, ~bvadd32(8bv32, ~#zf_notifier~0.offset), 4bv32);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35bv32, 0bv32;call #Ultimate.allocInit(16bv32, 35bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~bvadd32(4bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(8bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(12bv32, ~#fixed_cdev~0.offset), 4bv32);~fixed_cdev_used~0 := 0bv32;~number_cdev_registered~0 := 0bv16;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36bv32, 0bv32;call #Ultimate.allocInit(64bv32, 36bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0bv16;~number_fixed_genhd_used~0 := 0bv16;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37bv32, 0bv32;call #Ultimate.allocInit(1280bv32, 37bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38bv32, 0bv32;call #Ultimate.allocInit(1460bv32, 38bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39bv32, 0bv32;call #Ultimate.allocInit(236bv32, 39bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40bv32, 0bv32;call #Ultimate.allocInit(128bv32, 40bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0bv16;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41bv32, 0bv32;call #Ultimate.allocInit(6bv32, 41bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4bv32);call write~init~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~#tasklet_registered~0.offset), 2bv32);~number_timer_registered~0 := 0bv16;~#timer_registered~0.base, ~#timer_registered~0.offset := 42bv32, 0bv32;call #Ultimate.allocInit(4bv32, 42bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4bv32);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43bv32, 0bv32;call #Ultimate.allocInit(40bv32, 43bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44bv32, 0bv32;call #Ultimate.allocInit(8bv32, 44bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~bvadd32(4bv32, ~#kernel_lock~0.offset), 4bv32);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45bv32, 0bv32;call #Ultimate.allocInit(460bv32, 45bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0bv32;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0bv32, 0bv32;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46bv32, 0bv32;call #Ultimate.allocInit(200bv32, 46bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0bv32;~ddv_ioport_request_len~0 := 0bv32; {4747#true} is VALID [2022-02-20 16:51:20,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {4747#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1bv32;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {4747#true} is VALID [2022-02-20 16:51:20,525 INFO L272 TraceCheckUtils]: 2: Hoare triple {4747#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {4747#true} is VALID [2022-02-20 16:51:20,525 INFO L290 TraceCheckUtils]: 3: Hoare triple {4747#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~intINTTYPE4(1bv32, ~lock.base, ~lock.offset, 4bv32);call write~intINTTYPE4(0bv32, ~lock.base, ~bvadd32(4bv32, ~lock.offset), 4bv32); {4747#true} is VALID [2022-02-20 16:51:20,525 INFO L290 TraceCheckUtils]: 4: Hoare triple {4747#true} assume true; {4747#true} is VALID [2022-02-20 16:51:20,525 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4747#true} {4747#true} #854#return; {4747#true} is VALID [2022-02-20 16:51:20,525 INFO L290 TraceCheckUtils]: 6: Hoare triple {4747#true} init_kernel_~i~1#1 := 0bv32; {4770#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} is VALID [2022-02-20 16:51:20,526 INFO L290 TraceCheckUtils]: 7: Hoare triple {4770#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {4770#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} is VALID [2022-02-20 16:51:20,526 INFO L290 TraceCheckUtils]: 8: Hoare triple {4770#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {4777#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32))} is VALID [2022-02-20 16:51:20,527 INFO L290 TraceCheckUtils]: 9: Hoare triple {4777#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32))} assume !~bvslt32(init_kernel_~i~1#1, 10bv32); {4748#false} is VALID [2022-02-20 16:51:20,527 INFO L290 TraceCheckUtils]: 10: Hoare triple {4748#false} init_kernel_~i~1#1 := 0bv32; {4748#false} is VALID [2022-02-20 16:51:20,527 INFO L290 TraceCheckUtils]: 11: Hoare triple {4748#false} assume !!~bvslt32(init_kernel_~i~1#1, 1bv32);call write~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1)), 4bv32);call write~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1))), 2bv32); {4748#false} is VALID [2022-02-20 16:51:20,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {4748#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post299#1);havoc init_kernel_#t~post299#1; {4748#false} is VALID [2022-02-20 16:51:20,527 INFO L290 TraceCheckUtils]: 13: Hoare triple {4748#false} assume !~bvslt32(init_kernel_~i~1#1, 1bv32); {4748#false} is VALID [2022-02-20 16:51:20,527 INFO L290 TraceCheckUtils]: 14: Hoare triple {4748#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~C_INT } true;##fun~~TO~C_INT_#in~#fp#1.base, ##fun~~TO~C_INT_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~C_INT_#res#1;havoc ##fun~~TO~C_INT_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {4748#false} is VALID [2022-02-20 16:51:20,527 INFO L272 TraceCheckUtils]: 15: Hoare triple {4748#false} call zf_init_#t~ret218#1 := printk(20bv32, 0bv32); {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {4748#false} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0bv32; {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {4748#false} assume true; {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4748#false} {4748#false} #856#return; {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {4748#false} havoc zf_init_#t~ret218#1; {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L272 TraceCheckUtils]: 20: Hoare triple {4748#false} call zf_init_#t~ret219#1 := zf_readw(2bv8); {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L290 TraceCheckUtils]: 21: Hoare triple {4748#false} ~port#1 := #in~port#1; {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L272 TraceCheckUtils]: 22: Hoare triple {4748#false} call outb(~port#1, 536bv32); {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L290 TraceCheckUtils]: 23: Hoare triple {4748#false} ~byte := #in~byte;~port := #in~port; {4748#false} is VALID [2022-02-20 16:51:20,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {4748#false} assume true; {4748#false} is VALID [2022-02-20 16:51:20,529 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {4748#false} {4748#false} #790#return; {4748#false} is VALID [2022-02-20 16:51:20,529 INFO L290 TraceCheckUtils]: 26: Hoare triple {4748#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538bv32;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {4748#false} is VALID [2022-02-20 16:51:20,529 INFO L290 TraceCheckUtils]: 27: Hoare triple {4748#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if ~bvuge32(inw_~port#1, ~ddv_ioport_request_start~0) && ~bvult32(inw_~port#1, ~bvadd32(~ddv_ioport_request_start~0, ~ddv_ioport_request_len~0)) then 1bv32 else 0bv32), 26bv32, 0bv32;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {4748#false} is VALID [2022-02-20 16:51:20,529 INFO L290 TraceCheckUtils]: 28: Hoare triple {4748#false} assume 0bv32 == __VERIFIER_assert_~expression#1; {4748#false} is VALID [2022-02-20 16:51:20,529 INFO L290 TraceCheckUtils]: 29: Hoare triple {4748#false} assume !false; {4748#false} is VALID [2022-02-20 16:51:20,529 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:51:20,530 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 16:51:20,648 INFO L290 TraceCheckUtils]: 29: Hoare triple {4748#false} assume !false; {4748#false} is VALID [2022-02-20 16:51:20,648 INFO L290 TraceCheckUtils]: 28: Hoare triple {4748#false} assume 0bv32 == __VERIFIER_assert_~expression#1; {4748#false} is VALID [2022-02-20 16:51:20,648 INFO L290 TraceCheckUtils]: 27: Hoare triple {4748#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if ~bvuge32(inw_~port#1, ~ddv_ioport_request_start~0) && ~bvult32(inw_~port#1, ~bvadd32(~ddv_ioport_request_start~0, ~ddv_ioport_request_len~0)) then 1bv32 else 0bv32), 26bv32, 0bv32;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {4748#false} is VALID [2022-02-20 16:51:20,648 INFO L290 TraceCheckUtils]: 26: Hoare triple {4748#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538bv32;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {4748#false} is VALID [2022-02-20 16:51:20,648 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {4747#true} {4748#false} #790#return; {4748#false} is VALID [2022-02-20 16:51:20,648 INFO L290 TraceCheckUtils]: 24: Hoare triple {4747#true} assume true; {4747#true} is VALID [2022-02-20 16:51:20,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {4747#true} ~byte := #in~byte;~port := #in~port; {4747#true} is VALID [2022-02-20 16:51:20,649 INFO L272 TraceCheckUtils]: 22: Hoare triple {4748#false} call outb(~port#1, 536bv32); {4747#true} is VALID [2022-02-20 16:51:20,649 INFO L290 TraceCheckUtils]: 21: Hoare triple {4748#false} ~port#1 := #in~port#1; {4748#false} is VALID [2022-02-20 16:51:20,649 INFO L272 TraceCheckUtils]: 20: Hoare triple {4748#false} call zf_init_#t~ret219#1 := zf_readw(2bv8); {4748#false} is VALID [2022-02-20 16:51:20,649 INFO L290 TraceCheckUtils]: 19: Hoare triple {4748#false} havoc zf_init_#t~ret218#1; {4748#false} is VALID [2022-02-20 16:51:20,649 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4747#true} {4748#false} #856#return; {4748#false} is VALID [2022-02-20 16:51:20,649 INFO L290 TraceCheckUtils]: 17: Hoare triple {4747#true} assume true; {4747#true} is VALID [2022-02-20 16:51:20,649 INFO L290 TraceCheckUtils]: 16: Hoare triple {4747#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0bv32; {4747#true} is VALID [2022-02-20 16:51:20,650 INFO L272 TraceCheckUtils]: 15: Hoare triple {4748#false} call zf_init_#t~ret218#1 := printk(20bv32, 0bv32); {4747#true} is VALID [2022-02-20 16:51:20,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {4748#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~C_INT } true;##fun~~TO~C_INT_#in~#fp#1.base, ##fun~~TO~C_INT_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~C_INT_#res#1;havoc ##fun~~TO~C_INT_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {4748#false} is VALID [2022-02-20 16:51:20,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {4748#false} assume !~bvslt32(init_kernel_~i~1#1, 1bv32); {4748#false} is VALID [2022-02-20 16:51:20,650 INFO L290 TraceCheckUtils]: 12: Hoare triple {4748#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post299#1);havoc init_kernel_#t~post299#1; {4748#false} is VALID [2022-02-20 16:51:20,650 INFO L290 TraceCheckUtils]: 11: Hoare triple {4748#false} assume !!~bvslt32(init_kernel_~i~1#1, 1bv32);call write~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1)), 4bv32);call write~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1))), 2bv32); {4748#false} is VALID [2022-02-20 16:51:20,650 INFO L290 TraceCheckUtils]: 10: Hoare triple {4748#false} init_kernel_~i~1#1 := 0bv32; {4748#false} is VALID [2022-02-20 16:51:20,652 INFO L290 TraceCheckUtils]: 9: Hoare triple {4901#(bvslt |ULTIMATE.start_init_kernel_~i~1#1| (_ bv10 32))} assume !~bvslt32(init_kernel_~i~1#1, 10bv32); {4748#false} is VALID [2022-02-20 16:51:20,656 INFO L290 TraceCheckUtils]: 8: Hoare triple {4905#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {4901#(bvslt |ULTIMATE.start_init_kernel_~i~1#1| (_ bv10 32))} is VALID [2022-02-20 16:51:20,656 INFO L290 TraceCheckUtils]: 7: Hoare triple {4905#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {4905#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} is VALID [2022-02-20 16:51:20,657 INFO L290 TraceCheckUtils]: 6: Hoare triple {4747#true} init_kernel_~i~1#1 := 0bv32; {4905#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} is VALID [2022-02-20 16:51:20,657 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4747#true} {4747#true} #854#return; {4747#true} is VALID [2022-02-20 16:51:20,657 INFO L290 TraceCheckUtils]: 4: Hoare triple {4747#true} assume true; {4747#true} is VALID [2022-02-20 16:51:20,657 INFO L290 TraceCheckUtils]: 3: Hoare triple {4747#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~intINTTYPE4(1bv32, ~lock.base, ~lock.offset, 4bv32);call write~intINTTYPE4(0bv32, ~lock.base, ~bvadd32(4bv32, ~lock.offset), 4bv32); {4747#true} is VALID [2022-02-20 16:51:20,657 INFO L272 TraceCheckUtils]: 2: Hoare triple {4747#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {4747#true} is VALID [2022-02-20 16:51:20,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {4747#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1bv32;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {4747#true} is VALID [2022-02-20 16:51:20,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {4747#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(18bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);call #Ultimate.allocInit(44bv32, 4bv32);call #Ultimate.allocInit(31bv32, 5bv32);call #Ultimate.allocInit(4bv32, 6bv32);call write~init~intINTTYPE1(71bv8, 6bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(80bv8, 6bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(76bv8, 6bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 6bv32, 3bv32, 1bv32);call #Ultimate.allocInit(75bv32, 7bv32);call #Ultimate.allocInit(18bv32, 8bv32);call #Ultimate.allocInit(73bv32, 9bv32);call #Ultimate.allocInit(44bv32, 10bv32);call #Ultimate.allocInit(43bv32, 11bv32);call #Ultimate.allocInit(39bv32, 12bv32);call #Ultimate.allocInit(69bv32, 13bv32);call #Ultimate.allocInit(9bv32, 14bv32);call #Ultimate.allocInit(6bv32, 15bv32);call write~init~intINTTYPE1(82bv8, 15bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(83bv8, 15bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 3bv32, 1bv32);call write~init~intINTTYPE1(84bv8, 15bv32, 4bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 15bv32, 5bv32, 1bv32);call #Ultimate.allocInit(4bv32, 16bv32);call write~init~intINTTYPE1(83bv8, 16bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 16bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 16bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 16bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 17bv32);call write~init~intINTTYPE1(78bv8, 17bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 17bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 17bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 17bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 18bv32);call write~init~intINTTYPE1(83bv8, 18bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(67bv8, 18bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 18bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 18bv32, 3bv32, 1bv32);call #Ultimate.allocInit(40bv32, 19bv32);call #Ultimate.allocInit(58bv32, 20bv32);call #Ultimate.allocInit(31bv32, 21bv32);call #Ultimate.allocInit(36bv32, 22bv32);call #Ultimate.allocInit(14bv32, 23bv32);call #Ultimate.allocInit(35bv32, 24bv32);call #Ultimate.allocInit(44bv32, 25bv32);call #Ultimate.allocInit(22bv32, 26bv32);~current_execution_context~0 := 0bv32;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0bv32, 0bv32;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0bv32, 0bv32;~jiffies~0 := 0bv32;~_ddv_module_author~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_description~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_license~0 := ~_ddv_module_license~0[0bv32 := 71bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[1bv32 := 80bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[2bv32 := 76bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[3bv32 := 0bv8];~nowayout~0 := 0bv32;~_ddv_module_param_nowayout~0 := ~const~array~~LB~bv32~RB~bv8();~#zf_info~0.base, ~#zf_info~0.offset := 27bv32, 0bv32;call #Ultimate.allocInit(40bv32, 27bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~intINTTYPE4(33024bv32, ~#zf_info~0.base, ~#zf_info~0.offset, 4bv32);call write~unchecked~intINTTYPE4(1bv32, ~#zf_info~0.base, ~bvadd32(4bv32, ~#zf_info~0.offset), 4bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(8bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(9bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(10bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(11bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(12bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(13bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(14bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(15bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(16bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(17bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(18bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(19bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(20bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(21bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(22bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(23bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(24bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(25bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(26bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(27bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(28bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(29bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(30bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(31bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(32bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(33bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(34bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(35bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(36bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(37bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(38bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(39bv32, ~#zf_info~0.offset), 1bv32);~action~0 := 0bv32;~_ddv_module_param_action~0 := ~const~array~~LB~bv32~RB~bv8();~zf_action~0 := 2048bv32;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28bv32, 0bv32;call #Ultimate.allocInit(4bv32, 28bv32);call write~init~intINTTYPE4(0bv32, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4bv32);~zf_expect_close~0 := 0bv8;~#zf_lock~0.base, ~#zf_lock~0.offset := 29bv32, 0bv32;call #Ultimate.allocInit(8bv32, 29bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~bvadd32(4bv32, ~#zf_lock~0.offset), 4bv32);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30bv32, 0bv32;call #Ultimate.allocInit(8bv32, 30bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~bvadd32(4bv32, ~#zf_port_lock~0.offset), 4bv32);~#zf_timer~0.base, ~#zf_timer~0.offset := 31bv32, 0bv32;call #Ultimate.allocInit(16bv32, 31bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_timer~0.base, ~bvadd32(4bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~bvadd32(8bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(12bv32, ~#zf_timer~0.offset), 2bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(14bv32, ~#zf_timer~0.offset), 2bv32);~next_heartbeat~0 := 0bv32;~#zf_fops~0.base, ~#zf_fops~0.offset := 32bv32, 0bv32;call #Ultimate.allocInit(100bv32, 32bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0bv32, 0bv32, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4bv32);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, ~bvadd32(4bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, ~bvadd32(12bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, ~bvadd32(24bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, ~bvadd32(40bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, ~bvadd32(48bv32, ~#zf_fops~0.offset), 4bv32);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33bv32, 0bv32;call #Ultimate.allocInit(12bv32, 33bv32);call write~init~intINTTYPE4(130bv32, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4bv32);call write~init~$Pointer$(14bv32, 0bv32, ~#zf_miscdev~0.base, ~bvadd32(4bv32, ~#zf_miscdev~0.offset), 4bv32);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, ~bvadd32(8bv32, ~#zf_miscdev~0.offset), 4bv32);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34bv32, 0bv32;call #Ultimate.allocInit(12bv32, 34bv32);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_notifier~0.base, ~bvadd32(4bv32, ~#zf_notifier~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_notifier~0.base, ~bvadd32(8bv32, ~#zf_notifier~0.offset), 4bv32);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35bv32, 0bv32;call #Ultimate.allocInit(16bv32, 35bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~bvadd32(4bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(8bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(12bv32, ~#fixed_cdev~0.offset), 4bv32);~fixed_cdev_used~0 := 0bv32;~number_cdev_registered~0 := 0bv16;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36bv32, 0bv32;call #Ultimate.allocInit(64bv32, 36bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0bv16;~number_fixed_genhd_used~0 := 0bv16;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37bv32, 0bv32;call #Ultimate.allocInit(1280bv32, 37bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38bv32, 0bv32;call #Ultimate.allocInit(1460bv32, 38bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39bv32, 0bv32;call #Ultimate.allocInit(236bv32, 39bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40bv32, 0bv32;call #Ultimate.allocInit(128bv32, 40bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0bv16;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41bv32, 0bv32;call #Ultimate.allocInit(6bv32, 41bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4bv32);call write~init~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~#tasklet_registered~0.offset), 2bv32);~number_timer_registered~0 := 0bv16;~#timer_registered~0.base, ~#timer_registered~0.offset := 42bv32, 0bv32;call #Ultimate.allocInit(4bv32, 42bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4bv32);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43bv32, 0bv32;call #Ultimate.allocInit(40bv32, 43bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44bv32, 0bv32;call #Ultimate.allocInit(8bv32, 44bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~bvadd32(4bv32, ~#kernel_lock~0.offset), 4bv32);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45bv32, 0bv32;call #Ultimate.allocInit(460bv32, 45bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0bv32;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0bv32, 0bv32;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46bv32, 0bv32;call #Ultimate.allocInit(200bv32, 46bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0bv32;~ddv_ioport_request_len~0 := 0bv32; {4747#true} is VALID [2022-02-20 16:51:20,658 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:51:20,658 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:51:20,659 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1056815326] [2022-02-20 16:51:20,659 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1056815326] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 16:51:20,659 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 16:51:20,659 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2022-02-20 16:51:20,659 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1125549100] [2022-02-20 16:51:20,659 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 16:51:20,659 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 30 [2022-02-20 16:51:20,660 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:51:20,660 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:51:20,719 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:20,719 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 16:51:20,719 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:51:20,719 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 16:51:20,719 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2022-02-20 16:51:20,720 INFO L87 Difference]: Start difference. First operand 345 states and 475 transitions. Second operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:51:33,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:33,134 INFO L93 Difference]: Finished difference Result 689 states and 950 transitions. [2022-02-20 16:51:33,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 16:51:33,134 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 30 [2022-02-20 16:51:33,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:51:33,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:51:33,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 949 transitions. [2022-02-20 16:51:33,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:51:33,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 949 transitions. [2022-02-20 16:51:33,154 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 949 transitions. [2022-02-20 16:51:34,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 949 edges. 949 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:34,062 INFO L225 Difference]: With dead ends: 689 [2022-02-20 16:51:34,062 INFO L226 Difference]: Without dead ends: 351 [2022-02-20 16:51:34,063 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2022-02-20 16:51:34,065 INFO L933 BasicCegarLoop]: 468 mSDtfsCounter, 501 mSDsluCounter, 977 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 67 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 530 SdHoareTripleChecker+Valid, 1445 SdHoareTripleChecker+Invalid, 122 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 67 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 16:51:34,066 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [530 Valid, 1445 Invalid, 122 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [67 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 16:51:34,067 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 351 states. [2022-02-20 16:51:34,098 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 351 to 351. [2022-02-20 16:51:34,098 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:51:34,099 INFO L82 GeneralOperation]: Start isEquivalent. First operand 351 states. Second operand has 351 states, 248 states have (on average 1.3266129032258065) internal successors, (329), 254 states have internal predecessors, (329), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:34,100 INFO L74 IsIncluded]: Start isIncluded. First operand 351 states. Second operand has 351 states, 248 states have (on average 1.3266129032258065) internal successors, (329), 254 states have internal predecessors, (329), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:34,100 INFO L87 Difference]: Start difference. First operand 351 states. Second operand has 351 states, 248 states have (on average 1.3266129032258065) internal successors, (329), 254 states have internal predecessors, (329), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:34,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:34,109 INFO L93 Difference]: Finished difference Result 351 states and 480 transitions. [2022-02-20 16:51:34,109 INFO L276 IsEmpty]: Start isEmpty. Operand 351 states and 480 transitions. [2022-02-20 16:51:34,109 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:51:34,110 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:51:34,110 INFO L74 IsIncluded]: Start isIncluded. First operand has 351 states, 248 states have (on average 1.3266129032258065) internal successors, (329), 254 states have internal predecessors, (329), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 351 states. [2022-02-20 16:51:34,111 INFO L87 Difference]: Start difference. First operand has 351 states, 248 states have (on average 1.3266129032258065) internal successors, (329), 254 states have internal predecessors, (329), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) Second operand 351 states. [2022-02-20 16:51:34,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:51:34,118 INFO L93 Difference]: Finished difference Result 351 states and 480 transitions. [2022-02-20 16:51:34,118 INFO L276 IsEmpty]: Start isEmpty. Operand 351 states and 480 transitions. [2022-02-20 16:51:34,119 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:51:34,119 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:51:34,119 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:51:34,119 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:51:34,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 351 states, 248 states have (on average 1.3266129032258065) internal successors, (329), 254 states have internal predecessors, (329), 76 states have call successors, (76), 26 states have call predecessors, (76), 26 states have return successors, (75), 75 states have call predecessors, (75), 75 states have call successors, (75) [2022-02-20 16:51:34,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 351 states to 351 states and 480 transitions. [2022-02-20 16:51:34,131 INFO L78 Accepts]: Start accepts. Automaton has 351 states and 480 transitions. Word has length 30 [2022-02-20 16:51:34,131 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:51:34,131 INFO L470 AbstractCegarLoop]: Abstraction has 351 states and 480 transitions. [2022-02-20 16:51:34,131 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 6 states have internal predecessors, (31), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:51:34,131 INFO L276 IsEmpty]: Start isEmpty. Operand 351 states and 480 transitions. [2022-02-20 16:51:34,132 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 16:51:34,132 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:51:34,132 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 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] [2022-02-20 16:51:34,144 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Ended with exit code 0 [2022-02-20 16:51:34,344 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:51:34,345 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION === [zf_readwErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:51:34,345 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:51:34,346 INFO L85 PathProgramCache]: Analyzing trace with hash -1710088836, now seen corresponding path program 2 times [2022-02-20 16:51:34,347 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:51:34,347 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1186349034] [2022-02-20 16:51:34,347 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 16:51:34,347 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:51:34,347 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:51:34,348 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:51:34,350 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2022-02-20 16:51:34,774 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 16:51:34,774 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 16:51:34,793 INFO L263 TraceCheckSpWp]: Trace formula consists of 615 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 16:51:34,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:51:34,815 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:51:34,975 INFO L290 TraceCheckUtils]: 0: Hoare triple {7066#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(18bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);call #Ultimate.allocInit(44bv32, 4bv32);call #Ultimate.allocInit(31bv32, 5bv32);call #Ultimate.allocInit(4bv32, 6bv32);call write~init~intINTTYPE1(71bv8, 6bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(80bv8, 6bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(76bv8, 6bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 6bv32, 3bv32, 1bv32);call #Ultimate.allocInit(75bv32, 7bv32);call #Ultimate.allocInit(18bv32, 8bv32);call #Ultimate.allocInit(73bv32, 9bv32);call #Ultimate.allocInit(44bv32, 10bv32);call #Ultimate.allocInit(43bv32, 11bv32);call #Ultimate.allocInit(39bv32, 12bv32);call #Ultimate.allocInit(69bv32, 13bv32);call #Ultimate.allocInit(9bv32, 14bv32);call #Ultimate.allocInit(6bv32, 15bv32);call write~init~intINTTYPE1(82bv8, 15bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(83bv8, 15bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 3bv32, 1bv32);call write~init~intINTTYPE1(84bv8, 15bv32, 4bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 15bv32, 5bv32, 1bv32);call #Ultimate.allocInit(4bv32, 16bv32);call write~init~intINTTYPE1(83bv8, 16bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 16bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 16bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 16bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 17bv32);call write~init~intINTTYPE1(78bv8, 17bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 17bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 17bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 17bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 18bv32);call write~init~intINTTYPE1(83bv8, 18bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(67bv8, 18bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 18bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 18bv32, 3bv32, 1bv32);call #Ultimate.allocInit(40bv32, 19bv32);call #Ultimate.allocInit(58bv32, 20bv32);call #Ultimate.allocInit(31bv32, 21bv32);call #Ultimate.allocInit(36bv32, 22bv32);call #Ultimate.allocInit(14bv32, 23bv32);call #Ultimate.allocInit(35bv32, 24bv32);call #Ultimate.allocInit(44bv32, 25bv32);call #Ultimate.allocInit(22bv32, 26bv32);~current_execution_context~0 := 0bv32;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0bv32, 0bv32;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0bv32, 0bv32;~jiffies~0 := 0bv32;~_ddv_module_author~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_description~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_license~0 := ~_ddv_module_license~0[0bv32 := 71bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[1bv32 := 80bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[2bv32 := 76bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[3bv32 := 0bv8];~nowayout~0 := 0bv32;~_ddv_module_param_nowayout~0 := ~const~array~~LB~bv32~RB~bv8();~#zf_info~0.base, ~#zf_info~0.offset := 27bv32, 0bv32;call #Ultimate.allocInit(40bv32, 27bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~intINTTYPE4(33024bv32, ~#zf_info~0.base, ~#zf_info~0.offset, 4bv32);call write~unchecked~intINTTYPE4(1bv32, ~#zf_info~0.base, ~bvadd32(4bv32, ~#zf_info~0.offset), 4bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(8bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(9bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(10bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(11bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(12bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(13bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(14bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(15bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(16bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(17bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(18bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(19bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(20bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(21bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(22bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(23bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(24bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(25bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(26bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(27bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(28bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(29bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(30bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(31bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(32bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(33bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(34bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(35bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(36bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(37bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(38bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(39bv32, ~#zf_info~0.offset), 1bv32);~action~0 := 0bv32;~_ddv_module_param_action~0 := ~const~array~~LB~bv32~RB~bv8();~zf_action~0 := 2048bv32;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28bv32, 0bv32;call #Ultimate.allocInit(4bv32, 28bv32);call write~init~intINTTYPE4(0bv32, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4bv32);~zf_expect_close~0 := 0bv8;~#zf_lock~0.base, ~#zf_lock~0.offset := 29bv32, 0bv32;call #Ultimate.allocInit(8bv32, 29bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~bvadd32(4bv32, ~#zf_lock~0.offset), 4bv32);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30bv32, 0bv32;call #Ultimate.allocInit(8bv32, 30bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~bvadd32(4bv32, ~#zf_port_lock~0.offset), 4bv32);~#zf_timer~0.base, ~#zf_timer~0.offset := 31bv32, 0bv32;call #Ultimate.allocInit(16bv32, 31bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_timer~0.base, ~bvadd32(4bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~bvadd32(8bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(12bv32, ~#zf_timer~0.offset), 2bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(14bv32, ~#zf_timer~0.offset), 2bv32);~next_heartbeat~0 := 0bv32;~#zf_fops~0.base, ~#zf_fops~0.offset := 32bv32, 0bv32;call #Ultimate.allocInit(100bv32, 32bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0bv32, 0bv32, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4bv32);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, ~bvadd32(4bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, ~bvadd32(12bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, ~bvadd32(24bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, ~bvadd32(40bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, ~bvadd32(48bv32, ~#zf_fops~0.offset), 4bv32);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33bv32, 0bv32;call #Ultimate.allocInit(12bv32, 33bv32);call write~init~intINTTYPE4(130bv32, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4bv32);call write~init~$Pointer$(14bv32, 0bv32, ~#zf_miscdev~0.base, ~bvadd32(4bv32, ~#zf_miscdev~0.offset), 4bv32);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, ~bvadd32(8bv32, ~#zf_miscdev~0.offset), 4bv32);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34bv32, 0bv32;call #Ultimate.allocInit(12bv32, 34bv32);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_notifier~0.base, ~bvadd32(4bv32, ~#zf_notifier~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_notifier~0.base, ~bvadd32(8bv32, ~#zf_notifier~0.offset), 4bv32);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35bv32, 0bv32;call #Ultimate.allocInit(16bv32, 35bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~bvadd32(4bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(8bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(12bv32, ~#fixed_cdev~0.offset), 4bv32);~fixed_cdev_used~0 := 0bv32;~number_cdev_registered~0 := 0bv16;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36bv32, 0bv32;call #Ultimate.allocInit(64bv32, 36bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0bv16;~number_fixed_genhd_used~0 := 0bv16;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37bv32, 0bv32;call #Ultimate.allocInit(1280bv32, 37bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38bv32, 0bv32;call #Ultimate.allocInit(1460bv32, 38bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39bv32, 0bv32;call #Ultimate.allocInit(236bv32, 39bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40bv32, 0bv32;call #Ultimate.allocInit(128bv32, 40bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0bv16;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41bv32, 0bv32;call #Ultimate.allocInit(6bv32, 41bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4bv32);call write~init~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~#tasklet_registered~0.offset), 2bv32);~number_timer_registered~0 := 0bv16;~#timer_registered~0.base, ~#timer_registered~0.offset := 42bv32, 0bv32;call #Ultimate.allocInit(4bv32, 42bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4bv32);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43bv32, 0bv32;call #Ultimate.allocInit(40bv32, 43bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44bv32, 0bv32;call #Ultimate.allocInit(8bv32, 44bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~bvadd32(4bv32, ~#kernel_lock~0.offset), 4bv32);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45bv32, 0bv32;call #Ultimate.allocInit(460bv32, 45bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0bv32;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0bv32, 0bv32;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46bv32, 0bv32;call #Ultimate.allocInit(200bv32, 46bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0bv32;~ddv_ioport_request_len~0 := 0bv32; {7066#true} is VALID [2022-02-20 16:51:34,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {7066#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1bv32;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {7066#true} is VALID [2022-02-20 16:51:34,977 INFO L272 TraceCheckUtils]: 2: Hoare triple {7066#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {7066#true} is VALID [2022-02-20 16:51:34,987 INFO L290 TraceCheckUtils]: 3: Hoare triple {7066#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~intINTTYPE4(1bv32, ~lock.base, ~lock.offset, 4bv32);call write~intINTTYPE4(0bv32, ~lock.base, ~bvadd32(4bv32, ~lock.offset), 4bv32); {7066#true} is VALID [2022-02-20 16:51:34,987 INFO L290 TraceCheckUtils]: 4: Hoare triple {7066#true} assume true; {7066#true} is VALID [2022-02-20 16:51:34,988 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {7066#true} {7066#true} #854#return; {7066#true} is VALID [2022-02-20 16:51:34,991 INFO L290 TraceCheckUtils]: 6: Hoare triple {7066#true} init_kernel_~i~1#1 := 0bv32; {7089#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} is VALID [2022-02-20 16:51:34,991 INFO L290 TraceCheckUtils]: 7: Hoare triple {7089#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7089#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} is VALID [2022-02-20 16:51:34,992 INFO L290 TraceCheckUtils]: 8: Hoare triple {7089#(= |ULTIMATE.start_init_kernel_~i~1#1| (_ bv0 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7096#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv0 32))} is VALID [2022-02-20 16:51:34,992 INFO L290 TraceCheckUtils]: 9: Hoare triple {7096#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv0 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7096#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv0 32))} is VALID [2022-02-20 16:51:34,994 INFO L290 TraceCheckUtils]: 10: Hoare triple {7096#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv0 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7103#(= (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|)} is VALID [2022-02-20 16:51:34,994 INFO L290 TraceCheckUtils]: 11: Hoare triple {7103#(= (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|)} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7103#(= (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|)} is VALID [2022-02-20 16:51:34,995 INFO L290 TraceCheckUtils]: 12: Hoare triple {7103#(= (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|)} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7110#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv2 32))} is VALID [2022-02-20 16:51:34,996 INFO L290 TraceCheckUtils]: 13: Hoare triple {7110#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv2 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7110#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv2 32))} is VALID [2022-02-20 16:51:34,996 INFO L290 TraceCheckUtils]: 14: Hoare triple {7110#(= (bvadd (_ bv4294967295 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv2 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7117#(= (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv4294967294 32)) (_ bv2 32))} is VALID [2022-02-20 16:51:34,997 INFO L290 TraceCheckUtils]: 15: Hoare triple {7117#(= (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv4294967294 32)) (_ bv2 32))} assume !~bvslt32(init_kernel_~i~1#1, 10bv32); {7067#false} is VALID [2022-02-20 16:51:34,997 INFO L290 TraceCheckUtils]: 16: Hoare triple {7067#false} init_kernel_~i~1#1 := 0bv32; {7067#false} is VALID [2022-02-20 16:51:34,997 INFO L290 TraceCheckUtils]: 17: Hoare triple {7067#false} assume !!~bvslt32(init_kernel_~i~1#1, 1bv32);call write~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1)), 4bv32);call write~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1))), 2bv32); {7067#false} is VALID [2022-02-20 16:51:34,997 INFO L290 TraceCheckUtils]: 18: Hoare triple {7067#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post299#1);havoc init_kernel_#t~post299#1; {7067#false} is VALID [2022-02-20 16:51:34,997 INFO L290 TraceCheckUtils]: 19: Hoare triple {7067#false} assume !~bvslt32(init_kernel_~i~1#1, 1bv32); {7067#false} is VALID [2022-02-20 16:51:34,997 INFO L290 TraceCheckUtils]: 20: Hoare triple {7067#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~C_INT } true;##fun~~TO~C_INT_#in~#fp#1.base, ##fun~~TO~C_INT_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~C_INT_#res#1;havoc ##fun~~TO~C_INT_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L272 TraceCheckUtils]: 21: Hoare triple {7067#false} call zf_init_#t~ret218#1 := printk(20bv32, 0bv32); {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L290 TraceCheckUtils]: 22: Hoare triple {7067#false} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0bv32; {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L290 TraceCheckUtils]: 23: Hoare triple {7067#false} assume true; {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {7067#false} {7067#false} #856#return; {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L290 TraceCheckUtils]: 25: Hoare triple {7067#false} havoc zf_init_#t~ret218#1; {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L272 TraceCheckUtils]: 26: Hoare triple {7067#false} call zf_init_#t~ret219#1 := zf_readw(2bv8); {7067#false} is VALID [2022-02-20 16:51:34,998 INFO L290 TraceCheckUtils]: 27: Hoare triple {7067#false} ~port#1 := #in~port#1; {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L272 TraceCheckUtils]: 28: Hoare triple {7067#false} call outb(~port#1, 536bv32); {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L290 TraceCheckUtils]: 29: Hoare triple {7067#false} ~byte := #in~byte;~port := #in~port; {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L290 TraceCheckUtils]: 30: Hoare triple {7067#false} assume true; {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7067#false} {7067#false} #790#return; {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L290 TraceCheckUtils]: 32: Hoare triple {7067#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538bv32;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L290 TraceCheckUtils]: 33: Hoare triple {7067#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if ~bvuge32(inw_~port#1, ~ddv_ioport_request_start~0) && ~bvult32(inw_~port#1, ~bvadd32(~ddv_ioport_request_start~0, ~ddv_ioport_request_len~0)) then 1bv32 else 0bv32), 26bv32, 0bv32;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {7067#false} is VALID [2022-02-20 16:51:34,999 INFO L290 TraceCheckUtils]: 34: Hoare triple {7067#false} assume 0bv32 == __VERIFIER_assert_~expression#1; {7067#false} is VALID [2022-02-20 16:51:35,000 INFO L290 TraceCheckUtils]: 35: Hoare triple {7067#false} assume !false; {7067#false} is VALID [2022-02-20 16:51:35,000 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:51:35,001 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 16:51:35,212 INFO L290 TraceCheckUtils]: 35: Hoare triple {7067#false} assume !false; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 34: Hoare triple {7067#false} assume 0bv32 == __VERIFIER_assert_~expression#1; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 33: Hoare triple {7067#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~expression#1, __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset := (if ~bvuge32(inw_~port#1, ~ddv_ioport_request_start~0) && ~bvult32(inw_~port#1, ~bvadd32(~ddv_ioport_request_start~0, ~ddv_ioport_request_len~0)) then 1bv32 else 0bv32), 26bv32, 0bv32;havoc __VERIFIER_assert_~expression#1, __VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset;__VERIFIER_assert_~expression#1 := __VERIFIER_assert_#in~expression#1;__VERIFIER_assert_~x#1.base, __VERIFIER_assert_~x#1.offset := __VERIFIER_assert_#in~x#1.base, __VERIFIER_assert_#in~x#1.offset; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 32: Hoare triple {7067#false} assume { :begin_inline_inw } true;inw_#in~port#1 := 538bv32;havoc inw_#res#1;havoc inw_#t~nondet741#1, inw_~port#1;inw_~port#1 := inw_#in~port#1; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7066#true} {7067#false} #790#return; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 30: Hoare triple {7066#true} assume true; {7066#true} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 29: Hoare triple {7066#true} ~byte := #in~byte;~port := #in~port; {7066#true} is VALID [2022-02-20 16:51:35,213 INFO L272 TraceCheckUtils]: 28: Hoare triple {7067#false} call outb(~port#1, 536bv32); {7066#true} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 27: Hoare triple {7067#false} ~port#1 := #in~port#1; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L272 TraceCheckUtils]: 26: Hoare triple {7067#false} call zf_init_#t~ret219#1 := zf_readw(2bv8); {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L290 TraceCheckUtils]: 25: Hoare triple {7067#false} havoc zf_init_#t~ret218#1; {7067#false} is VALID [2022-02-20 16:51:35,213 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {7066#true} {7067#false} #856#return; {7067#false} is VALID [2022-02-20 16:51:35,214 INFO L290 TraceCheckUtils]: 23: Hoare triple {7066#true} assume true; {7066#true} is VALID [2022-02-20 16:51:35,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {7066#true} ~fmt.base, ~fmt.offset := #in~fmt.base, #in~fmt.offset;#res := 0bv32; {7066#true} is VALID [2022-02-20 16:51:35,214 INFO L272 TraceCheckUtils]: 21: Hoare triple {7067#false} call zf_init_#t~ret218#1 := printk(20bv32, 0bv32); {7066#true} is VALID [2022-02-20 16:51:35,214 INFO L290 TraceCheckUtils]: 20: Hoare triple {7067#false} assume { :end_inline_init_kernel } true;assume { :begin_inline_##fun~~TO~C_INT } true;##fun~~TO~C_INT_#in~#fp#1.base, ##fun~~TO~C_INT_#in~#fp#1.offset := ~_ddv_module_init~0.base, ~_ddv_module_init~0.offset;havoc ##fun~~TO~C_INT_#res#1;havoc ##fun~~TO~C_INT_#t~ret775#1;assume { :begin_inline_zf_init } true;havoc zf_init_#res#1;havoc zf_init_#t~ret218#1, zf_init_#t~ret219#1, zf_init_#t~ret220#1, zf_init_#t~ret221#1, zf_init_#t~ret222#1, zf_init_#t~ret223#1.base, zf_init_#t~ret223#1.offset, zf_init_#t~ret224#1, zf_init_#t~ret225#1, zf_init_#t~ret226#1, zf_init_#t~ret227#1, zf_init_~ret~3#1;havoc zf_init_~ret~3#1; {7067#false} is VALID [2022-02-20 16:51:35,214 INFO L290 TraceCheckUtils]: 19: Hoare triple {7067#false} assume !~bvslt32(init_kernel_~i~1#1, 1bv32); {7067#false} is VALID [2022-02-20 16:51:35,214 INFO L290 TraceCheckUtils]: 18: Hoare triple {7067#false} init_kernel_#t~post299#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post299#1);havoc init_kernel_#t~post299#1; {7067#false} is VALID [2022-02-20 16:51:35,214 INFO L290 TraceCheckUtils]: 17: Hoare triple {7067#false} assume !!~bvslt32(init_kernel_~i~1#1, 1bv32);call write~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1)), 4bv32);call write~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~bvadd32(~#tasklet_registered~0.offset, ~bvmul32(6bv32, init_kernel_~i~1#1))), 2bv32); {7067#false} is VALID [2022-02-20 16:51:35,215 INFO L290 TraceCheckUtils]: 16: Hoare triple {7067#false} init_kernel_~i~1#1 := 0bv32; {7067#false} is VALID [2022-02-20 16:51:35,215 INFO L290 TraceCheckUtils]: 15: Hoare triple {7241#(bvslt |ULTIMATE.start_init_kernel_~i~1#1| (_ bv10 32))} assume !~bvslt32(init_kernel_~i~1#1, 10bv32); {7067#false} is VALID [2022-02-20 16:51:35,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {7245#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7241#(bvslt |ULTIMATE.start_init_kernel_~i~1#1| (_ bv10 32))} is VALID [2022-02-20 16:51:35,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {7245#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7245#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} is VALID [2022-02-20 16:51:35,221 INFO L290 TraceCheckUtils]: 12: Hoare triple {7252#(bvslt (bvadd (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7245#(bvslt (bvadd |ULTIMATE.start_init_kernel_~i~1#1| (_ bv1 32)) (_ bv10 32))} is VALID [2022-02-20 16:51:35,221 INFO L290 TraceCheckUtils]: 11: Hoare triple {7252#(bvslt (bvadd (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7252#(bvslt (bvadd (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} is VALID [2022-02-20 16:51:35,224 INFO L290 TraceCheckUtils]: 10: Hoare triple {7259#(bvslt (bvadd (_ bv3 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7252#(bvslt (bvadd (_ bv2 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} is VALID [2022-02-20 16:51:35,224 INFO L290 TraceCheckUtils]: 9: Hoare triple {7259#(bvslt (bvadd (_ bv3 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7259#(bvslt (bvadd (_ bv3 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} is VALID [2022-02-20 16:51:35,227 INFO L290 TraceCheckUtils]: 8: Hoare triple {7266#(bvslt (bvadd (_ bv4 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} init_kernel_#t~post298#1 := init_kernel_~i~1#1;init_kernel_~i~1#1 := ~bvadd32(1bv32, init_kernel_#t~post298#1);havoc init_kernel_#t~post298#1; {7259#(bvslt (bvadd (_ bv3 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} is VALID [2022-02-20 16:51:35,229 INFO L290 TraceCheckUtils]: 7: Hoare triple {7266#(bvslt (bvadd (_ bv4 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} assume !!~bvslt32(init_kernel_~i~1#1, 10bv32);call write~$Pointer$(0bv32, 0bv32, ~#shared_workqueue~0.base, ~bvadd32(~#shared_workqueue~0.offset, ~bvmul32(4bv32, init_kernel_~i~1#1)), 4bv32); {7266#(bvslt (bvadd (_ bv4 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} is VALID [2022-02-20 16:51:35,229 INFO L290 TraceCheckUtils]: 6: Hoare triple {7066#true} init_kernel_~i~1#1 := 0bv32; {7266#(bvslt (bvadd (_ bv4 32) |ULTIMATE.start_init_kernel_~i~1#1|) (_ bv10 32))} is VALID [2022-02-20 16:51:35,229 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {7066#true} {7066#true} #854#return; {7066#true} is VALID [2022-02-20 16:51:35,230 INFO L290 TraceCheckUtils]: 4: Hoare triple {7066#true} assume true; {7066#true} is VALID [2022-02-20 16:51:35,230 INFO L290 TraceCheckUtils]: 3: Hoare triple {7066#true} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset;call write~intINTTYPE4(1bv32, ~lock.base, ~lock.offset, 4bv32);call write~intINTTYPE4(0bv32, ~lock.base, ~bvadd32(4bv32, ~lock.offset), 4bv32); {7066#true} is VALID [2022-02-20 16:51:35,230 INFO L272 TraceCheckUtils]: 2: Hoare triple {7066#true} call spin_lock_init(~#kernel_lock~0.base, ~#kernel_lock~0.offset); {7066#true} is VALID [2022-02-20 16:51:35,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {7066#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret230#1;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;assume { :begin_inline_call_ddv } true;havoc call_ddv_#res#1;havoc call_ddv_#t~ret302#1, call_ddv_~err~0#1;havoc call_ddv_~err~0#1;~current_execution_context~0 := 1bv32;assume { :begin_inline_init_kernel } true;havoc init_kernel_#t~post298#1, init_kernel_#t~post299#1, init_kernel_~i~1#1;havoc init_kernel_~i~1#1; {7066#true} is VALID [2022-02-20 16:51:35,230 INFO L290 TraceCheckUtils]: 0: Hoare triple {7066#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(18bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);call #Ultimate.allocInit(44bv32, 4bv32);call #Ultimate.allocInit(31bv32, 5bv32);call #Ultimate.allocInit(4bv32, 6bv32);call write~init~intINTTYPE1(71bv8, 6bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(80bv8, 6bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(76bv8, 6bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 6bv32, 3bv32, 1bv32);call #Ultimate.allocInit(75bv32, 7bv32);call #Ultimate.allocInit(18bv32, 8bv32);call #Ultimate.allocInit(73bv32, 9bv32);call #Ultimate.allocInit(44bv32, 10bv32);call #Ultimate.allocInit(43bv32, 11bv32);call #Ultimate.allocInit(39bv32, 12bv32);call #Ultimate.allocInit(69bv32, 13bv32);call #Ultimate.allocInit(9bv32, 14bv32);call #Ultimate.allocInit(6bv32, 15bv32);call write~init~intINTTYPE1(82bv8, 15bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(83bv8, 15bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(69bv8, 15bv32, 3bv32, 1bv32);call write~init~intINTTYPE1(84bv8, 15bv32, 4bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 15bv32, 5bv32, 1bv32);call #Ultimate.allocInit(4bv32, 16bv32);call write~init~intINTTYPE1(83bv8, 16bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 16bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 16bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 16bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 17bv32);call write~init~intINTTYPE1(78bv8, 17bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(77bv8, 17bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 17bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 17bv32, 3bv32, 1bv32);call #Ultimate.allocInit(4bv32, 18bv32);call write~init~intINTTYPE1(83bv8, 18bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(67bv8, 18bv32, 1bv32, 1bv32);call write~init~intINTTYPE1(73bv8, 18bv32, 2bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 18bv32, 3bv32, 1bv32);call #Ultimate.allocInit(40bv32, 19bv32);call #Ultimate.allocInit(58bv32, 20bv32);call #Ultimate.allocInit(31bv32, 21bv32);call #Ultimate.allocInit(36bv32, 22bv32);call #Ultimate.allocInit(14bv32, 23bv32);call #Ultimate.allocInit(35bv32, 24bv32);call #Ultimate.allocInit(44bv32, 25bv32);call #Ultimate.allocInit(22bv32, 26bv32);~current_execution_context~0 := 0bv32;~_ddv_module_init~0.base, ~_ddv_module_init~0.offset := 0bv32, 0bv32;~_ddv_module_exit~0.base, ~_ddv_module_exit~0.offset := 0bv32, 0bv32;~jiffies~0 := 0bv32;~_ddv_module_author~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_description~0 := ~const~array~~LB~bv32~RB~bv8();~_ddv_module_license~0 := ~_ddv_module_license~0[0bv32 := 71bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[1bv32 := 80bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[2bv32 := 76bv8];~_ddv_module_license~0 := ~_ddv_module_license~0[3bv32 := 0bv8];~nowayout~0 := 0bv32;~_ddv_module_param_nowayout~0 := ~const~array~~LB~bv32~RB~bv8();~#zf_info~0.base, ~#zf_info~0.offset := 27bv32, 0bv32;call #Ultimate.allocInit(40bv32, 27bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#zf_info~0.base);call write~unchecked~intINTTYPE4(33024bv32, ~#zf_info~0.base, ~#zf_info~0.offset, 4bv32);call write~unchecked~intINTTYPE4(1bv32, ~#zf_info~0.base, ~bvadd32(4bv32, ~#zf_info~0.offset), 4bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(8bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(9bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(10bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(11bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(12bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(13bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(14bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(15bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(16bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(17bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(18bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(19bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(20bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(21bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(22bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(23bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(24bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(25bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(26bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(27bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(28bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(29bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(30bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(31bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(32bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(33bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(34bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(35bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(36bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(37bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(38bv32, ~#zf_info~0.offset), 1bv32);call write~init~intINTTYPE1(0bv8, ~#zf_info~0.base, ~bvadd32(39bv32, ~#zf_info~0.offset), 1bv32);~action~0 := 0bv32;~_ddv_module_param_action~0 := ~const~array~~LB~bv32~RB~bv8();~zf_action~0 := 2048bv32;~#zf_is_open~0.base, ~#zf_is_open~0.offset := 28bv32, 0bv32;call #Ultimate.allocInit(4bv32, 28bv32);call write~init~intINTTYPE4(0bv32, ~#zf_is_open~0.base, ~#zf_is_open~0.offset, 4bv32);~zf_expect_close~0 := 0bv8;~#zf_lock~0.base, ~#zf_lock~0.offset := 29bv32, 0bv32;call #Ultimate.allocInit(8bv32, 29bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~#zf_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_lock~0.base, ~bvadd32(4bv32, ~#zf_lock~0.offset), 4bv32);~#zf_port_lock~0.base, ~#zf_port_lock~0.offset := 30bv32, 0bv32;call #Ultimate.allocInit(8bv32, 30bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~#zf_port_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_port_lock~0.base, ~bvadd32(4bv32, ~#zf_port_lock~0.offset), 4bv32);~#zf_timer~0.base, ~#zf_timer~0.offset := 31bv32, 0bv32;call #Ultimate.allocInit(16bv32, 31bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~#zf_timer~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_timer~0.base, ~bvadd32(4bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_timer~0.base, ~bvadd32(8bv32, ~#zf_timer~0.offset), 4bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(12bv32, ~#zf_timer~0.offset), 2bv32);call write~init~intINTTYPE2(0bv16, ~#zf_timer~0.base, ~bvadd32(14bv32, ~#zf_timer~0.offset), 2bv32);~next_heartbeat~0 := 0bv32;~#zf_fops~0.base, ~#zf_fops~0.offset := 32bv32, 0bv32;call #Ultimate.allocInit(100bv32, 32bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#zf_fops~0.base);call write~unchecked~$Pointer$(0bv32, 0bv32, ~#zf_fops~0.base, ~#zf_fops~0.offset, 4bv32);call write~unchecked~$Pointer$(#funAddr~no_llseek.base, #funAddr~no_llseek.offset, ~#zf_fops~0.base, ~bvadd32(4bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_write.base, #funAddr~zf_write.offset, ~#zf_fops~0.base, ~bvadd32(12bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_ioctl.base, #funAddr~zf_ioctl.offset, ~#zf_fops~0.base, ~bvadd32(24bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_open.base, #funAddr~zf_open.offset, ~#zf_fops~0.base, ~bvadd32(40bv32, ~#zf_fops~0.offset), 4bv32);call write~unchecked~$Pointer$(#funAddr~zf_close.base, #funAddr~zf_close.offset, ~#zf_fops~0.base, ~bvadd32(48bv32, ~#zf_fops~0.offset), 4bv32);~#zf_miscdev~0.base, ~#zf_miscdev~0.offset := 33bv32, 0bv32;call #Ultimate.allocInit(12bv32, 33bv32);call write~init~intINTTYPE4(130bv32, ~#zf_miscdev~0.base, ~#zf_miscdev~0.offset, 4bv32);call write~init~$Pointer$(14bv32, 0bv32, ~#zf_miscdev~0.base, ~bvadd32(4bv32, ~#zf_miscdev~0.offset), 4bv32);call write~init~$Pointer$(~#zf_fops~0.base, ~#zf_fops~0.offset, ~#zf_miscdev~0.base, ~bvadd32(8bv32, ~#zf_miscdev~0.offset), 4bv32);~#zf_notifier~0.base, ~#zf_notifier~0.offset := 34bv32, 0bv32;call #Ultimate.allocInit(12bv32, 34bv32);call write~init~$Pointer$(#funAddr~zf_notify_sys.base, #funAddr~zf_notify_sys.offset, ~#zf_notifier~0.base, ~#zf_notifier~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#zf_notifier~0.base, ~bvadd32(4bv32, ~#zf_notifier~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#zf_notifier~0.base, ~bvadd32(8bv32, ~#zf_notifier~0.offset), 4bv32);~_ddv_tmp_init~0.base, ~_ddv_tmp_init~0.offset := #funAddr~zf_init.base, #funAddr~zf_init.offset;~_ddv_tmp_exit~0.base, ~_ddv_tmp_exit~0.offset := #funAddr~zf_exit.base, #funAddr~zf_exit.offset;~#fixed_cdev~0.base, ~#fixed_cdev~0.offset := 35bv32, 0bv32;call #Ultimate.allocInit(16bv32, 35bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~#fixed_cdev~0.offset, 4bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#fixed_cdev~0.base, ~bvadd32(4bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(8bv32, ~#fixed_cdev~0.offset), 4bv32);call write~init~intINTTYPE4(0bv32, ~#fixed_cdev~0.base, ~bvadd32(12bv32, ~#fixed_cdev~0.offset), 4bv32);~fixed_cdev_used~0 := 0bv32;~number_cdev_registered~0 := 0bv16;~#cdev_registered~0.base, ~#cdev_registered~0.offset := 36bv32, 0bv32;call #Ultimate.allocInit(64bv32, 36bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#cdev_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#cdev_registered~0.base);~number_genhd_registered~0 := 0bv16;~number_fixed_genhd_used~0 := 0bv16;~#fixed_gendisk~0.base, ~#fixed_gendisk~0.offset := 37bv32, 0bv32;call #Ultimate.allocInit(1280bv32, 37bv32);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_gendisk~0.base);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_gendisk~0.base);~#genhd_registered~0.base, ~#genhd_registered~0.offset := 38bv32, 0bv32;call #Ultimate.allocInit(1460bv32, 38bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#genhd_registered~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#genhd_registered~0.base);~#registered_pci_driver~0.base, ~#registered_pci_driver~0.offset := 39bv32, 0bv32;call #Ultimate.allocInit(236bv32, 39bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_pci_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#registered_pci_driver~0.base);~#registered_irq~0.base, ~#registered_irq~0.offset := 40bv32, 0bv32;call #Ultimate.allocInit(128bv32, 40bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#registered_irq~0.base);~number_tasklet_registered~0 := 0bv16;~#tasklet_registered~0.base, ~#tasklet_registered~0.offset := 41bv32, 0bv32;call #Ultimate.allocInit(6bv32, 41bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#tasklet_registered~0.base, ~#tasklet_registered~0.offset, 4bv32);call write~init~intINTTYPE2(0bv16, ~#tasklet_registered~0.base, ~bvadd32(4bv32, ~#tasklet_registered~0.offset), 2bv32);~number_timer_registered~0 := 0bv16;~#timer_registered~0.base, ~#timer_registered~0.offset := 42bv32, 0bv32;call #Ultimate.allocInit(4bv32, 42bv32);call write~init~$Pointer$(0bv32, 0bv32, ~#timer_registered~0.base, ~#timer_registered~0.offset, 4bv32);~#shared_workqueue~0.base, ~#shared_workqueue~0.offset := 43bv32, 0bv32;call #Ultimate.allocInit(40bv32, 43bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#shared_workqueue~0.base);~#kernel_lock~0.base, ~#kernel_lock~0.offset := 44bv32, 0bv32;call #Ultimate.allocInit(8bv32, 44bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~#kernel_lock~0.offset, 4bv32);call write~init~intINTTYPE4(0bv32, ~#kernel_lock~0.base, ~bvadd32(4bv32, ~#kernel_lock~0.offset), 4bv32);~#fixed_request_queue~0.base, ~#fixed_request_queue~0.offset := 45bv32, 0bv32;call #Ultimate.allocInit(460bv32, 45bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#fixed_request_queue~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#fixed_request_queue~0.base);~number_request_queue_used~0 := 0bv32;~proc_root_driver~0.base, ~proc_root_driver~0.offset := 0bv32, 0bv32;~#global_tty_driver~0.base, ~#global_tty_driver~0.offset := 46bv32, 0bv32;call #Ultimate.allocInit(200bv32, 46bv32);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#global_tty_driver~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#global_tty_driver~0.base);~ddv_ioport_request_start~0 := 0bv32;~ddv_ioport_request_len~0 := 0bv32; {7066#true} is VALID [2022-02-20 16:51:35,231 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 16:51:35,231 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:51:35,231 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1186349034] [2022-02-20 16:51:35,232 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1186349034] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 16:51:35,232 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 16:51:35,232 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-02-20 16:51:35,232 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [240013484] [2022-02-20 16:51:35,232 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 16:51:35,232 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 12 states have internal predecessors, (43), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-02-20 16:51:35,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:51:35,233 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 12 states have internal predecessors, (43), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 16:51:35,303 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:51:35,303 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 16:51:35,303 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:51:35,304 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 16:51:35,304 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-02-20 16:51:35,304 INFO L87 Difference]: Start difference. First operand 351 states and 480 transitions. Second operand has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 12 states have internal predecessors, (43), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5)