./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/ldv-consumption/32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i --full-output -ea --architecture 64bit -------------------------------------------------------------------------------- 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/ldv-consumption/32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-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 64bit --witnessprinter.graph.data.programhash 3b154baf348652a9aadd484f41053a90df6581eb3d7346fd488d4cc05040e74b --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 21:44:22,564 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 21:44:22,566 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 21:44:22,586 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 21:44:22,587 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 21:44:22,588 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 21:44:22,589 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 21:44:22,590 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 21:44:22,591 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 21:44:22,592 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 21:44:22,593 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 21:44:22,594 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 21:44:22,594 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 21:44:22,595 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 21:44:22,595 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 21:44:22,596 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 21:44:22,597 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 21:44:22,598 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 21:44:22,599 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 21:44:22,600 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 21:44:22,601 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 21:44:22,602 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 21:44:22,603 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 21:44:22,604 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 21:44:22,606 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 21:44:22,607 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 21:44:22,607 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 21:44:22,608 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 21:44:22,608 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 21:44:22,609 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 21:44:22,609 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 21:44:22,610 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 21:44:22,610 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 21:44:22,611 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 21:44:22,612 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 21:44:22,612 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 21:44:22,612 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 21:44:22,613 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 21:44:22,613 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 21:44:22,613 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 21:44:22,614 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 21:44:22,615 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf [2022-02-20 21:44:22,629 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 21:44:22,629 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 21:44:22,629 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 21:44:22,629 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 21:44:22,630 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 21:44:22,630 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 21:44:22,631 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 21:44:22,631 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 21:44:22,632 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 21:44:22,632 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 21:44:22,632 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 21:44:22,632 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 21:44:22,632 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 21:44:22,633 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 21:44:22,633 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 21:44:22,633 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 21:44:22,633 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 21:44:22,633 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 21:44:22,634 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 21:44:22,634 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 21:44:22,634 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 21:44:22,634 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 21:44:22,634 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 21:44:22,635 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 21:44:22,635 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 21:44:22,635 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 21:44:22,635 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 21:44:22,636 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 21:44:22,636 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 21:44:22,636 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 21:44:22,636 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 -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 3b154baf348652a9aadd484f41053a90df6581eb3d7346fd488d4cc05040e74b [2022-02-20 21:44:22,835 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 21:44:22,868 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 21:44:22,870 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 21:44:22,872 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 21:44:22,873 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 21:44:22,874 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-consumption/32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i [2022-02-20 21:44:22,925 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d98fc1280/40e2e28430ab4375b8cf68ff19ee2be2/FLAG16349ccc4 [2022-02-20 21:44:23,474 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 21:44:23,474 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-consumption/32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i [2022-02-20 21:44:23,511 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d98fc1280/40e2e28430ab4375b8cf68ff19ee2be2/FLAG16349ccc4 [2022-02-20 21:44:23,707 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d98fc1280/40e2e28430ab4375b8cf68ff19ee2be2 [2022-02-20 21:44:23,709 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 21:44:23,711 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 21:44:23,712 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 21:44:23,712 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 21:44:23,714 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 21:44:23,715 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 09:44:23" (1/1) ... [2022-02-20 21:44:23,716 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3bcfaa5e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:23, skipping insertion in model container [2022-02-20 21:44:23,716 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 09:44:23" (1/1) ... [2022-02-20 21:44:23,720 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 21:44:23,775 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 21:44:24,397 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/ldv-consumption/32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i[119285,119298] [2022-02-20 21:44:24,453 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 21:44:24,483 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 21:44:24,616 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/ldv-consumption/32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i[119285,119298] [2022-02-20 21:44:24,643 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 21:44:24,676 INFO L208 MainTranslator]: Completed translation [2022-02-20 21:44:24,676 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24 WrapperNode [2022-02-20 21:44:24,678 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 21:44:24,679 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 21:44:24,679 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 21:44:24,679 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 21:44:24,685 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,771 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,879 INFO L137 Inliner]: procedures = 144, calls = 800, calls flagged for inlining = 49, calls inlined = 41, statements flattened = 1462 [2022-02-20 21:44:24,881 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 21:44:24,882 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 21:44:24,882 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 21:44:24,882 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 21:44:24,888 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,888 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,905 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,905 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,963 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,969 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,976 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,987 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 21:44:24,988 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 21:44:24,988 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 21:44:24,988 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 21:44:24,989 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (1/1) ... [2022-02-20 21:44:24,993 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 21:44:25,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 21:44:25,013 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 21:44:25,030 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 21:44:25,051 INFO L130 BoogieDeclarations]: Found specification of procedure pi_release [2022-02-20 21:44:25,051 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_release [2022-02-20 21:44:25,051 INFO L130 BoogieDeclarations]: Found specification of procedure write_reg [2022-02-20 21:44:25,051 INFO L138 BoogieDeclarations]: Found implementation of procedure write_reg [2022-02-20 21:44:25,051 INFO L130 BoogieDeclarations]: Found specification of procedure pi_disconnect [2022-02-20 21:44:25,051 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_disconnect [2022-02-20 21:44:25,052 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_mutex_lock_pt_mutex [2022-02-20 21:44:25,052 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_mutex_lock_pt_mutex [2022-02-20 21:44:25,052 INFO L130 BoogieDeclarations]: Found specification of procedure status_reg [2022-02-20 21:44:25,052 INFO L138 BoogieDeclarations]: Found implementation of procedure status_reg [2022-02-20 21:44:25,052 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 21:44:25,052 INFO L130 BoogieDeclarations]: Found specification of procedure pi_read_block [2022-02-20 21:44:25,052 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_read_block [2022-02-20 21:44:25,053 INFO L130 BoogieDeclarations]: Found specification of procedure read_reg [2022-02-20 21:44:25,053 INFO L138 BoogieDeclarations]: Found implementation of procedure read_reg [2022-02-20 21:44:25,053 INFO L130 BoogieDeclarations]: Found specification of procedure pt_media_access_cmd [2022-02-20 21:44:25,053 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_media_access_cmd [2022-02-20 21:44:25,053 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_malloc [2022-02-20 21:44:25,053 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_malloc [2022-02-20 21:44:25,053 INFO L130 BoogieDeclarations]: Found specification of procedure pt_reset [2022-02-20 21:44:25,053 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_reset [2022-02-20 21:44:25,054 INFO L130 BoogieDeclarations]: Found specification of procedure pt_identify [2022-02-20 21:44:25,054 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_identify [2022-02-20 21:44:25,054 INFO L130 BoogieDeclarations]: Found specification of procedure pt_command [2022-02-20 21:44:25,054 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_command [2022-02-20 21:44:25,054 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 21:44:25,054 INFO L130 BoogieDeclarations]: Found specification of procedure mutex_unlock [2022-02-20 21:44:25,054 INFO L138 BoogieDeclarations]: Found implementation of procedure mutex_unlock [2022-02-20 21:44:25,055 INFO L130 BoogieDeclarations]: Found specification of procedure pt_write [2022-02-20 21:44:25,055 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_write [2022-02-20 21:44:25,055 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_error [2022-02-20 21:44:25,055 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_error [2022-02-20 21:44:25,055 INFO L130 BoogieDeclarations]: Found specification of procedure ldv__builtin_expect [2022-02-20 21:44:25,055 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv__builtin_expect [2022-02-20 21:44:25,055 INFO L130 BoogieDeclarations]: Found specification of procedure pt_atapi [2022-02-20 21:44:25,055 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_atapi [2022-02-20 21:44:25,055 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 21:44:25,056 INFO L130 BoogieDeclarations]: Found specification of procedure pt_poll_dsc [2022-02-20 21:44:25,056 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_poll_dsc [2022-02-20 21:44:25,056 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_mutex_unlock_pt_mutex [2022-02-20 21:44:25,056 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_mutex_unlock_pt_mutex [2022-02-20 21:44:25,056 INFO L130 BoogieDeclarations]: Found specification of procedure mutex_lock [2022-02-20 21:44:25,057 INFO L138 BoogieDeclarations]: Found implementation of procedure mutex_lock [2022-02-20 21:44:25,057 INFO L130 BoogieDeclarations]: Found specification of procedure pt_req_sense [2022-02-20 21:44:25,057 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_req_sense [2022-02-20 21:44:25,057 INFO L130 BoogieDeclarations]: Found specification of procedure copy_from_user [2022-02-20 21:44:25,057 INFO L138 BoogieDeclarations]: Found implementation of procedure copy_from_user [2022-02-20 21:44:25,057 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 21:44:25,057 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_unregister_chrdev_17 [2022-02-20 21:44:25,058 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_unregister_chrdev_17 [2022-02-20 21:44:25,058 INFO L130 BoogieDeclarations]: Found specification of procedure atomic_inc [2022-02-20 21:44:25,058 INFO L138 BoogieDeclarations]: Found implementation of procedure atomic_inc [2022-02-20 21:44:25,058 INFO L130 BoogieDeclarations]: Found specification of procedure __const_udelay [2022-02-20 21:44:25,058 INFO L138 BoogieDeclarations]: Found implementation of procedure __const_udelay [2022-02-20 21:44:25,058 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 21:44:25,059 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 21:44:25,059 INFO L130 BoogieDeclarations]: Found specification of procedure DRIVE [2022-02-20 21:44:25,059 INFO L138 BoogieDeclarations]: Found implementation of procedure DRIVE [2022-02-20 21:44:25,060 INFO L130 BoogieDeclarations]: Found specification of procedure pt_completion [2022-02-20 21:44:25,060 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_completion [2022-02-20 21:44:25,060 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 21:44:25,061 INFO L130 BoogieDeclarations]: Found specification of procedure pt_sleep [2022-02-20 21:44:25,061 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_sleep [2022-02-20 21:44:25,061 INFO L130 BoogieDeclarations]: Found specification of procedure pt_write_fm [2022-02-20 21:44:25,061 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_write_fm [2022-02-20 21:44:25,061 INFO L130 BoogieDeclarations]: Found specification of procedure iminor [2022-02-20 21:44:25,062 INFO L138 BoogieDeclarations]: Found implementation of procedure iminor [2022-02-20 21:44:25,062 INFO L130 BoogieDeclarations]: Found specification of procedure pi_write_block [2022-02-20 21:44:25,062 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_write_block [2022-02-20 21:44:25,062 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 21:44:25,062 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 21:44:25,063 INFO L130 BoogieDeclarations]: Found specification of procedure pi_init [2022-02-20 21:44:25,063 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_init [2022-02-20 21:44:25,063 INFO L130 BoogieDeclarations]: Found specification of procedure pi_read_regr [2022-02-20 21:44:25,063 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_read_regr [2022-02-20 21:44:25,063 INFO L130 BoogieDeclarations]: Found specification of procedure might_fault [2022-02-20 21:44:25,063 INFO L138 BoogieDeclarations]: Found implementation of procedure might_fault [2022-02-20 21:44:25,063 INFO L130 BoogieDeclarations]: Found specification of procedure pt_wait [2022-02-20 21:44:25,063 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_wait [2022-02-20 21:44:25,063 INFO L130 BoogieDeclarations]: Found specification of procedure pi_connect [2022-02-20 21:44:25,064 INFO L138 BoogieDeclarations]: Found implementation of procedure pi_connect [2022-02-20 21:44:25,064 INFO L130 BoogieDeclarations]: Found specification of procedure device_destroy [2022-02-20 21:44:25,064 INFO L138 BoogieDeclarations]: Found implementation of procedure device_destroy [2022-02-20 21:44:25,064 INFO L130 BoogieDeclarations]: Found specification of procedure pt_probe [2022-02-20 21:44:25,064 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_probe [2022-02-20 21:44:25,064 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 21:44:25,064 INFO L130 BoogieDeclarations]: Found specification of procedure pt_rewind [2022-02-20 21:44:25,064 INFO L138 BoogieDeclarations]: Found implementation of procedure pt_rewind [2022-02-20 21:44:25,064 INFO L130 BoogieDeclarations]: Found specification of procedure xn [2022-02-20 21:44:25,065 INFO L138 BoogieDeclarations]: Found implementation of procedure xn [2022-02-20 21:44:25,065 INFO L130 BoogieDeclarations]: Found specification of procedure _copy_from_user [2022-02-20 21:44:25,065 INFO L138 BoogieDeclarations]: Found implementation of procedure _copy_from_user [2022-02-20 21:44:25,065 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 21:44:25,066 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 21:44:25,066 INFO L130 BoogieDeclarations]: Found specification of procedure xs [2022-02-20 21:44:25,066 INFO L138 BoogieDeclarations]: Found implementation of procedure xs [2022-02-20 21:44:25,392 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 21:44:25,394 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 21:44:31,222 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 21:44:31,233 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 21:44:31,234 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 21:44:31,236 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 09:44:31 BoogieIcfgContainer [2022-02-20 21:44:31,236 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 21:44:31,237 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 21:44:31,237 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 21:44:31,240 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 21:44:31,240 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 09:44:23" (1/3) ... [2022-02-20 21:44:31,240 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3b4f74fb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 09:44:31, skipping insertion in model container [2022-02-20 21:44:31,241 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 09:44:24" (2/3) ... [2022-02-20 21:44:31,241 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3b4f74fb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 09:44:31, skipping insertion in model container [2022-02-20 21:44:31,241 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 09:44:31" (3/3) ... [2022-02-20 21:44:31,242 INFO L111 eAbstractionObserver]: Analyzing ICFG 32_7a_cilled_linux-3.8-rc1-drivers--block--paride--pt.ko-main.cil.out.i [2022-02-20 21:44:31,246 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 21:44:31,246 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 21:44:31,281 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 21:44:31,286 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 21:44:31,286 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 21:44:31,317 INFO L276 IsEmpty]: Start isEmpty. Operand has 709 states, 502 states have (on average 1.3924302788844622) internal successors, (699), 524 states have internal predecessors, (699), 167 states have call successors, (167), 42 states have call predecessors, (167), 42 states have return successors, (167), 167 states have call predecessors, (167), 167 states have call successors, (167) [2022-02-20 21:44:31,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 21:44:31,324 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 21:44:31,324 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 21:44:31,325 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 21:44:31,328 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 21:44:31,328 INFO L85 PathProgramCache]: Analyzing trace with hash -47262178, now seen corresponding path program 1 times [2022-02-20 21:44:31,335 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 21:44:31,335 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1852104215] [2022-02-20 21:44:31,336 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:44:31,336 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 21:44:31,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:44:31,674 INFO L290 TraceCheckUtils]: 0: Hoare triple {712#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(72, 2);call #Ultimate.allocInit(3, 3);call write~init~int(112, 3, 0, 1);call write~init~int(116, 3, 1, 1);call write~init~int(0, 3, 2, 1);call #Ultimate.allocInit(124, 4);call #Ultimate.allocInit(27, 5);call #Ultimate.allocInit(19, 6);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(57, 8);call #Ultimate.allocInit(15, 9);call #Ultimate.allocInit(12, 10);call #Ultimate.allocInit(29, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(10, 13);call #Ultimate.allocInit(14, 14);call #Ultimate.allocInit(14, 15);call #Ultimate.allocInit(37, 16);call #Ultimate.allocInit(20, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(7, 19);call write~init~int(114, 19, 0, 1);call write~init~int(101, 19, 1, 1);call write~init~int(119, 19, 2, 1);call write~init~int(105, 19, 3, 1);call write~init~int(110, 19, 4, 1);call write~init~int(100, 19, 5, 1);call write~init~int(0, 19, 6, 1);call #Ultimate.allocInit(15, 20);call #Ultimate.allocInit(28, 21);call #Ultimate.allocInit(4, 22);call write~init~int(37, 22, 0, 1);call write~init~int(51, 22, 1, 1);call write~init~int(120, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(13, 23);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(16, 25);call #Ultimate.allocInit(7, 26);call write~init~int(109, 26, 0, 1);call write~init~int(97, 26, 1, 1);call write~init~int(115, 26, 2, 1);call write~init~int(116, 26, 3, 1);call write~init~int(101, 26, 4, 1);call write~init~int(114, 26, 5, 1);call write~init~int(0, 26, 6, 1);call #Ultimate.allocInit(6, 27);call write~init~int(115, 27, 0, 1);call write~init~int(108, 27, 1, 1);call write~init~int(97, 27, 2, 1);call write~init~int(118, 27, 3, 1);call write~init~int(101, 27, 4, 1);call write~init~int(0, 27, 5, 1);call #Ultimate.allocInit(9, 28);call #Ultimate.allocInit(35, 29);call #Ultimate.allocInit(11, 30);call #Ultimate.allocInit(10, 31);call #Ultimate.allocInit(14, 32);call #Ultimate.allocInit(12, 33);call #Ultimate.allocInit(5, 34);call write~init~int(44, 34, 0, 1);call write~init~int(32, 34, 1, 1);call write~init~int(82, 34, 2, 1);call write~init~int(79, 34, 3, 1);call write~init~int(0, 34, 4, 1);call #Ultimate.allocInit(23, 35);call #Ultimate.allocInit(29, 36);call #Ultimate.allocInit(5, 37);call write~init~int(49, 37, 0, 1);call write~init~int(46, 37, 1, 1);call write~init~int(48, 37, 2, 1);call write~init~int(52, 37, 3, 1);call write~init~int(0, 37, 4, 1);call #Ultimate.allocInit(5, 38);call write~init~int(37, 38, 0, 1);call write~init~int(115, 38, 1, 1);call write~init~int(37, 38, 2, 1);call write~init~int(100, 38, 3, 1);call write~init~int(0, 38, 4, 1);call #Ultimate.allocInit(34, 39);call #Ultimate.allocInit(30, 40);call #Ultimate.allocInit(29, 41);call #Ultimate.allocInit(17, 42);call #Ultimate.allocInit(5, 43);call write~init~int(114, 43, 0, 1);call write~init~int(101, 43, 1, 1);call write~init~int(97, 43, 2, 1);call write~init~int(100, 43, 3, 1);call write~init~int(0, 43, 4, 1);call #Ultimate.allocInit(5, 44);call write~init~int(114, 44, 0, 1);call write~init~int(101, 44, 1, 1);call write~init~int(97, 44, 2, 1);call write~init~int(100, 44, 3, 1);call write~init~int(0, 44, 4, 1);call #Ultimate.allocInit(9, 45);call #Ultimate.allocInit(1, 46);call write~init~int(0, 46, 0, 1);call #Ultimate.allocInit(29, 47);call #Ultimate.allocInit(28, 48);call #Ultimate.allocInit(6, 49);call write~init~int(119, 49, 0, 1);call write~init~int(114, 49, 1, 1);call write~init~int(105, 49, 2, 1);call write~init~int(116, 49, 3, 1);call write~init~int(101, 49, 4, 1);call write~init~int(0, 49, 5, 1);call #Ultimate.allocInit(6, 50);call write~init~int(119, 50, 0, 1);call write~init~int(114, 50, 1, 1);call write~init~int(105, 50, 2, 1);call write~init~int(116, 50, 3, 1);call write~init~int(101, 50, 4, 1);call write~init~int(0, 50, 5, 1);call #Ultimate.allocInit(10, 51);call #Ultimate.allocInit(31, 52);call #Ultimate.allocInit(40, 53);call #Ultimate.allocInit(3, 54);call write~init~int(112, 54, 0, 1);call write~init~int(116, 54, 1, 1);call write~init~int(0, 54, 2, 1);call #Ultimate.allocInit(5, 55);call write~init~int(112, 55, 0, 1);call write~init~int(116, 55, 1, 1);call write~init~int(37, 55, 2, 1);call write~init~int(100, 55, 3, 1);call write~init~int(0, 55, 4, 1);call #Ultimate.allocInit(6, 56);call write~init~int(112, 56, 0, 1);call write~init~int(116, 56, 1, 1);call write~init~int(37, 56, 2, 1);call write~init~int(100, 56, 3, 1);call write~init~int(110, 56, 4, 1);call write~init~int(0, 56, 5, 1);call #Ultimate.allocInit(3, 57);call write~init~int(112, 57, 0, 1);call write~init~int(116, 57, 1, 1);call write~init~int(0, 57, 2, 1);~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 0;~verbose~0 := 0;~major~0 := 96;~name~0.base, ~name~0.offset := 3, 0;~disable~0 := 0;~#drive0~0.base, ~#drive0~0.offset := 58, 0;call #Ultimate.allocInit(24, 58);call write~init~int(0, ~#drive0~0.base, ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 4 + ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 8 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 12 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 16 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 20 + ~#drive0~0.offset, 4);~#drive1~0.base, ~#drive1~0.offset := 59, 0;call #Ultimate.allocInit(24, 59);call write~init~int(0, ~#drive1~0.base, ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 4 + ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 8 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 12 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 16 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 20 + ~#drive1~0.offset, 4);~#drive2~0.base, ~#drive2~0.offset := 60, 0;call #Ultimate.allocInit(24, 60);call write~init~int(0, ~#drive2~0.base, ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 4 + ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 8 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 12 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 16 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 20 + ~#drive2~0.offset, 4);~#drive3~0.base, ~#drive3~0.offset := 61, 0;call #Ultimate.allocInit(24, 61);call write~init~int(0, ~#drive3~0.base, ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 4 + ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 8 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 12 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 16 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 20 + ~#drive3~0.offset, 4);~drives~0.base, ~drives~0.offset := ~drives~0.base[0 := ~#drive0~0.base], ~drives~0.offset[0 := ~#drive0~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[1 := ~#drive1~0.base], ~drives~0.offset[1 := ~#drive1~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[2 := ~#drive2~0.base], ~drives~0.offset[2 := ~#drive2~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[3 := ~#drive3~0.base], ~drives~0.offset[3 := ~#drive3~0.offset];~#pt_mutex~0.base, ~#pt_mutex~0.offset := 62, 0;call #Ultimate.allocInit(156, 62);call write~init~int(1, ~#pt_mutex~0.base, ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 4 + ~#pt_mutex~0.offset, 4);call write~init~int(3735899821, ~#pt_mutex~0.base, 8 + ~#pt_mutex~0.offset, 4);call write~init~int(4294967295, ~#pt_mutex~0.base, 12 + ~#pt_mutex~0.offset, 4);call write~init~$Pointer$(0, -1, ~#pt_mutex~0.base, 16 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 24 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 32 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 40 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(6, 0, ~#pt_mutex~0.base, 48 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 56 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 60 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 80 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 88 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 96 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 104 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 112 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 120 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 128 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(7, 0, ~#pt_mutex~0.base, 136 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 144 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 148 + ~#pt_mutex~0.offset, 8);~#pt~0.base, ~#pt~0.offset := 63, 0;call #Ultimate.allocInit(880, 63);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt~0.base);~#pt_scratch~0.base, ~#pt_scratch~0.offset := 64, 0;call #Ultimate.allocInit(512, 64);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt_scratch~0.base);~#pt_fops~0.base, ~#pt_fops~0.offset := 65, 0;call #Ultimate.allocInit(216, 65);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#pt_fops~0.base, ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~noop_llseek.base, #funAddr~noop_llseek.offset, ~#pt_fops~0.base, 8 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_read.base, #funAddr~pt_read.offset, ~#pt_fops~0.base, 16 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_write.base, #funAddr~pt_write.offset, ~#pt_fops~0.base, 24 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 32 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 40 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 48 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 56 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_ioctl.base, #funAddr~pt_ioctl.offset, ~#pt_fops~0.base, 64 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 72 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 80 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_open.base, #funAddr~pt_open.offset, ~#pt_fops~0.base, 88 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 96 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_release.base, #funAddr~pt_release.offset, ~#pt_fops~0.base, 104 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 112 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 120 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 128 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 136 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 144 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 152 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 160 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 168 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 176 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 184 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 192 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 200 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 208 + ~#pt_fops~0.offset, 8);~pt_class~0.base, ~pt_class~0.offset := 0, 0;~ldvarg7~0 := 0;~pt_fops_group1~0.base, ~pt_fops_group1~0.offset := 0, 0;~ldvarg3~0.base, ~ldvarg3~0.offset := 0, 0;~ldvarg0~0.base, ~ldvarg0~0.offset := 0, 0;~pt_fops_group2~0.base, ~pt_fops_group2~0.offset := 0, 0;~ldvarg5~0 := 0;~ldv_retval_pt_open~0 := 0;~ldvarg6~0.base, ~ldvarg6~0.offset := 0, 0;~ldvarg8~0 := 0;~ldvarg1~0 := 0;~ldv_retval_pt_init~0 := 0;~ldvarg4~0.base, ~ldvarg4~0.offset := 0, 0;~ldvarg2~0.base, ~ldvarg2~0.offset := 0, 0;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 0;~ldv_mutex_lock~0 := 0;~ldv_mutex_mutex_of_device~0 := 0;~ldv_mutex_pt_mutex~0 := 0; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,675 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#(= ~disable~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet291#1, main_#t~switch292#1, main_#t~nondet293#1, main_#t~switch294#1, main_#t~ret295#1, main_#t~ret296#1, main_#t~ret297#1, main_#t~ret298#1, main_#t~ret299#1, main_#t~ret300#1, main_#t~nondet301#1, main_#t~switch302#1, main_#t~ret303#1, main_~tmp~25#1, main_~tmp___0~12#1, main_~tmp___1~11#1;havoc main_~tmp~25#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~11#1;assume { :begin_inline_ldv_initialize } true;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 1;~ldv_mutex_lock~0 := 1;~ldv_mutex_mutex_of_device~0 := 1;~ldv_mutex_pt_mutex~0 := 1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#(= ~disable~0 0)} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,676 INFO L290 TraceCheckUtils]: 3: Hoare triple {714#(= ~disable~0 0)} assume -2147483648 <= main_#t~nondet291#1 && main_#t~nondet291#1 <= 2147483647;main_~tmp~25#1 := main_#t~nondet291#1;havoc main_#t~nondet291#1;main_#t~switch292#1 := 0 == main_~tmp~25#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,676 INFO L290 TraceCheckUtils]: 4: Hoare triple {714#(= ~disable~0 0)} assume !main_#t~switch292#1;main_#t~switch292#1 := main_#t~switch292#1 || 1 == main_~tmp~25#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,677 INFO L290 TraceCheckUtils]: 5: Hoare triple {714#(= ~disable~0 0)} assume main_#t~switch292#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,677 INFO L290 TraceCheckUtils]: 6: Hoare triple {714#(= ~disable~0 0)} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet301#1 && main_#t~nondet301#1 <= 2147483647;main_~tmp___1~11#1 := main_#t~nondet301#1;havoc main_#t~nondet301#1;main_#t~switch302#1 := 0 == main_~tmp___1~11#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,678 INFO L290 TraceCheckUtils]: 7: Hoare triple {714#(= ~disable~0 0)} assume !main_#t~switch302#1;main_#t~switch302#1 := main_#t~switch302#1 || 1 == main_~tmp___1~11#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,678 INFO L290 TraceCheckUtils]: 8: Hoare triple {714#(= ~disable~0 0)} assume main_#t~switch302#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,678 INFO L290 TraceCheckUtils]: 9: Hoare triple {714#(= ~disable~0 0)} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_pt_init } true;havoc pt_init_#res#1;havoc pt_init_#t~ret277#1, pt_init_#t~ret278#1, pt_init_#t~nondet279#1, pt_init_#t~mem280#1, pt_init_#t~mem281#1.base, pt_init_#t~mem281#1.offset, pt_init_#t~ret282#1.base, pt_init_#t~ret282#1.offset, pt_init_#t~ret283#1, pt_init_#t~ret284#1, pt_init_#t~mem285#1, pt_init_#t~nondet286#1.base, pt_init_#t~nondet286#1.offset, pt_init_#t~nondet287#1.base, pt_init_#t~nondet287#1.offset, pt_init_~unit~2#1, pt_init_~err~1#1, pt_init_~tmp~24#1, pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset, pt_init_~tmp___0~11#1.base, pt_init_~tmp___0~11#1.offset, pt_init_~tmp___1~10#1, pt_init_~tmp___2~10#1;havoc pt_init_~unit~2#1;havoc pt_init_~err~1#1;havoc pt_init_~tmp~24#1;call pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc pt_init_~tmp___0~11#1.base, pt_init_~tmp___0~11#1.offset;havoc pt_init_~tmp___1~10#1;havoc pt_init_~tmp___2~10#1; {714#(= ~disable~0 0)} is VALID [2022-02-20 21:44:31,679 INFO L290 TraceCheckUtils]: 10: Hoare triple {714#(= ~disable~0 0)} assume 0 != ~disable~0;pt_init_~err~1#1 := -22; {713#false} is VALID [2022-02-20 21:44:31,679 INFO L290 TraceCheckUtils]: 11: Hoare triple {713#false} pt_init_#res#1 := pt_init_~err~1#1;call ULTIMATE.dealloc(pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset);havoc pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset; {713#false} is VALID [2022-02-20 21:44:31,679 INFO L290 TraceCheckUtils]: 12: Hoare triple {713#false} main_#t~ret303#1 := pt_init_#res#1;assume { :end_inline_pt_init } true;assume -2147483648 <= main_#t~ret303#1 && main_#t~ret303#1 <= 2147483647;~ldv_retval_pt_init~0 := main_#t~ret303#1;havoc main_#t~ret303#1; {713#false} is VALID [2022-02-20 21:44:31,680 INFO L290 TraceCheckUtils]: 13: Hoare triple {713#false} assume 0 == ~ldv_retval_pt_init~0;~ldv_state_variable_0~0 := 3; {713#false} is VALID [2022-02-20 21:44:31,680 INFO L290 TraceCheckUtils]: 14: Hoare triple {713#false} assume 0 != ~ldv_retval_pt_init~0;~ldv_state_variable_0~0 := 2; {713#false} is VALID [2022-02-20 21:44:31,680 INFO L290 TraceCheckUtils]: 15: Hoare triple {713#false} assume { :begin_inline_ldv_check_final_state } true; {713#false} is VALID [2022-02-20 21:44:31,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {713#false} assume !(1 == ~ldv_mutex_cred_guard_mutex_of_signal_struct~0); {713#false} is VALID [2022-02-20 21:44:31,680 INFO L272 TraceCheckUtils]: 17: Hoare triple {713#false} call ldv_error(); {713#false} is VALID [2022-02-20 21:44:31,681 INFO L290 TraceCheckUtils]: 18: Hoare triple {713#false} assume !false; {713#false} is VALID [2022-02-20 21:44:31,682 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 21:44:31,682 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 21:44:31,682 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1852104215] [2022-02-20 21:44:31,683 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1852104215] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 21:44:31,683 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 21:44:31,683 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 21:44:31,684 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1734653408] [2022-02-20 21:44:31,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 21:44:31,689 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 21:44:31,690 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 21:44:31,692 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:44:31,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:44:31,732 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 21:44:31,732 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 21:44:31,763 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 21:44:31,764 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 21:44:31,771 INFO L87 Difference]: Start difference. First operand has 709 states, 502 states have (on average 1.3924302788844622) internal successors, (699), 524 states have internal predecessors, (699), 167 states have call successors, (167), 42 states have call predecessors, (167), 42 states have return successors, (167), 167 states have call predecessors, (167), 167 states have call successors, (167) Second operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:44:37,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:44:37,551 INFO L93 Difference]: Finished difference Result 1401 states and 2096 transitions. [2022-02-20 21:44:37,552 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 21:44:37,552 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 21:44:37,552 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 21:44:37,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:44:37,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 2096 transitions. [2022-02-20 21:44:37,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:44:37,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 2096 transitions. [2022-02-20 21:44:37,678 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 2096 transitions. [2022-02-20 21:44:39,471 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2096 edges. 2096 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:44:39,550 INFO L225 Difference]: With dead ends: 1401 [2022-02-20 21:44:39,550 INFO L226 Difference]: Without dead ends: 691 [2022-02-20 21:44:39,556 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 21:44:39,559 INFO L933 BasicCegarLoop]: 982 mSDtfsCounter, 973 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 1 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 973 SdHoareTripleChecker+Valid, 982 SdHoareTripleChecker+Invalid, 1 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 1 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 21:44:39,560 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [973 Valid, 982 Invalid, 1 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 1 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 21:44:39,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 691 states. [2022-02-20 21:44:39,618 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 691 to 691. [2022-02-20 21:44:39,618 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 21:44:39,622 INFO L82 GeneralOperation]: Start isEquivalent. First operand 691 states. Second operand has 691 states, 486 states have (on average 1.3559670781893005) internal successors, (659), 502 states have internal predecessors, (659), 163 states have call successors, (163), 42 states have call predecessors, (163), 41 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-02-20 21:44:39,625 INFO L74 IsIncluded]: Start isIncluded. First operand 691 states. Second operand has 691 states, 486 states have (on average 1.3559670781893005) internal successors, (659), 502 states have internal predecessors, (659), 163 states have call successors, (163), 42 states have call predecessors, (163), 41 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-02-20 21:44:39,627 INFO L87 Difference]: Start difference. First operand 691 states. Second operand has 691 states, 486 states have (on average 1.3559670781893005) internal successors, (659), 502 states have internal predecessors, (659), 163 states have call successors, (163), 42 states have call predecessors, (163), 41 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-02-20 21:44:39,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:44:39,686 INFO L93 Difference]: Finished difference Result 691 states and 979 transitions. [2022-02-20 21:44:39,686 INFO L276 IsEmpty]: Start isEmpty. Operand 691 states and 979 transitions. [2022-02-20 21:44:39,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:44:39,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:44:39,703 INFO L74 IsIncluded]: Start isIncluded. First operand has 691 states, 486 states have (on average 1.3559670781893005) internal successors, (659), 502 states have internal predecessors, (659), 163 states have call successors, (163), 42 states have call predecessors, (163), 41 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 691 states. [2022-02-20 21:44:39,706 INFO L87 Difference]: Start difference. First operand has 691 states, 486 states have (on average 1.3559670781893005) internal successors, (659), 502 states have internal predecessors, (659), 163 states have call successors, (163), 42 states have call predecessors, (163), 41 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 691 states. [2022-02-20 21:44:39,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:44:39,745 INFO L93 Difference]: Finished difference Result 691 states and 979 transitions. [2022-02-20 21:44:39,745 INFO L276 IsEmpty]: Start isEmpty. Operand 691 states and 979 transitions. [2022-02-20 21:44:39,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:44:39,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:44:39,749 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 21:44:39,749 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 21:44:39,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 691 states, 486 states have (on average 1.3559670781893005) internal successors, (659), 502 states have internal predecessors, (659), 163 states have call successors, (163), 42 states have call predecessors, (163), 41 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-02-20 21:44:39,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 691 states to 691 states and 979 transitions. [2022-02-20 21:44:39,787 INFO L78 Accepts]: Start accepts. Automaton has 691 states and 979 transitions. Word has length 19 [2022-02-20 21:44:39,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 21:44:39,788 INFO L470 AbstractCegarLoop]: Abstraction has 691 states and 979 transitions. [2022-02-20 21:44:39,789 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 2 states have internal predecessors, (18), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:44:39,790 INFO L276 IsEmpty]: Start isEmpty. Operand 691 states and 979 transitions. [2022-02-20 21:44:39,790 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 21:44:39,790 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 21:44:39,791 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] [2022-02-20 21:44:39,791 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 21:44:39,791 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 21:44:39,794 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 21:44:39,794 INFO L85 PathProgramCache]: Analyzing trace with hash -1604484427, now seen corresponding path program 1 times [2022-02-20 21:44:39,794 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 21:44:39,794 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [358114671] [2022-02-20 21:44:39,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:44:39,795 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 21:44:39,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:44:39,892 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-20 21:44:39,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:44:39,899 INFO L290 TraceCheckUtils]: 0: Hoare triple {5075#true} ~inode.base, ~inode.offset := #in~inode.base, #in~inode.offset;call #t~mem13 := read~int(~inode.base, 76 + ~inode.offset, 4);#res := (if 0 == #t~mem13 then 0 else (if 1 == #t~mem13 then 1 else ~bitwiseAnd(#t~mem13, 1048575)));havoc #t~mem13; {5075#true} is VALID [2022-02-20 21:44:39,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {5075#true} assume true; {5075#true} is VALID [2022-02-20 21:44:39,900 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5075#true} {5076#false} #1861#return; {5076#false} is VALID [2022-02-20 21:44:39,900 INFO L290 TraceCheckUtils]: 0: Hoare triple {5075#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(72, 2);call #Ultimate.allocInit(3, 3);call write~init~int(112, 3, 0, 1);call write~init~int(116, 3, 1, 1);call write~init~int(0, 3, 2, 1);call #Ultimate.allocInit(124, 4);call #Ultimate.allocInit(27, 5);call #Ultimate.allocInit(19, 6);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(57, 8);call #Ultimate.allocInit(15, 9);call #Ultimate.allocInit(12, 10);call #Ultimate.allocInit(29, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(10, 13);call #Ultimate.allocInit(14, 14);call #Ultimate.allocInit(14, 15);call #Ultimate.allocInit(37, 16);call #Ultimate.allocInit(20, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(7, 19);call write~init~int(114, 19, 0, 1);call write~init~int(101, 19, 1, 1);call write~init~int(119, 19, 2, 1);call write~init~int(105, 19, 3, 1);call write~init~int(110, 19, 4, 1);call write~init~int(100, 19, 5, 1);call write~init~int(0, 19, 6, 1);call #Ultimate.allocInit(15, 20);call #Ultimate.allocInit(28, 21);call #Ultimate.allocInit(4, 22);call write~init~int(37, 22, 0, 1);call write~init~int(51, 22, 1, 1);call write~init~int(120, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(13, 23);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(16, 25);call #Ultimate.allocInit(7, 26);call write~init~int(109, 26, 0, 1);call write~init~int(97, 26, 1, 1);call write~init~int(115, 26, 2, 1);call write~init~int(116, 26, 3, 1);call write~init~int(101, 26, 4, 1);call write~init~int(114, 26, 5, 1);call write~init~int(0, 26, 6, 1);call #Ultimate.allocInit(6, 27);call write~init~int(115, 27, 0, 1);call write~init~int(108, 27, 1, 1);call write~init~int(97, 27, 2, 1);call write~init~int(118, 27, 3, 1);call write~init~int(101, 27, 4, 1);call write~init~int(0, 27, 5, 1);call #Ultimate.allocInit(9, 28);call #Ultimate.allocInit(35, 29);call #Ultimate.allocInit(11, 30);call #Ultimate.allocInit(10, 31);call #Ultimate.allocInit(14, 32);call #Ultimate.allocInit(12, 33);call #Ultimate.allocInit(5, 34);call write~init~int(44, 34, 0, 1);call write~init~int(32, 34, 1, 1);call write~init~int(82, 34, 2, 1);call write~init~int(79, 34, 3, 1);call write~init~int(0, 34, 4, 1);call #Ultimate.allocInit(23, 35);call #Ultimate.allocInit(29, 36);call #Ultimate.allocInit(5, 37);call write~init~int(49, 37, 0, 1);call write~init~int(46, 37, 1, 1);call write~init~int(48, 37, 2, 1);call write~init~int(52, 37, 3, 1);call write~init~int(0, 37, 4, 1);call #Ultimate.allocInit(5, 38);call write~init~int(37, 38, 0, 1);call write~init~int(115, 38, 1, 1);call write~init~int(37, 38, 2, 1);call write~init~int(100, 38, 3, 1);call write~init~int(0, 38, 4, 1);call #Ultimate.allocInit(34, 39);call #Ultimate.allocInit(30, 40);call #Ultimate.allocInit(29, 41);call #Ultimate.allocInit(17, 42);call #Ultimate.allocInit(5, 43);call write~init~int(114, 43, 0, 1);call write~init~int(101, 43, 1, 1);call write~init~int(97, 43, 2, 1);call write~init~int(100, 43, 3, 1);call write~init~int(0, 43, 4, 1);call #Ultimate.allocInit(5, 44);call write~init~int(114, 44, 0, 1);call write~init~int(101, 44, 1, 1);call write~init~int(97, 44, 2, 1);call write~init~int(100, 44, 3, 1);call write~init~int(0, 44, 4, 1);call #Ultimate.allocInit(9, 45);call #Ultimate.allocInit(1, 46);call write~init~int(0, 46, 0, 1);call #Ultimate.allocInit(29, 47);call #Ultimate.allocInit(28, 48);call #Ultimate.allocInit(6, 49);call write~init~int(119, 49, 0, 1);call write~init~int(114, 49, 1, 1);call write~init~int(105, 49, 2, 1);call write~init~int(116, 49, 3, 1);call write~init~int(101, 49, 4, 1);call write~init~int(0, 49, 5, 1);call #Ultimate.allocInit(6, 50);call write~init~int(119, 50, 0, 1);call write~init~int(114, 50, 1, 1);call write~init~int(105, 50, 2, 1);call write~init~int(116, 50, 3, 1);call write~init~int(101, 50, 4, 1);call write~init~int(0, 50, 5, 1);call #Ultimate.allocInit(10, 51);call #Ultimate.allocInit(31, 52);call #Ultimate.allocInit(40, 53);call #Ultimate.allocInit(3, 54);call write~init~int(112, 54, 0, 1);call write~init~int(116, 54, 1, 1);call write~init~int(0, 54, 2, 1);call #Ultimate.allocInit(5, 55);call write~init~int(112, 55, 0, 1);call write~init~int(116, 55, 1, 1);call write~init~int(37, 55, 2, 1);call write~init~int(100, 55, 3, 1);call write~init~int(0, 55, 4, 1);call #Ultimate.allocInit(6, 56);call write~init~int(112, 56, 0, 1);call write~init~int(116, 56, 1, 1);call write~init~int(37, 56, 2, 1);call write~init~int(100, 56, 3, 1);call write~init~int(110, 56, 4, 1);call write~init~int(0, 56, 5, 1);call #Ultimate.allocInit(3, 57);call write~init~int(112, 57, 0, 1);call write~init~int(116, 57, 1, 1);call write~init~int(0, 57, 2, 1);~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 0;~verbose~0 := 0;~major~0 := 96;~name~0.base, ~name~0.offset := 3, 0;~disable~0 := 0;~#drive0~0.base, ~#drive0~0.offset := 58, 0;call #Ultimate.allocInit(24, 58);call write~init~int(0, ~#drive0~0.base, ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 4 + ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 8 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 12 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 16 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 20 + ~#drive0~0.offset, 4);~#drive1~0.base, ~#drive1~0.offset := 59, 0;call #Ultimate.allocInit(24, 59);call write~init~int(0, ~#drive1~0.base, ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 4 + ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 8 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 12 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 16 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 20 + ~#drive1~0.offset, 4);~#drive2~0.base, ~#drive2~0.offset := 60, 0;call #Ultimate.allocInit(24, 60);call write~init~int(0, ~#drive2~0.base, ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 4 + ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 8 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 12 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 16 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 20 + ~#drive2~0.offset, 4);~#drive3~0.base, ~#drive3~0.offset := 61, 0;call #Ultimate.allocInit(24, 61);call write~init~int(0, ~#drive3~0.base, ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 4 + ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 8 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 12 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 16 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 20 + ~#drive3~0.offset, 4);~drives~0.base, ~drives~0.offset := ~drives~0.base[0 := ~#drive0~0.base], ~drives~0.offset[0 := ~#drive0~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[1 := ~#drive1~0.base], ~drives~0.offset[1 := ~#drive1~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[2 := ~#drive2~0.base], ~drives~0.offset[2 := ~#drive2~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[3 := ~#drive3~0.base], ~drives~0.offset[3 := ~#drive3~0.offset];~#pt_mutex~0.base, ~#pt_mutex~0.offset := 62, 0;call #Ultimate.allocInit(156, 62);call write~init~int(1, ~#pt_mutex~0.base, ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 4 + ~#pt_mutex~0.offset, 4);call write~init~int(3735899821, ~#pt_mutex~0.base, 8 + ~#pt_mutex~0.offset, 4);call write~init~int(4294967295, ~#pt_mutex~0.base, 12 + ~#pt_mutex~0.offset, 4);call write~init~$Pointer$(0, -1, ~#pt_mutex~0.base, 16 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 24 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 32 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 40 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(6, 0, ~#pt_mutex~0.base, 48 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 56 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 60 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 80 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 88 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 96 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 104 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 112 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 120 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 128 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(7, 0, ~#pt_mutex~0.base, 136 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 144 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 148 + ~#pt_mutex~0.offset, 8);~#pt~0.base, ~#pt~0.offset := 63, 0;call #Ultimate.allocInit(880, 63);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt~0.base);~#pt_scratch~0.base, ~#pt_scratch~0.offset := 64, 0;call #Ultimate.allocInit(512, 64);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt_scratch~0.base);~#pt_fops~0.base, ~#pt_fops~0.offset := 65, 0;call #Ultimate.allocInit(216, 65);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#pt_fops~0.base, ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~noop_llseek.base, #funAddr~noop_llseek.offset, ~#pt_fops~0.base, 8 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_read.base, #funAddr~pt_read.offset, ~#pt_fops~0.base, 16 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_write.base, #funAddr~pt_write.offset, ~#pt_fops~0.base, 24 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 32 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 40 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 48 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 56 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_ioctl.base, #funAddr~pt_ioctl.offset, ~#pt_fops~0.base, 64 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 72 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 80 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_open.base, #funAddr~pt_open.offset, ~#pt_fops~0.base, 88 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 96 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_release.base, #funAddr~pt_release.offset, ~#pt_fops~0.base, 104 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 112 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 120 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 128 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 136 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 144 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 152 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 160 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 168 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 176 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 184 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 192 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 200 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 208 + ~#pt_fops~0.offset, 8);~pt_class~0.base, ~pt_class~0.offset := 0, 0;~ldvarg7~0 := 0;~pt_fops_group1~0.base, ~pt_fops_group1~0.offset := 0, 0;~ldvarg3~0.base, ~ldvarg3~0.offset := 0, 0;~ldvarg0~0.base, ~ldvarg0~0.offset := 0, 0;~pt_fops_group2~0.base, ~pt_fops_group2~0.offset := 0, 0;~ldvarg5~0 := 0;~ldv_retval_pt_open~0 := 0;~ldvarg6~0.base, ~ldvarg6~0.offset := 0, 0;~ldvarg8~0 := 0;~ldvarg1~0 := 0;~ldv_retval_pt_init~0 := 0;~ldvarg4~0.base, ~ldvarg4~0.offset := 0, 0;~ldvarg2~0.base, ~ldvarg2~0.offset := 0, 0;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 0;~ldv_mutex_lock~0 := 0;~ldv_mutex_mutex_of_device~0 := 0;~ldv_mutex_pt_mutex~0 := 0; {5075#true} is VALID [2022-02-20 21:44:39,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {5075#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet291#1, main_#t~switch292#1, main_#t~nondet293#1, main_#t~switch294#1, main_#t~ret295#1, main_#t~ret296#1, main_#t~ret297#1, main_#t~ret298#1, main_#t~ret299#1, main_#t~ret300#1, main_#t~nondet301#1, main_#t~switch302#1, main_#t~ret303#1, main_~tmp~25#1, main_~tmp___0~12#1, main_~tmp___1~11#1;havoc main_~tmp~25#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~11#1;assume { :begin_inline_ldv_initialize } true;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 1;~ldv_mutex_lock~0 := 1;~ldv_mutex_mutex_of_device~0 := 1;~ldv_mutex_pt_mutex~0 := 1; {5075#true} is VALID [2022-02-20 21:44:39,901 INFO L290 TraceCheckUtils]: 2: Hoare triple {5075#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {5077#(= ~ldv_state_variable_1~0 0)} is VALID [2022-02-20 21:44:39,901 INFO L290 TraceCheckUtils]: 3: Hoare triple {5077#(= ~ldv_state_variable_1~0 0)} assume -2147483648 <= main_#t~nondet291#1 && main_#t~nondet291#1 <= 2147483647;main_~tmp~25#1 := main_#t~nondet291#1;havoc main_#t~nondet291#1;main_#t~switch292#1 := 0 == main_~tmp~25#1; {5077#(= ~ldv_state_variable_1~0 0)} is VALID [2022-02-20 21:44:39,902 INFO L290 TraceCheckUtils]: 4: Hoare triple {5077#(= ~ldv_state_variable_1~0 0)} assume main_#t~switch292#1; {5077#(= ~ldv_state_variable_1~0 0)} is VALID [2022-02-20 21:44:39,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {5077#(= ~ldv_state_variable_1~0 0)} assume 0 != ~ldv_state_variable_1~0;assume -2147483648 <= main_#t~nondet293#1 && main_#t~nondet293#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet293#1;havoc main_#t~nondet293#1;main_#t~switch294#1 := 0 == main_~tmp___0~12#1; {5076#false} is VALID [2022-02-20 21:44:39,902 INFO L290 TraceCheckUtils]: 6: Hoare triple {5076#false} assume !main_#t~switch294#1;main_#t~switch294#1 := main_#t~switch294#1 || 1 == main_~tmp___0~12#1; {5076#false} is VALID [2022-02-20 21:44:39,903 INFO L290 TraceCheckUtils]: 7: Hoare triple {5076#false} assume main_#t~switch294#1; {5076#false} is VALID [2022-02-20 21:44:39,903 INFO L290 TraceCheckUtils]: 8: Hoare triple {5076#false} assume 1 == ~ldv_state_variable_1~0;assume { :begin_inline_pt_open } true;pt_open_#in~inode#1.base, pt_open_#in~inode#1.offset, pt_open_#in~file#1.base, pt_open_#in~file#1.offset := ~pt_fops_group1~0.base, ~pt_fops_group1~0.offset, ~pt_fops_group2~0.base, ~pt_fops_group2~0.offset;havoc pt_open_#res#1;havoc pt_open_#t~ret201#1, pt_open_#t~mem203#1, pt_open_#t~short204#1, pt_open_#t~ret205#1, pt_open_#t~ret206#1, pt_open_#t~mem207#1, pt_open_#t~mem208#1, pt_open_#t~mem209#1, pt_open_#t~short210#1, pt_open_#t~ret211#1, pt_open_#t~mem212#1, pt_open_#t~ret213#1.base, pt_open_#t~ret213#1.offset, pt_open_#t~mem214#1.base, pt_open_#t~mem214#1.offset, pt_open_#t~nondet215#1, pt_open_#t~nondet202#1, pt_open_~inode#1.base, pt_open_~inode#1.offset, pt_open_~file#1.base, pt_open_~file#1.offset, pt_open_~unit~1#1, pt_open_~tmp~19#1, pt_open_~tape~1#1.base, pt_open_~tape~1#1.offset, pt_open_~err~0#1, pt_open_~tmp___0~8#1, pt_open_~tmp___1~7#1, pt_open_~tmp___2~7#1.base, pt_open_~tmp___2~7#1.offset;pt_open_~inode#1.base, pt_open_~inode#1.offset := pt_open_#in~inode#1.base, pt_open_#in~inode#1.offset;pt_open_~file#1.base, pt_open_~file#1.offset := pt_open_#in~file#1.base, pt_open_#in~file#1.offset;havoc pt_open_~unit~1#1;havoc pt_open_~tmp~19#1;havoc pt_open_~tape~1#1.base, pt_open_~tape~1#1.offset;havoc pt_open_~err~0#1;havoc pt_open_~tmp___0~8#1;havoc pt_open_~tmp___1~7#1;havoc pt_open_~tmp___2~7#1.base, pt_open_~tmp___2~7#1.offset; {5076#false} is VALID [2022-02-20 21:44:39,903 INFO L272 TraceCheckUtils]: 9: Hoare triple {5076#false} call pt_open_#t~ret201#1 := iminor(pt_open_~inode#1.base, pt_open_~inode#1.offset); {5075#true} is VALID [2022-02-20 21:44:39,903 INFO L290 TraceCheckUtils]: 10: Hoare triple {5075#true} ~inode.base, ~inode.offset := #in~inode.base, #in~inode.offset;call #t~mem13 := read~int(~inode.base, 76 + ~inode.offset, 4);#res := (if 0 == #t~mem13 then 0 else (if 1 == #t~mem13 then 1 else ~bitwiseAnd(#t~mem13, 1048575)));havoc #t~mem13; {5075#true} is VALID [2022-02-20 21:44:39,903 INFO L290 TraceCheckUtils]: 11: Hoare triple {5075#true} assume true; {5075#true} is VALID [2022-02-20 21:44:39,904 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {5075#true} {5076#false} #1861#return; {5076#false} is VALID [2022-02-20 21:44:39,904 INFO L290 TraceCheckUtils]: 13: Hoare triple {5076#false} pt_open_~tmp~19#1 := pt_open_#t~ret201#1;havoc pt_open_#t~ret201#1; {5076#false} is VALID [2022-02-20 21:44:39,904 INFO L290 TraceCheckUtils]: 14: Hoare triple {5076#false} assume 0 == (if pt_open_~tmp~19#1 % 4294967296 % 4294967296 <= 2147483647 then pt_open_~tmp~19#1 % 4294967296 % 4294967296 else pt_open_~tmp~19#1 % 4294967296 % 4294967296 - 4294967296);pt_open_~unit~1#1 := 0; {5076#false} is VALID [2022-02-20 21:44:39,904 INFO L290 TraceCheckUtils]: 15: Hoare triple {5076#false} pt_open_~tape~1#1.base, pt_open_~tape~1#1.offset := ~#pt~0.base, ~#pt~0.offset + 220 * (if pt_open_~unit~1#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then pt_open_~unit~1#1 % 18446744073709551616 % 18446744073709551616 else pt_open_~unit~1#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);assume { :begin_inline_ldv_mutex_lock_8 } true;ldv_mutex_lock_8_#in~ldv_func_arg1#1.base, ldv_mutex_lock_8_#in~ldv_func_arg1#1.offset := ~#pt_mutex~0.base, ~#pt_mutex~0.offset;havoc ldv_mutex_lock_8_~ldv_func_arg1#1.base, ldv_mutex_lock_8_~ldv_func_arg1#1.offset;ldv_mutex_lock_8_~ldv_func_arg1#1.base, ldv_mutex_lock_8_~ldv_func_arg1#1.offset := ldv_mutex_lock_8_#in~ldv_func_arg1#1.base, ldv_mutex_lock_8_#in~ldv_func_arg1#1.offset; {5076#false} is VALID [2022-02-20 21:44:39,904 INFO L272 TraceCheckUtils]: 16: Hoare triple {5076#false} call ldv_mutex_lock_pt_mutex(ldv_mutex_lock_8_~ldv_func_arg1#1.base, ldv_mutex_lock_8_~ldv_func_arg1#1.offset); {5076#false} is VALID [2022-02-20 21:44:39,905 INFO L290 TraceCheckUtils]: 17: Hoare triple {5076#false} ~lock.base, ~lock.offset := #in~lock.base, #in~lock.offset; {5076#false} is VALID [2022-02-20 21:44:39,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {5076#false} assume !(1 == ~ldv_mutex_pt_mutex~0); {5076#false} is VALID [2022-02-20 21:44:39,905 INFO L272 TraceCheckUtils]: 19: Hoare triple {5076#false} call ldv_error(); {5076#false} is VALID [2022-02-20 21:44:39,905 INFO L290 TraceCheckUtils]: 20: Hoare triple {5076#false} assume !false; {5076#false} is VALID [2022-02-20 21:44:39,905 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 21:44:39,906 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 21:44:39,906 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [358114671] [2022-02-20 21:44:39,906 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [358114671] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 21:44:39,906 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 21:44:39,906 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 21:44:39,906 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1473353651] [2022-02-20 21:44:39,907 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 21:44:39,908 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 21 [2022-02-20 21:44:39,908 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 21:44:39,908 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:44:39,954 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:44:39,955 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 21:44:39,955 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 21:44:39,955 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 21:44:39,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 21:44:39,956 INFO L87 Difference]: Start difference. First operand 691 states and 979 transitions. Second operand has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:44:53,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:44:53,717 INFO L93 Difference]: Finished difference Result 1711 states and 2411 transitions. [2022-02-20 21:44:53,717 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 21:44:53,717 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 21 [2022-02-20 21:44:53,718 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 21:44:53,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:44:53,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 2411 transitions. [2022-02-20 21:44:53,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:44:53,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 2411 transitions. [2022-02-20 21:44:53,781 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 2411 transitions. [2022-02-20 21:44:55,527 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2411 edges. 2411 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:44:55,612 INFO L225 Difference]: With dead ends: 1711 [2022-02-20 21:44:55,612 INFO L226 Difference]: Without dead ends: 1023 [2022-02-20 21:44:55,614 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 4 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 21:44:55,616 INFO L933 BasicCegarLoop]: 1267 mSDtfsCounter, 466 mSDsluCounter, 940 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 466 SdHoareTripleChecker+Valid, 2207 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 21:44:55,617 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [466 Valid, 2207 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 21:44:55,619 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1023 states. [2022-02-20 21:44:55,667 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1023 to 995. [2022-02-20 21:44:55,667 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 21:44:55,670 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1023 states. Second operand has 995 states, 702 states have (on average 1.3532763532763532) internal successors, (950), 724 states have internal predecessors, (950), 228 states have call successors, (228), 65 states have call predecessors, (228), 64 states have return successors, (222), 222 states have call predecessors, (222), 222 states have call successors, (222) [2022-02-20 21:44:55,672 INFO L74 IsIncluded]: Start isIncluded. First operand 1023 states. Second operand has 995 states, 702 states have (on average 1.3532763532763532) internal successors, (950), 724 states have internal predecessors, (950), 228 states have call successors, (228), 65 states have call predecessors, (228), 64 states have return successors, (222), 222 states have call predecessors, (222), 222 states have call successors, (222) [2022-02-20 21:44:55,674 INFO L87 Difference]: Start difference. First operand 1023 states. Second operand has 995 states, 702 states have (on average 1.3532763532763532) internal successors, (950), 724 states have internal predecessors, (950), 228 states have call successors, (228), 65 states have call predecessors, (228), 64 states have return successors, (222), 222 states have call predecessors, (222), 222 states have call successors, (222) [2022-02-20 21:44:55,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:44:55,718 INFO L93 Difference]: Finished difference Result 1023 states and 1434 transitions. [2022-02-20 21:44:55,718 INFO L276 IsEmpty]: Start isEmpty. Operand 1023 states and 1434 transitions. [2022-02-20 21:44:55,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:44:55,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:44:55,724 INFO L74 IsIncluded]: Start isIncluded. First operand has 995 states, 702 states have (on average 1.3532763532763532) internal successors, (950), 724 states have internal predecessors, (950), 228 states have call successors, (228), 65 states have call predecessors, (228), 64 states have return successors, (222), 222 states have call predecessors, (222), 222 states have call successors, (222) Second operand 1023 states. [2022-02-20 21:44:55,726 INFO L87 Difference]: Start difference. First operand has 995 states, 702 states have (on average 1.3532763532763532) internal successors, (950), 724 states have internal predecessors, (950), 228 states have call successors, (228), 65 states have call predecessors, (228), 64 states have return successors, (222), 222 states have call predecessors, (222), 222 states have call successors, (222) Second operand 1023 states. [2022-02-20 21:44:55,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:44:55,772 INFO L93 Difference]: Finished difference Result 1023 states and 1434 transitions. [2022-02-20 21:44:55,772 INFO L276 IsEmpty]: Start isEmpty. Operand 1023 states and 1434 transitions. [2022-02-20 21:44:55,775 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:44:55,776 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:44:55,776 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 21:44:55,776 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 21:44:55,778 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 995 states, 702 states have (on average 1.3532763532763532) internal successors, (950), 724 states have internal predecessors, (950), 228 states have call successors, (228), 65 states have call predecessors, (228), 64 states have return successors, (222), 222 states have call predecessors, (222), 222 states have call successors, (222) [2022-02-20 21:44:55,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 995 states to 995 states and 1400 transitions. [2022-02-20 21:44:55,837 INFO L78 Accepts]: Start accepts. Automaton has 995 states and 1400 transitions. Word has length 21 [2022-02-20 21:44:55,838 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 21:44:55,838 INFO L470 AbstractCegarLoop]: Abstraction has 995 states and 1400 transitions. [2022-02-20 21:44:55,841 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 5.666666666666667) internal successors, (17), 3 states have internal predecessors, (17), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:44:55,841 INFO L276 IsEmpty]: Start isEmpty. Operand 995 states and 1400 transitions. [2022-02-20 21:44:55,842 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 21:44:55,842 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 21:44:55,842 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] [2022-02-20 21:44:55,842 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 21:44:55,843 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 21:44:55,844 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 21:44:55,844 INFO L85 PathProgramCache]: Analyzing trace with hash 317112764, now seen corresponding path program 1 times [2022-02-20 21:44:55,844 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 21:44:55,845 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1786358151] [2022-02-20 21:44:55,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:44:55,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 21:44:55,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:44:55,933 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 21:44:55,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:44:55,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {10974#(= ~ldv_state_variable_1~0 |old(~ldv_state_variable_1~0)|)} ~major___0#1 := #in~major___0#1;~name___0#1.base, ~name___0#1.offset := #in~name___0#1.base, #in~name___0#1.offset;assume { :begin_inline_unregister_chrdev } true;unregister_chrdev_#in~major___0#1, unregister_chrdev_#in~name___0#1.base, unregister_chrdev_#in~name___0#1.offset := ~major___0#1, ~name___0#1.base, ~name___0#1.offset;havoc unregister_chrdev_~major___0#1, unregister_chrdev_~name___0#1.base, unregister_chrdev_~name___0#1.offset;unregister_chrdev_~major___0#1 := unregister_chrdev_#in~major___0#1;unregister_chrdev_~name___0#1.base, unregister_chrdev_~name___0#1.offset := unregister_chrdev_#in~name___0#1.base, unregister_chrdev_#in~name___0#1.offset;assume { :begin_inline___unregister_chrdev } true;__unregister_chrdev_#in~arg0#1, __unregister_chrdev_#in~arg1#1, __unregister_chrdev_#in~arg2#1, __unregister_chrdev_#in~arg3#1.base, __unregister_chrdev_#in~arg3#1.offset := unregister_chrdev_~major___0#1, 0, 256, unregister_chrdev_~name___0#1.base, unregister_chrdev_~name___0#1.offset;havoc __unregister_chrdev_~arg0#1, __unregister_chrdev_~arg1#1, __unregister_chrdev_~arg2#1, __unregister_chrdev_~arg3#1.base, __unregister_chrdev_~arg3#1.offset;__unregister_chrdev_~arg0#1 := __unregister_chrdev_#in~arg0#1;__unregister_chrdev_~arg1#1 := __unregister_chrdev_#in~arg1#1;__unregister_chrdev_~arg2#1 := __unregister_chrdev_#in~arg2#1;__unregister_chrdev_~arg3#1.base, __unregister_chrdev_~arg3#1.offset := __unregister_chrdev_#in~arg3#1.base, __unregister_chrdev_#in~arg3#1.offset; {10966#true} is VALID [2022-02-20 21:44:55,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {10966#true} assume { :end_inline___unregister_chrdev } true; {10966#true} is VALID [2022-02-20 21:44:55,949 INFO L290 TraceCheckUtils]: 2: Hoare triple {10966#true} assume { :end_inline_unregister_chrdev } true;~ldv_state_variable_1~0 := 0; {10966#true} is VALID [2022-02-20 21:44:55,950 INFO L290 TraceCheckUtils]: 3: Hoare triple {10966#true} assume true; {10966#true} is VALID [2022-02-20 21:44:55,950 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {10966#true} {10967#false} #1953#return; {10967#false} is VALID [2022-02-20 21:44:55,953 INFO L290 TraceCheckUtils]: 0: Hoare triple {10966#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(72, 2);call #Ultimate.allocInit(3, 3);call write~init~int(112, 3, 0, 1);call write~init~int(116, 3, 1, 1);call write~init~int(0, 3, 2, 1);call #Ultimate.allocInit(124, 4);call #Ultimate.allocInit(27, 5);call #Ultimate.allocInit(19, 6);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(57, 8);call #Ultimate.allocInit(15, 9);call #Ultimate.allocInit(12, 10);call #Ultimate.allocInit(29, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(10, 13);call #Ultimate.allocInit(14, 14);call #Ultimate.allocInit(14, 15);call #Ultimate.allocInit(37, 16);call #Ultimate.allocInit(20, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(7, 19);call write~init~int(114, 19, 0, 1);call write~init~int(101, 19, 1, 1);call write~init~int(119, 19, 2, 1);call write~init~int(105, 19, 3, 1);call write~init~int(110, 19, 4, 1);call write~init~int(100, 19, 5, 1);call write~init~int(0, 19, 6, 1);call #Ultimate.allocInit(15, 20);call #Ultimate.allocInit(28, 21);call #Ultimate.allocInit(4, 22);call write~init~int(37, 22, 0, 1);call write~init~int(51, 22, 1, 1);call write~init~int(120, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(13, 23);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(16, 25);call #Ultimate.allocInit(7, 26);call write~init~int(109, 26, 0, 1);call write~init~int(97, 26, 1, 1);call write~init~int(115, 26, 2, 1);call write~init~int(116, 26, 3, 1);call write~init~int(101, 26, 4, 1);call write~init~int(114, 26, 5, 1);call write~init~int(0, 26, 6, 1);call #Ultimate.allocInit(6, 27);call write~init~int(115, 27, 0, 1);call write~init~int(108, 27, 1, 1);call write~init~int(97, 27, 2, 1);call write~init~int(118, 27, 3, 1);call write~init~int(101, 27, 4, 1);call write~init~int(0, 27, 5, 1);call #Ultimate.allocInit(9, 28);call #Ultimate.allocInit(35, 29);call #Ultimate.allocInit(11, 30);call #Ultimate.allocInit(10, 31);call #Ultimate.allocInit(14, 32);call #Ultimate.allocInit(12, 33);call #Ultimate.allocInit(5, 34);call write~init~int(44, 34, 0, 1);call write~init~int(32, 34, 1, 1);call write~init~int(82, 34, 2, 1);call write~init~int(79, 34, 3, 1);call write~init~int(0, 34, 4, 1);call #Ultimate.allocInit(23, 35);call #Ultimate.allocInit(29, 36);call #Ultimate.allocInit(5, 37);call write~init~int(49, 37, 0, 1);call write~init~int(46, 37, 1, 1);call write~init~int(48, 37, 2, 1);call write~init~int(52, 37, 3, 1);call write~init~int(0, 37, 4, 1);call #Ultimate.allocInit(5, 38);call write~init~int(37, 38, 0, 1);call write~init~int(115, 38, 1, 1);call write~init~int(37, 38, 2, 1);call write~init~int(100, 38, 3, 1);call write~init~int(0, 38, 4, 1);call #Ultimate.allocInit(34, 39);call #Ultimate.allocInit(30, 40);call #Ultimate.allocInit(29, 41);call #Ultimate.allocInit(17, 42);call #Ultimate.allocInit(5, 43);call write~init~int(114, 43, 0, 1);call write~init~int(101, 43, 1, 1);call write~init~int(97, 43, 2, 1);call write~init~int(100, 43, 3, 1);call write~init~int(0, 43, 4, 1);call #Ultimate.allocInit(5, 44);call write~init~int(114, 44, 0, 1);call write~init~int(101, 44, 1, 1);call write~init~int(97, 44, 2, 1);call write~init~int(100, 44, 3, 1);call write~init~int(0, 44, 4, 1);call #Ultimate.allocInit(9, 45);call #Ultimate.allocInit(1, 46);call write~init~int(0, 46, 0, 1);call #Ultimate.allocInit(29, 47);call #Ultimate.allocInit(28, 48);call #Ultimate.allocInit(6, 49);call write~init~int(119, 49, 0, 1);call write~init~int(114, 49, 1, 1);call write~init~int(105, 49, 2, 1);call write~init~int(116, 49, 3, 1);call write~init~int(101, 49, 4, 1);call write~init~int(0, 49, 5, 1);call #Ultimate.allocInit(6, 50);call write~init~int(119, 50, 0, 1);call write~init~int(114, 50, 1, 1);call write~init~int(105, 50, 2, 1);call write~init~int(116, 50, 3, 1);call write~init~int(101, 50, 4, 1);call write~init~int(0, 50, 5, 1);call #Ultimate.allocInit(10, 51);call #Ultimate.allocInit(31, 52);call #Ultimate.allocInit(40, 53);call #Ultimate.allocInit(3, 54);call write~init~int(112, 54, 0, 1);call write~init~int(116, 54, 1, 1);call write~init~int(0, 54, 2, 1);call #Ultimate.allocInit(5, 55);call write~init~int(112, 55, 0, 1);call write~init~int(116, 55, 1, 1);call write~init~int(37, 55, 2, 1);call write~init~int(100, 55, 3, 1);call write~init~int(0, 55, 4, 1);call #Ultimate.allocInit(6, 56);call write~init~int(112, 56, 0, 1);call write~init~int(116, 56, 1, 1);call write~init~int(37, 56, 2, 1);call write~init~int(100, 56, 3, 1);call write~init~int(110, 56, 4, 1);call write~init~int(0, 56, 5, 1);call #Ultimate.allocInit(3, 57);call write~init~int(112, 57, 0, 1);call write~init~int(116, 57, 1, 1);call write~init~int(0, 57, 2, 1);~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 0;~verbose~0 := 0;~major~0 := 96;~name~0.base, ~name~0.offset := 3, 0;~disable~0 := 0;~#drive0~0.base, ~#drive0~0.offset := 58, 0;call #Ultimate.allocInit(24, 58);call write~init~int(0, ~#drive0~0.base, ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 4 + ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 8 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 12 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 16 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 20 + ~#drive0~0.offset, 4);~#drive1~0.base, ~#drive1~0.offset := 59, 0;call #Ultimate.allocInit(24, 59);call write~init~int(0, ~#drive1~0.base, ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 4 + ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 8 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 12 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 16 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 20 + ~#drive1~0.offset, 4);~#drive2~0.base, ~#drive2~0.offset := 60, 0;call #Ultimate.allocInit(24, 60);call write~init~int(0, ~#drive2~0.base, ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 4 + ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 8 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 12 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 16 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 20 + ~#drive2~0.offset, 4);~#drive3~0.base, ~#drive3~0.offset := 61, 0;call #Ultimate.allocInit(24, 61);call write~init~int(0, ~#drive3~0.base, ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 4 + ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 8 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 12 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 16 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 20 + ~#drive3~0.offset, 4);~drives~0.base, ~drives~0.offset := ~drives~0.base[0 := ~#drive0~0.base], ~drives~0.offset[0 := ~#drive0~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[1 := ~#drive1~0.base], ~drives~0.offset[1 := ~#drive1~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[2 := ~#drive2~0.base], ~drives~0.offset[2 := ~#drive2~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[3 := ~#drive3~0.base], ~drives~0.offset[3 := ~#drive3~0.offset];~#pt_mutex~0.base, ~#pt_mutex~0.offset := 62, 0;call #Ultimate.allocInit(156, 62);call write~init~int(1, ~#pt_mutex~0.base, ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 4 + ~#pt_mutex~0.offset, 4);call write~init~int(3735899821, ~#pt_mutex~0.base, 8 + ~#pt_mutex~0.offset, 4);call write~init~int(4294967295, ~#pt_mutex~0.base, 12 + ~#pt_mutex~0.offset, 4);call write~init~$Pointer$(0, -1, ~#pt_mutex~0.base, 16 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 24 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 32 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 40 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(6, 0, ~#pt_mutex~0.base, 48 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 56 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 60 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 80 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 88 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 96 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 104 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 112 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 120 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 128 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(7, 0, ~#pt_mutex~0.base, 136 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 144 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 148 + ~#pt_mutex~0.offset, 8);~#pt~0.base, ~#pt~0.offset := 63, 0;call #Ultimate.allocInit(880, 63);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt~0.base);~#pt_scratch~0.base, ~#pt_scratch~0.offset := 64, 0;call #Ultimate.allocInit(512, 64);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt_scratch~0.base);~#pt_fops~0.base, ~#pt_fops~0.offset := 65, 0;call #Ultimate.allocInit(216, 65);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#pt_fops~0.base, ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~noop_llseek.base, #funAddr~noop_llseek.offset, ~#pt_fops~0.base, 8 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_read.base, #funAddr~pt_read.offset, ~#pt_fops~0.base, 16 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_write.base, #funAddr~pt_write.offset, ~#pt_fops~0.base, 24 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 32 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 40 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 48 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 56 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_ioctl.base, #funAddr~pt_ioctl.offset, ~#pt_fops~0.base, 64 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 72 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 80 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_open.base, #funAddr~pt_open.offset, ~#pt_fops~0.base, 88 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 96 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_release.base, #funAddr~pt_release.offset, ~#pt_fops~0.base, 104 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 112 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 120 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 128 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 136 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 144 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 152 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 160 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 168 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 176 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 184 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 192 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 200 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 208 + ~#pt_fops~0.offset, 8);~pt_class~0.base, ~pt_class~0.offset := 0, 0;~ldvarg7~0 := 0;~pt_fops_group1~0.base, ~pt_fops_group1~0.offset := 0, 0;~ldvarg3~0.base, ~ldvarg3~0.offset := 0, 0;~ldvarg0~0.base, ~ldvarg0~0.offset := 0, 0;~pt_fops_group2~0.base, ~pt_fops_group2~0.offset := 0, 0;~ldvarg5~0 := 0;~ldv_retval_pt_open~0 := 0;~ldvarg6~0.base, ~ldvarg6~0.offset := 0, 0;~ldvarg8~0 := 0;~ldvarg1~0 := 0;~ldv_retval_pt_init~0 := 0;~ldvarg4~0.base, ~ldvarg4~0.offset := 0, 0;~ldvarg2~0.base, ~ldvarg2~0.offset := 0, 0;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 0;~ldv_mutex_lock~0 := 0;~ldv_mutex_mutex_of_device~0 := 0;~ldv_mutex_pt_mutex~0 := 0; {10966#true} is VALID [2022-02-20 21:44:55,954 INFO L290 TraceCheckUtils]: 1: Hoare triple {10966#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet291#1, main_#t~switch292#1, main_#t~nondet293#1, main_#t~switch294#1, main_#t~ret295#1, main_#t~ret296#1, main_#t~ret297#1, main_#t~ret298#1, main_#t~ret299#1, main_#t~ret300#1, main_#t~nondet301#1, main_#t~switch302#1, main_#t~ret303#1, main_~tmp~25#1, main_~tmp___0~12#1, main_~tmp___1~11#1;havoc main_~tmp~25#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~11#1;assume { :begin_inline_ldv_initialize } true;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 1;~ldv_mutex_lock~0 := 1;~ldv_mutex_mutex_of_device~0 := 1;~ldv_mutex_pt_mutex~0 := 1; {10966#true} is VALID [2022-02-20 21:44:55,955 INFO L290 TraceCheckUtils]: 2: Hoare triple {10966#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {10968#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 21:44:55,955 INFO L290 TraceCheckUtils]: 3: Hoare triple {10968#(= ~ldv_state_variable_0~0 1)} assume -2147483648 <= main_#t~nondet291#1 && main_#t~nondet291#1 <= 2147483647;main_~tmp~25#1 := main_#t~nondet291#1;havoc main_#t~nondet291#1;main_#t~switch292#1 := 0 == main_~tmp~25#1; {10968#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 21:44:55,956 INFO L290 TraceCheckUtils]: 4: Hoare triple {10968#(= ~ldv_state_variable_0~0 1)} assume !main_#t~switch292#1;main_#t~switch292#1 := main_#t~switch292#1 || 1 == main_~tmp~25#1; {10968#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 21:44:55,956 INFO L290 TraceCheckUtils]: 5: Hoare triple {10968#(= ~ldv_state_variable_0~0 1)} assume main_#t~switch292#1; {10968#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 21:44:55,956 INFO L290 TraceCheckUtils]: 6: Hoare triple {10968#(= ~ldv_state_variable_0~0 1)} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet301#1 && main_#t~nondet301#1 <= 2147483647;main_~tmp___1~11#1 := main_#t~nondet301#1;havoc main_#t~nondet301#1;main_#t~switch302#1 := 0 == main_~tmp___1~11#1; {10968#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 21:44:55,957 INFO L290 TraceCheckUtils]: 7: Hoare triple {10968#(= ~ldv_state_variable_0~0 1)} assume main_#t~switch302#1; {10968#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 21:44:55,957 INFO L290 TraceCheckUtils]: 8: Hoare triple {10968#(= ~ldv_state_variable_0~0 1)} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_pt_exit } true;havoc pt_exit_#t~mem288#1, pt_exit_#t~mem289#1, pt_exit_#t~mem290#1.base, pt_exit_#t~mem290#1.offset, pt_exit_~unit~3#1;havoc pt_exit_~unit~3#1;pt_exit_~unit~3#1 := 0; {10967#false} is VALID [2022-02-20 21:44:55,957 INFO L290 TraceCheckUtils]: 9: Hoare triple {10967#false} assume !(pt_exit_~unit~3#1 <= 3); {10967#false} is VALID [2022-02-20 21:44:55,957 INFO L290 TraceCheckUtils]: 10: Hoare triple {10967#false} assume { :begin_inline_class_destroy } true;class_destroy_#in~arg0#1.base, class_destroy_#in~arg0#1.offset := ~pt_class~0.base, ~pt_class~0.offset;havoc class_destroy_~arg0#1.base, class_destroy_~arg0#1.offset;class_destroy_~arg0#1.base, class_destroy_~arg0#1.offset := class_destroy_#in~arg0#1.base, class_destroy_#in~arg0#1.offset; {10967#false} is VALID [2022-02-20 21:44:55,958 INFO L290 TraceCheckUtils]: 11: Hoare triple {10967#false} assume { :end_inline_class_destroy } true; {10967#false} is VALID [2022-02-20 21:44:55,958 INFO L272 TraceCheckUtils]: 12: Hoare triple {10967#false} call ldv_unregister_chrdev_17(~major~0, ~name~0.base, ~name~0.offset); {10974#(= ~ldv_state_variable_1~0 |old(~ldv_state_variable_1~0)|)} is VALID [2022-02-20 21:44:55,958 INFO L290 TraceCheckUtils]: 13: Hoare triple {10974#(= ~ldv_state_variable_1~0 |old(~ldv_state_variable_1~0)|)} ~major___0#1 := #in~major___0#1;~name___0#1.base, ~name___0#1.offset := #in~name___0#1.base, #in~name___0#1.offset;assume { :begin_inline_unregister_chrdev } true;unregister_chrdev_#in~major___0#1, unregister_chrdev_#in~name___0#1.base, unregister_chrdev_#in~name___0#1.offset := ~major___0#1, ~name___0#1.base, ~name___0#1.offset;havoc unregister_chrdev_~major___0#1, unregister_chrdev_~name___0#1.base, unregister_chrdev_~name___0#1.offset;unregister_chrdev_~major___0#1 := unregister_chrdev_#in~major___0#1;unregister_chrdev_~name___0#1.base, unregister_chrdev_~name___0#1.offset := unregister_chrdev_#in~name___0#1.base, unregister_chrdev_#in~name___0#1.offset;assume { :begin_inline___unregister_chrdev } true;__unregister_chrdev_#in~arg0#1, __unregister_chrdev_#in~arg1#1, __unregister_chrdev_#in~arg2#1, __unregister_chrdev_#in~arg3#1.base, __unregister_chrdev_#in~arg3#1.offset := unregister_chrdev_~major___0#1, 0, 256, unregister_chrdev_~name___0#1.base, unregister_chrdev_~name___0#1.offset;havoc __unregister_chrdev_~arg0#1, __unregister_chrdev_~arg1#1, __unregister_chrdev_~arg2#1, __unregister_chrdev_~arg3#1.base, __unregister_chrdev_~arg3#1.offset;__unregister_chrdev_~arg0#1 := __unregister_chrdev_#in~arg0#1;__unregister_chrdev_~arg1#1 := __unregister_chrdev_#in~arg1#1;__unregister_chrdev_~arg2#1 := __unregister_chrdev_#in~arg2#1;__unregister_chrdev_~arg3#1.base, __unregister_chrdev_~arg3#1.offset := __unregister_chrdev_#in~arg3#1.base, __unregister_chrdev_#in~arg3#1.offset; {10966#true} is VALID [2022-02-20 21:44:55,958 INFO L290 TraceCheckUtils]: 14: Hoare triple {10966#true} assume { :end_inline___unregister_chrdev } true; {10966#true} is VALID [2022-02-20 21:44:55,958 INFO L290 TraceCheckUtils]: 15: Hoare triple {10966#true} assume { :end_inline_unregister_chrdev } true;~ldv_state_variable_1~0 := 0; {10966#true} is VALID [2022-02-20 21:44:55,959 INFO L290 TraceCheckUtils]: 16: Hoare triple {10966#true} assume true; {10966#true} is VALID [2022-02-20 21:44:55,959 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {10966#true} {10967#false} #1953#return; {10967#false} is VALID [2022-02-20 21:44:55,959 INFO L290 TraceCheckUtils]: 18: Hoare triple {10967#false} pt_exit_~unit~3#1 := 0; {10967#false} is VALID [2022-02-20 21:44:55,960 INFO L290 TraceCheckUtils]: 19: Hoare triple {10967#false} assume !(pt_exit_~unit~3#1 <= 3); {10967#false} is VALID [2022-02-20 21:44:55,960 INFO L290 TraceCheckUtils]: 20: Hoare triple {10967#false} assume { :end_inline_pt_exit } true;~ldv_state_variable_0~0 := 2; {10967#false} is VALID [2022-02-20 21:44:55,960 INFO L290 TraceCheckUtils]: 21: Hoare triple {10967#false} assume { :begin_inline_ldv_check_final_state } true; {10967#false} is VALID [2022-02-20 21:44:55,960 INFO L290 TraceCheckUtils]: 22: Hoare triple {10967#false} assume !(1 == ~ldv_mutex_cred_guard_mutex_of_signal_struct~0); {10967#false} is VALID [2022-02-20 21:44:55,960 INFO L272 TraceCheckUtils]: 23: Hoare triple {10967#false} call ldv_error(); {10967#false} is VALID [2022-02-20 21:44:55,961 INFO L290 TraceCheckUtils]: 24: Hoare triple {10967#false} assume !false; {10967#false} is VALID [2022-02-20 21:44:55,961 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 21:44:55,961 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 21:44:55,962 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1786358151] [2022-02-20 21:44:55,962 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1786358151] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 21:44:55,962 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 21:44:55,962 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 21:44:55,962 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1295555481] [2022-02-20 21:44:55,963 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 21:44:55,963 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-02-20 21:44:55,963 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 21:44:55,964 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:44:55,987 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:44:55,988 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 21:44:55,988 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 21:44:55,989 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 21:44:55,989 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 21:44:55,989 INFO L87 Difference]: Start difference. First operand 995 states and 1400 transitions. Second operand has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:45:05,440 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [] [2022-02-20 21:45:11,195 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [] [2022-02-20 21:45:14,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:45:14,057 INFO L93 Difference]: Finished difference Result 2555 states and 3603 transitions. [2022-02-20 21:45:14,057 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 21:45:14,057 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-02-20 21:45:14,057 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 21:45:14,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:45:14,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 2737 transitions. [2022-02-20 21:45:14,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:45:14,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 2737 transitions. [2022-02-20 21:45:14,158 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 2737 transitions. [2022-02-20 21:45:16,312 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2737 edges. 2737 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:45:16,448 INFO L225 Difference]: With dead ends: 2555 [2022-02-20 21:45:16,448 INFO L226 Difference]: Without dead ends: 1563 [2022-02-20 21:45:16,454 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 21:45:16,457 INFO L933 BasicCegarLoop]: 1523 mSDtfsCounter, 1080 mSDsluCounter, 676 mSDsCounter, 0 mSdLazyCounter, 887 mSolverCounterSat, 467 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1218 SdHoareTripleChecker+Valid, 2199 SdHoareTripleChecker+Invalid, 1356 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 467 IncrementalHoareTripleChecker+Valid, 887 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.6s IncrementalHoareTripleChecker+Time [2022-02-20 21:45:16,459 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1218 Valid, 2199 Invalid, 1356 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [467 Valid, 887 Invalid, 2 Unknown, 0 Unchecked, 6.6s Time] [2022-02-20 21:45:16,467 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1563 states. [2022-02-20 21:45:16,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1563 to 1559. [2022-02-20 21:45:16,505 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 21:45:16,509 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1563 states. Second operand has 1559 states, 1100 states have (on average 1.3536363636363635) internal successors, (1489), 1130 states have internal predecessors, (1489), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:16,512 INFO L74 IsIncluded]: Start isIncluded. First operand 1563 states. Second operand has 1559 states, 1100 states have (on average 1.3536363636363635) internal successors, (1489), 1130 states have internal predecessors, (1489), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:16,515 INFO L87 Difference]: Start difference. First operand 1563 states. Second operand has 1559 states, 1100 states have (on average 1.3536363636363635) internal successors, (1489), 1130 states have internal predecessors, (1489), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:16,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:45:16,610 INFO L93 Difference]: Finished difference Result 1563 states and 2200 transitions. [2022-02-20 21:45:16,611 INFO L276 IsEmpty]: Start isEmpty. Operand 1563 states and 2200 transitions. [2022-02-20 21:45:16,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:45:16,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:45:16,619 INFO L74 IsIncluded]: Start isIncluded. First operand has 1559 states, 1100 states have (on average 1.3536363636363635) internal successors, (1489), 1130 states have internal predecessors, (1489), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) Second operand 1563 states. [2022-02-20 21:45:16,634 INFO L87 Difference]: Start difference. First operand has 1559 states, 1100 states have (on average 1.3536363636363635) internal successors, (1489), 1130 states have internal predecessors, (1489), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) Second operand 1563 states. [2022-02-20 21:45:16,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:45:16,733 INFO L93 Difference]: Finished difference Result 1563 states and 2200 transitions. [2022-02-20 21:45:16,736 INFO L276 IsEmpty]: Start isEmpty. Operand 1563 states and 2200 transitions. [2022-02-20 21:45:16,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:45:16,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:45:16,741 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 21:45:16,741 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 21:45:16,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1559 states, 1100 states have (on average 1.3536363636363635) internal successors, (1489), 1130 states have internal predecessors, (1489), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:16,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1559 states to 1559 states and 2197 transitions. [2022-02-20 21:45:16,909 INFO L78 Accepts]: Start accepts. Automaton has 1559 states and 2197 transitions. Word has length 25 [2022-02-20 21:45:16,909 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 21:45:16,909 INFO L470 AbstractCegarLoop]: Abstraction has 1559 states and 2197 transitions. [2022-02-20 21:45:16,909 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 5.5) internal successors, (22), 3 states have internal predecessors, (22), 1 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 21:45:16,910 INFO L276 IsEmpty]: Start isEmpty. Operand 1559 states and 2197 transitions. [2022-02-20 21:45:16,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 21:45:16,910 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 21:45:16,911 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] [2022-02-20 21:45:16,911 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 21:45:16,911 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 21:45:16,911 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 21:45:16,912 INFO L85 PathProgramCache]: Analyzing trace with hash -781514518, now seen corresponding path program 1 times [2022-02-20 21:45:16,912 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 21:45:16,912 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1894696466] [2022-02-20 21:45:16,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:45:16,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 21:45:16,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:45:16,967 INFO L290 TraceCheckUtils]: 0: Hoare triple {19891#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(72, 2);call #Ultimate.allocInit(3, 3);call write~init~int(112, 3, 0, 1);call write~init~int(116, 3, 1, 1);call write~init~int(0, 3, 2, 1);call #Ultimate.allocInit(124, 4);call #Ultimate.allocInit(27, 5);call #Ultimate.allocInit(19, 6);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(57, 8);call #Ultimate.allocInit(15, 9);call #Ultimate.allocInit(12, 10);call #Ultimate.allocInit(29, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(10, 13);call #Ultimate.allocInit(14, 14);call #Ultimate.allocInit(14, 15);call #Ultimate.allocInit(37, 16);call #Ultimate.allocInit(20, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(7, 19);call write~init~int(114, 19, 0, 1);call write~init~int(101, 19, 1, 1);call write~init~int(119, 19, 2, 1);call write~init~int(105, 19, 3, 1);call write~init~int(110, 19, 4, 1);call write~init~int(100, 19, 5, 1);call write~init~int(0, 19, 6, 1);call #Ultimate.allocInit(15, 20);call #Ultimate.allocInit(28, 21);call #Ultimate.allocInit(4, 22);call write~init~int(37, 22, 0, 1);call write~init~int(51, 22, 1, 1);call write~init~int(120, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(13, 23);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(16, 25);call #Ultimate.allocInit(7, 26);call write~init~int(109, 26, 0, 1);call write~init~int(97, 26, 1, 1);call write~init~int(115, 26, 2, 1);call write~init~int(116, 26, 3, 1);call write~init~int(101, 26, 4, 1);call write~init~int(114, 26, 5, 1);call write~init~int(0, 26, 6, 1);call #Ultimate.allocInit(6, 27);call write~init~int(115, 27, 0, 1);call write~init~int(108, 27, 1, 1);call write~init~int(97, 27, 2, 1);call write~init~int(118, 27, 3, 1);call write~init~int(101, 27, 4, 1);call write~init~int(0, 27, 5, 1);call #Ultimate.allocInit(9, 28);call #Ultimate.allocInit(35, 29);call #Ultimate.allocInit(11, 30);call #Ultimate.allocInit(10, 31);call #Ultimate.allocInit(14, 32);call #Ultimate.allocInit(12, 33);call #Ultimate.allocInit(5, 34);call write~init~int(44, 34, 0, 1);call write~init~int(32, 34, 1, 1);call write~init~int(82, 34, 2, 1);call write~init~int(79, 34, 3, 1);call write~init~int(0, 34, 4, 1);call #Ultimate.allocInit(23, 35);call #Ultimate.allocInit(29, 36);call #Ultimate.allocInit(5, 37);call write~init~int(49, 37, 0, 1);call write~init~int(46, 37, 1, 1);call write~init~int(48, 37, 2, 1);call write~init~int(52, 37, 3, 1);call write~init~int(0, 37, 4, 1);call #Ultimate.allocInit(5, 38);call write~init~int(37, 38, 0, 1);call write~init~int(115, 38, 1, 1);call write~init~int(37, 38, 2, 1);call write~init~int(100, 38, 3, 1);call write~init~int(0, 38, 4, 1);call #Ultimate.allocInit(34, 39);call #Ultimate.allocInit(30, 40);call #Ultimate.allocInit(29, 41);call #Ultimate.allocInit(17, 42);call #Ultimate.allocInit(5, 43);call write~init~int(114, 43, 0, 1);call write~init~int(101, 43, 1, 1);call write~init~int(97, 43, 2, 1);call write~init~int(100, 43, 3, 1);call write~init~int(0, 43, 4, 1);call #Ultimate.allocInit(5, 44);call write~init~int(114, 44, 0, 1);call write~init~int(101, 44, 1, 1);call write~init~int(97, 44, 2, 1);call write~init~int(100, 44, 3, 1);call write~init~int(0, 44, 4, 1);call #Ultimate.allocInit(9, 45);call #Ultimate.allocInit(1, 46);call write~init~int(0, 46, 0, 1);call #Ultimate.allocInit(29, 47);call #Ultimate.allocInit(28, 48);call #Ultimate.allocInit(6, 49);call write~init~int(119, 49, 0, 1);call write~init~int(114, 49, 1, 1);call write~init~int(105, 49, 2, 1);call write~init~int(116, 49, 3, 1);call write~init~int(101, 49, 4, 1);call write~init~int(0, 49, 5, 1);call #Ultimate.allocInit(6, 50);call write~init~int(119, 50, 0, 1);call write~init~int(114, 50, 1, 1);call write~init~int(105, 50, 2, 1);call write~init~int(116, 50, 3, 1);call write~init~int(101, 50, 4, 1);call write~init~int(0, 50, 5, 1);call #Ultimate.allocInit(10, 51);call #Ultimate.allocInit(31, 52);call #Ultimate.allocInit(40, 53);call #Ultimate.allocInit(3, 54);call write~init~int(112, 54, 0, 1);call write~init~int(116, 54, 1, 1);call write~init~int(0, 54, 2, 1);call #Ultimate.allocInit(5, 55);call write~init~int(112, 55, 0, 1);call write~init~int(116, 55, 1, 1);call write~init~int(37, 55, 2, 1);call write~init~int(100, 55, 3, 1);call write~init~int(0, 55, 4, 1);call #Ultimate.allocInit(6, 56);call write~init~int(112, 56, 0, 1);call write~init~int(116, 56, 1, 1);call write~init~int(37, 56, 2, 1);call write~init~int(100, 56, 3, 1);call write~init~int(110, 56, 4, 1);call write~init~int(0, 56, 5, 1);call #Ultimate.allocInit(3, 57);call write~init~int(112, 57, 0, 1);call write~init~int(116, 57, 1, 1);call write~init~int(0, 57, 2, 1);~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 0;~verbose~0 := 0;~major~0 := 96;~name~0.base, ~name~0.offset := 3, 0;~disable~0 := 0;~#drive0~0.base, ~#drive0~0.offset := 58, 0;call #Ultimate.allocInit(24, 58);call write~init~int(0, ~#drive0~0.base, ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 4 + ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 8 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 12 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 16 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 20 + ~#drive0~0.offset, 4);~#drive1~0.base, ~#drive1~0.offset := 59, 0;call #Ultimate.allocInit(24, 59);call write~init~int(0, ~#drive1~0.base, ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 4 + ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 8 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 12 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 16 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 20 + ~#drive1~0.offset, 4);~#drive2~0.base, ~#drive2~0.offset := 60, 0;call #Ultimate.allocInit(24, 60);call write~init~int(0, ~#drive2~0.base, ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 4 + ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 8 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 12 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 16 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 20 + ~#drive2~0.offset, 4);~#drive3~0.base, ~#drive3~0.offset := 61, 0;call #Ultimate.allocInit(24, 61);call write~init~int(0, ~#drive3~0.base, ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 4 + ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 8 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 12 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 16 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 20 + ~#drive3~0.offset, 4);~drives~0.base, ~drives~0.offset := ~drives~0.base[0 := ~#drive0~0.base], ~drives~0.offset[0 := ~#drive0~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[1 := ~#drive1~0.base], ~drives~0.offset[1 := ~#drive1~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[2 := ~#drive2~0.base], ~drives~0.offset[2 := ~#drive2~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[3 := ~#drive3~0.base], ~drives~0.offset[3 := ~#drive3~0.offset];~#pt_mutex~0.base, ~#pt_mutex~0.offset := 62, 0;call #Ultimate.allocInit(156, 62);call write~init~int(1, ~#pt_mutex~0.base, ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 4 + ~#pt_mutex~0.offset, 4);call write~init~int(3735899821, ~#pt_mutex~0.base, 8 + ~#pt_mutex~0.offset, 4);call write~init~int(4294967295, ~#pt_mutex~0.base, 12 + ~#pt_mutex~0.offset, 4);call write~init~$Pointer$(0, -1, ~#pt_mutex~0.base, 16 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 24 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 32 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 40 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(6, 0, ~#pt_mutex~0.base, 48 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 56 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 60 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 80 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 88 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 96 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 104 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 112 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 120 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 128 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(7, 0, ~#pt_mutex~0.base, 136 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 144 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 148 + ~#pt_mutex~0.offset, 8);~#pt~0.base, ~#pt~0.offset := 63, 0;call #Ultimate.allocInit(880, 63);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt~0.base);~#pt_scratch~0.base, ~#pt_scratch~0.offset := 64, 0;call #Ultimate.allocInit(512, 64);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt_scratch~0.base);~#pt_fops~0.base, ~#pt_fops~0.offset := 65, 0;call #Ultimate.allocInit(216, 65);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#pt_fops~0.base, ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~noop_llseek.base, #funAddr~noop_llseek.offset, ~#pt_fops~0.base, 8 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_read.base, #funAddr~pt_read.offset, ~#pt_fops~0.base, 16 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_write.base, #funAddr~pt_write.offset, ~#pt_fops~0.base, 24 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 32 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 40 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 48 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 56 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_ioctl.base, #funAddr~pt_ioctl.offset, ~#pt_fops~0.base, 64 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 72 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 80 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_open.base, #funAddr~pt_open.offset, ~#pt_fops~0.base, 88 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 96 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_release.base, #funAddr~pt_release.offset, ~#pt_fops~0.base, 104 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 112 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 120 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 128 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 136 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 144 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 152 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 160 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 168 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 176 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 184 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 192 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 200 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 208 + ~#pt_fops~0.offset, 8);~pt_class~0.base, ~pt_class~0.offset := 0, 0;~ldvarg7~0 := 0;~pt_fops_group1~0.base, ~pt_fops_group1~0.offset := 0, 0;~ldvarg3~0.base, ~ldvarg3~0.offset := 0, 0;~ldvarg0~0.base, ~ldvarg0~0.offset := 0, 0;~pt_fops_group2~0.base, ~pt_fops_group2~0.offset := 0, 0;~ldvarg5~0 := 0;~ldv_retval_pt_open~0 := 0;~ldvarg6~0.base, ~ldvarg6~0.offset := 0, 0;~ldvarg8~0 := 0;~ldvarg1~0 := 0;~ldv_retval_pt_init~0 := 0;~ldvarg4~0.base, ~ldvarg4~0.offset := 0, 0;~ldvarg2~0.base, ~ldvarg2~0.offset := 0, 0;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 0;~ldv_mutex_lock~0 := 0;~ldv_mutex_mutex_of_device~0 := 0;~ldv_mutex_pt_mutex~0 := 0; {19891#true} is VALID [2022-02-20 21:45:16,967 INFO L290 TraceCheckUtils]: 1: Hoare triple {19891#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet291#1, main_#t~switch292#1, main_#t~nondet293#1, main_#t~switch294#1, main_#t~ret295#1, main_#t~ret296#1, main_#t~ret297#1, main_#t~ret298#1, main_#t~ret299#1, main_#t~ret300#1, main_#t~nondet301#1, main_#t~switch302#1, main_#t~ret303#1, main_~tmp~25#1, main_~tmp___0~12#1, main_~tmp___1~11#1;havoc main_~tmp~25#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~11#1;assume { :begin_inline_ldv_initialize } true;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 1;~ldv_mutex_lock~0 := 1;~ldv_mutex_mutex_of_device~0 := 1;~ldv_mutex_pt_mutex~0 := 1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 2: Hoare triple {19891#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 3: Hoare triple {19891#true} assume -2147483648 <= main_#t~nondet291#1 && main_#t~nondet291#1 <= 2147483647;main_~tmp~25#1 := main_#t~nondet291#1;havoc main_#t~nondet291#1;main_#t~switch292#1 := 0 == main_~tmp~25#1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 4: Hoare triple {19891#true} assume !main_#t~switch292#1;main_#t~switch292#1 := main_#t~switch292#1 || 1 == main_~tmp~25#1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 5: Hoare triple {19891#true} assume main_#t~switch292#1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 6: Hoare triple {19891#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet301#1 && main_#t~nondet301#1 <= 2147483647;main_~tmp___1~11#1 := main_#t~nondet301#1;havoc main_#t~nondet301#1;main_#t~switch302#1 := 0 == main_~tmp___1~11#1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 7: Hoare triple {19891#true} assume !main_#t~switch302#1;main_#t~switch302#1 := main_#t~switch302#1 || 1 == main_~tmp___1~11#1; {19891#true} is VALID [2022-02-20 21:45:16,968 INFO L290 TraceCheckUtils]: 8: Hoare triple {19891#true} assume main_#t~switch302#1; {19891#true} is VALID [2022-02-20 21:45:16,969 INFO L290 TraceCheckUtils]: 9: Hoare triple {19891#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_pt_init } true;havoc pt_init_#res#1;havoc pt_init_#t~ret277#1, pt_init_#t~ret278#1, pt_init_#t~nondet279#1, pt_init_#t~mem280#1, pt_init_#t~mem281#1.base, pt_init_#t~mem281#1.offset, pt_init_#t~ret282#1.base, pt_init_#t~ret282#1.offset, pt_init_#t~ret283#1, pt_init_#t~ret284#1, pt_init_#t~mem285#1, pt_init_#t~nondet286#1.base, pt_init_#t~nondet286#1.offset, pt_init_#t~nondet287#1.base, pt_init_#t~nondet287#1.offset, pt_init_~unit~2#1, pt_init_~err~1#1, pt_init_~tmp~24#1, pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset, pt_init_~tmp___0~11#1.base, pt_init_~tmp___0~11#1.offset, pt_init_~tmp___1~10#1, pt_init_~tmp___2~10#1;havoc pt_init_~unit~2#1;havoc pt_init_~err~1#1;havoc pt_init_~tmp~24#1;call pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc pt_init_~tmp___0~11#1.base, pt_init_~tmp___0~11#1.offset;havoc pt_init_~tmp___1~10#1;havoc pt_init_~tmp___2~10#1; {19891#true} is VALID [2022-02-20 21:45:16,969 INFO L290 TraceCheckUtils]: 10: Hoare triple {19891#true} assume !(0 != ~disable~0);assume { :begin_inline_pt_detect } true;havoc pt_detect_#res#1;havoc pt_detect_#t~nondet183#1, pt_detect_#t~mem184#1, pt_detect_#t~nondet185#1, pt_detect_#t~mem186#1, pt_detect_#t~mem187#1.base, pt_detect_#t~mem187#1.offset, pt_detect_#t~mem188#1, pt_detect_#t~mem189#1, pt_detect_#t~mem190#1, pt_detect_#t~mem191#1, pt_detect_#t~mem192#1, pt_detect_#t~ret193#1, pt_detect_#t~ret194#1, pt_detect_#t~mem195#1.base, pt_detect_#t~mem195#1.offset, pt_detect_#t~mem196#1.base, pt_detect_#t~mem196#1.offset, pt_detect_#t~ret197#1, pt_detect_#t~ret198#1, pt_detect_#t~mem199#1.base, pt_detect_#t~mem199#1.offset, pt_detect_#t~nondet200#1, pt_detect_~tape~0#1.base, pt_detect_~tape~0#1.offset, pt_detect_~specified~0#1, pt_detect_~found~0#1, pt_detect_~unit~0#1, pt_detect_~tape___0~0#1.base, pt_detect_~tape___0~0#1.offset, pt_detect_~tmp~18#1, pt_detect_~tmp___0~7#1, pt_detect_~tmp___1~6#1, pt_detect_~tmp___2~6#1;havoc pt_detect_~tape~0#1.base, pt_detect_~tape~0#1.offset;havoc pt_detect_~specified~0#1;havoc pt_detect_~found~0#1;havoc pt_detect_~unit~0#1;havoc pt_detect_~tape___0~0#1.base, pt_detect_~tape___0~0#1.offset;havoc pt_detect_~tmp~18#1;havoc pt_detect_~tmp___0~7#1;havoc pt_detect_~tmp___1~6#1;havoc pt_detect_~tmp___2~6#1;pt_detect_~specified~0#1 := 0;pt_detect_~found~0#1 := 0;havoc pt_detect_#t~nondet183#1;pt_detect_~specified~0#1 := 0;pt_detect_~unit~0#1 := 0; {19893#(= |ULTIMATE.start_pt_detect_~unit~0#1| 0)} is VALID [2022-02-20 21:45:16,969 INFO L290 TraceCheckUtils]: 11: Hoare triple {19893#(= |ULTIMATE.start_pt_detect_~unit~0#1| 0)} assume !(pt_detect_~unit~0#1 <= 3); {19892#false} is VALID [2022-02-20 21:45:16,970 INFO L290 TraceCheckUtils]: 12: Hoare triple {19892#false} assume !(0 == pt_detect_~specified~0#1); {19892#false} is VALID [2022-02-20 21:45:16,970 INFO L290 TraceCheckUtils]: 13: Hoare triple {19892#false} assume !(0 != pt_detect_~found~0#1);havoc pt_detect_#t~nondet200#1;pt_detect_#res#1 := -1; {19892#false} is VALID [2022-02-20 21:45:16,970 INFO L290 TraceCheckUtils]: 14: Hoare triple {19892#false} pt_init_#t~ret277#1 := pt_detect_#res#1;assume { :end_inline_pt_detect } true;assume -2147483648 <= pt_init_#t~ret277#1 && pt_init_#t~ret277#1 <= 2147483647;pt_init_~tmp~24#1 := pt_init_#t~ret277#1;havoc pt_init_#t~ret277#1; {19892#false} is VALID [2022-02-20 21:45:16,970 INFO L290 TraceCheckUtils]: 15: Hoare triple {19892#false} assume 0 != pt_init_~tmp~24#1;pt_init_~err~1#1 := -19; {19892#false} is VALID [2022-02-20 21:45:16,970 INFO L290 TraceCheckUtils]: 16: Hoare triple {19892#false} pt_init_#res#1 := pt_init_~err~1#1;call ULTIMATE.dealloc(pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset);havoc pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset; {19892#false} is VALID [2022-02-20 21:45:16,970 INFO L290 TraceCheckUtils]: 17: Hoare triple {19892#false} main_#t~ret303#1 := pt_init_#res#1;assume { :end_inline_pt_init } true;assume -2147483648 <= main_#t~ret303#1 && main_#t~ret303#1 <= 2147483647;~ldv_retval_pt_init~0 := main_#t~ret303#1;havoc main_#t~ret303#1; {19892#false} is VALID [2022-02-20 21:45:16,971 INFO L290 TraceCheckUtils]: 18: Hoare triple {19892#false} assume 0 == ~ldv_retval_pt_init~0;~ldv_state_variable_0~0 := 3; {19892#false} is VALID [2022-02-20 21:45:16,971 INFO L290 TraceCheckUtils]: 19: Hoare triple {19892#false} assume 0 != ~ldv_retval_pt_init~0;~ldv_state_variable_0~0 := 2; {19892#false} is VALID [2022-02-20 21:45:16,971 INFO L290 TraceCheckUtils]: 20: Hoare triple {19892#false} assume { :begin_inline_ldv_check_final_state } true; {19892#false} is VALID [2022-02-20 21:45:16,971 INFO L290 TraceCheckUtils]: 21: Hoare triple {19892#false} assume !(1 == ~ldv_mutex_cred_guard_mutex_of_signal_struct~0); {19892#false} is VALID [2022-02-20 21:45:16,971 INFO L272 TraceCheckUtils]: 22: Hoare triple {19892#false} call ldv_error(); {19892#false} is VALID [2022-02-20 21:45:16,971 INFO L290 TraceCheckUtils]: 23: Hoare triple {19892#false} assume !false; {19892#false} is VALID [2022-02-20 21:45:16,971 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 21:45:16,972 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 21:45:16,972 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1894696466] [2022-02-20 21:45:16,972 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1894696466] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 21:45:16,973 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 21:45:16,973 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 21:45:16,974 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2010865355] [2022-02-20 21:45:16,975 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 21:45:16,975 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 21:45:16,975 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 21:45:16,975 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:45:17,004 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:45:17,005 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 21:45:17,006 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 21:45:17,006 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 21:45:17,006 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 21:45:17,007 INFO L87 Difference]: Start difference. First operand 1559 states and 2197 transitions. Second operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:45:27,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:45:27,811 INFO L93 Difference]: Finished difference Result 3141 states and 4431 transitions. [2022-02-20 21:45:27,812 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 21:45:27,812 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 21:45:27,812 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 21:45:27,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:45:27,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 1975 transitions. [2022-02-20 21:45:27,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:45:27,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 1975 transitions. [2022-02-20 21:45:27,864 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 1975 transitions. [2022-02-20 21:45:29,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1975 edges. 1975 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:45:29,558 INFO L225 Difference]: With dead ends: 3141 [2022-02-20 21:45:29,558 INFO L226 Difference]: Without dead ends: 1585 [2022-02-20 21:45:29,562 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 21:45:29,563 INFO L933 BasicCegarLoop]: 977 mSDtfsCounter, 12 mSDsluCounter, 972 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 1949 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 21:45:29,563 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 1949 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 21:45:29,564 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1585 states. [2022-02-20 21:45:29,596 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1585 to 1561. [2022-02-20 21:45:29,596 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 21:45:29,599 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1585 states. Second operand has 1561 states, 1102 states have (on average 1.352994555353902) internal successors, (1491), 1132 states have internal predecessors, (1491), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:29,600 INFO L74 IsIncluded]: Start isIncluded. First operand 1585 states. Second operand has 1561 states, 1102 states have (on average 1.352994555353902) internal successors, (1491), 1132 states have internal predecessors, (1491), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:29,602 INFO L87 Difference]: Start difference. First operand 1585 states. Second operand has 1561 states, 1102 states have (on average 1.352994555353902) internal successors, (1491), 1132 states have internal predecessors, (1491), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:29,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:45:29,703 INFO L93 Difference]: Finished difference Result 1585 states and 2235 transitions. [2022-02-20 21:45:29,703 INFO L276 IsEmpty]: Start isEmpty. Operand 1585 states and 2235 transitions. [2022-02-20 21:45:29,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:45:29,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:45:29,711 INFO L74 IsIncluded]: Start isIncluded. First operand has 1561 states, 1102 states have (on average 1.352994555353902) internal successors, (1491), 1132 states have internal predecessors, (1491), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) Second operand 1585 states. [2022-02-20 21:45:29,712 INFO L87 Difference]: Start difference. First operand has 1561 states, 1102 states have (on average 1.352994555353902) internal successors, (1491), 1132 states have internal predecessors, (1491), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) Second operand 1585 states. [2022-02-20 21:45:29,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 21:45:29,807 INFO L93 Difference]: Finished difference Result 1585 states and 2235 transitions. [2022-02-20 21:45:29,807 INFO L276 IsEmpty]: Start isEmpty. Operand 1585 states and 2235 transitions. [2022-02-20 21:45:29,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 21:45:29,812 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 21:45:29,812 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 21:45:29,812 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 21:45:29,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1561 states, 1102 states have (on average 1.352994555353902) internal successors, (1491), 1132 states have internal predecessors, (1491), 357 states have call successors, (357), 102 states have call predecessors, (357), 101 states have return successors, (351), 351 states have call predecessors, (351), 351 states have call successors, (351) [2022-02-20 21:45:29,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1561 states to 1561 states and 2199 transitions. [2022-02-20 21:45:29,958 INFO L78 Accepts]: Start accepts. Automaton has 1561 states and 2199 transitions. Word has length 24 [2022-02-20 21:45:29,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 21:45:29,958 INFO L470 AbstractCegarLoop]: Abstraction has 1561 states and 2199 transitions. [2022-02-20 21:45:29,958 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:45:29,958 INFO L276 IsEmpty]: Start isEmpty. Operand 1561 states and 2199 transitions. [2022-02-20 21:45:29,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 21:45:29,959 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 21:45:29,959 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] [2022-02-20 21:45:29,960 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 21:45:29,961 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 21:45:29,961 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 21:45:29,961 INFO L85 PathProgramCache]: Analyzing trace with hash 1053558324, now seen corresponding path program 1 times [2022-02-20 21:45:29,961 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 21:45:29,962 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [439983542] [2022-02-20 21:45:29,962 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:45:29,962 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 21:45:30,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:45:30,048 INFO L290 TraceCheckUtils]: 0: Hoare triple {29670#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(72, 2);call #Ultimate.allocInit(3, 3);call write~init~int(112, 3, 0, 1);call write~init~int(116, 3, 1, 1);call write~init~int(0, 3, 2, 1);call #Ultimate.allocInit(124, 4);call #Ultimate.allocInit(27, 5);call #Ultimate.allocInit(19, 6);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(57, 8);call #Ultimate.allocInit(15, 9);call #Ultimate.allocInit(12, 10);call #Ultimate.allocInit(29, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(10, 13);call #Ultimate.allocInit(14, 14);call #Ultimate.allocInit(14, 15);call #Ultimate.allocInit(37, 16);call #Ultimate.allocInit(20, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(7, 19);call write~init~int(114, 19, 0, 1);call write~init~int(101, 19, 1, 1);call write~init~int(119, 19, 2, 1);call write~init~int(105, 19, 3, 1);call write~init~int(110, 19, 4, 1);call write~init~int(100, 19, 5, 1);call write~init~int(0, 19, 6, 1);call #Ultimate.allocInit(15, 20);call #Ultimate.allocInit(28, 21);call #Ultimate.allocInit(4, 22);call write~init~int(37, 22, 0, 1);call write~init~int(51, 22, 1, 1);call write~init~int(120, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(13, 23);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(16, 25);call #Ultimate.allocInit(7, 26);call write~init~int(109, 26, 0, 1);call write~init~int(97, 26, 1, 1);call write~init~int(115, 26, 2, 1);call write~init~int(116, 26, 3, 1);call write~init~int(101, 26, 4, 1);call write~init~int(114, 26, 5, 1);call write~init~int(0, 26, 6, 1);call #Ultimate.allocInit(6, 27);call write~init~int(115, 27, 0, 1);call write~init~int(108, 27, 1, 1);call write~init~int(97, 27, 2, 1);call write~init~int(118, 27, 3, 1);call write~init~int(101, 27, 4, 1);call write~init~int(0, 27, 5, 1);call #Ultimate.allocInit(9, 28);call #Ultimate.allocInit(35, 29);call #Ultimate.allocInit(11, 30);call #Ultimate.allocInit(10, 31);call #Ultimate.allocInit(14, 32);call #Ultimate.allocInit(12, 33);call #Ultimate.allocInit(5, 34);call write~init~int(44, 34, 0, 1);call write~init~int(32, 34, 1, 1);call write~init~int(82, 34, 2, 1);call write~init~int(79, 34, 3, 1);call write~init~int(0, 34, 4, 1);call #Ultimate.allocInit(23, 35);call #Ultimate.allocInit(29, 36);call #Ultimate.allocInit(5, 37);call write~init~int(49, 37, 0, 1);call write~init~int(46, 37, 1, 1);call write~init~int(48, 37, 2, 1);call write~init~int(52, 37, 3, 1);call write~init~int(0, 37, 4, 1);call #Ultimate.allocInit(5, 38);call write~init~int(37, 38, 0, 1);call write~init~int(115, 38, 1, 1);call write~init~int(37, 38, 2, 1);call write~init~int(100, 38, 3, 1);call write~init~int(0, 38, 4, 1);call #Ultimate.allocInit(34, 39);call #Ultimate.allocInit(30, 40);call #Ultimate.allocInit(29, 41);call #Ultimate.allocInit(17, 42);call #Ultimate.allocInit(5, 43);call write~init~int(114, 43, 0, 1);call write~init~int(101, 43, 1, 1);call write~init~int(97, 43, 2, 1);call write~init~int(100, 43, 3, 1);call write~init~int(0, 43, 4, 1);call #Ultimate.allocInit(5, 44);call write~init~int(114, 44, 0, 1);call write~init~int(101, 44, 1, 1);call write~init~int(97, 44, 2, 1);call write~init~int(100, 44, 3, 1);call write~init~int(0, 44, 4, 1);call #Ultimate.allocInit(9, 45);call #Ultimate.allocInit(1, 46);call write~init~int(0, 46, 0, 1);call #Ultimate.allocInit(29, 47);call #Ultimate.allocInit(28, 48);call #Ultimate.allocInit(6, 49);call write~init~int(119, 49, 0, 1);call write~init~int(114, 49, 1, 1);call write~init~int(105, 49, 2, 1);call write~init~int(116, 49, 3, 1);call write~init~int(101, 49, 4, 1);call write~init~int(0, 49, 5, 1);call #Ultimate.allocInit(6, 50);call write~init~int(119, 50, 0, 1);call write~init~int(114, 50, 1, 1);call write~init~int(105, 50, 2, 1);call write~init~int(116, 50, 3, 1);call write~init~int(101, 50, 4, 1);call write~init~int(0, 50, 5, 1);call #Ultimate.allocInit(10, 51);call #Ultimate.allocInit(31, 52);call #Ultimate.allocInit(40, 53);call #Ultimate.allocInit(3, 54);call write~init~int(112, 54, 0, 1);call write~init~int(116, 54, 1, 1);call write~init~int(0, 54, 2, 1);call #Ultimate.allocInit(5, 55);call write~init~int(112, 55, 0, 1);call write~init~int(116, 55, 1, 1);call write~init~int(37, 55, 2, 1);call write~init~int(100, 55, 3, 1);call write~init~int(0, 55, 4, 1);call #Ultimate.allocInit(6, 56);call write~init~int(112, 56, 0, 1);call write~init~int(116, 56, 1, 1);call write~init~int(37, 56, 2, 1);call write~init~int(100, 56, 3, 1);call write~init~int(110, 56, 4, 1);call write~init~int(0, 56, 5, 1);call #Ultimate.allocInit(3, 57);call write~init~int(112, 57, 0, 1);call write~init~int(116, 57, 1, 1);call write~init~int(0, 57, 2, 1);~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 0;~verbose~0 := 0;~major~0 := 96;~name~0.base, ~name~0.offset := 3, 0;~disable~0 := 0;~#drive0~0.base, ~#drive0~0.offset := 58, 0;call #Ultimate.allocInit(24, 58);call write~init~int(0, ~#drive0~0.base, ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 4 + ~#drive0~0.offset, 4);call write~init~int(0, ~#drive0~0.base, 8 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 12 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 16 + ~#drive0~0.offset, 4);call write~init~int(-1, ~#drive0~0.base, 20 + ~#drive0~0.offset, 4);~#drive1~0.base, ~#drive1~0.offset := 59, 0;call #Ultimate.allocInit(24, 59);call write~init~int(0, ~#drive1~0.base, ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 4 + ~#drive1~0.offset, 4);call write~init~int(0, ~#drive1~0.base, 8 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 12 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 16 + ~#drive1~0.offset, 4);call write~init~int(-1, ~#drive1~0.base, 20 + ~#drive1~0.offset, 4);~#drive2~0.base, ~#drive2~0.offset := 60, 0;call #Ultimate.allocInit(24, 60);call write~init~int(0, ~#drive2~0.base, ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 4 + ~#drive2~0.offset, 4);call write~init~int(0, ~#drive2~0.base, 8 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 12 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 16 + ~#drive2~0.offset, 4);call write~init~int(-1, ~#drive2~0.base, 20 + ~#drive2~0.offset, 4);~#drive3~0.base, ~#drive3~0.offset := 61, 0;call #Ultimate.allocInit(24, 61);call write~init~int(0, ~#drive3~0.base, ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 4 + ~#drive3~0.offset, 4);call write~init~int(0, ~#drive3~0.base, 8 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 12 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 16 + ~#drive3~0.offset, 4);call write~init~int(-1, ~#drive3~0.base, 20 + ~#drive3~0.offset, 4);~drives~0.base, ~drives~0.offset := ~drives~0.base[0 := ~#drive0~0.base], ~drives~0.offset[0 := ~#drive0~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[1 := ~#drive1~0.base], ~drives~0.offset[1 := ~#drive1~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[2 := ~#drive2~0.base], ~drives~0.offset[2 := ~#drive2~0.offset];~drives~0.base, ~drives~0.offset := ~drives~0.base[3 := ~#drive3~0.base], ~drives~0.offset[3 := ~#drive3~0.offset];~#pt_mutex~0.base, ~#pt_mutex~0.offset := 62, 0;call #Ultimate.allocInit(156, 62);call write~init~int(1, ~#pt_mutex~0.base, ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 4 + ~#pt_mutex~0.offset, 4);call write~init~int(3735899821, ~#pt_mutex~0.base, 8 + ~#pt_mutex~0.offset, 4);call write~init~int(4294967295, ~#pt_mutex~0.base, 12 + ~#pt_mutex~0.offset, 4);call write~init~$Pointer$(0, -1, ~#pt_mutex~0.base, 16 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 24 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 32 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 40 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(6, 0, ~#pt_mutex~0.base, 48 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 56 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 60 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, 72 + ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 80 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 88 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 96 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(~#pt_mutex~0.base, ~#pt_mutex~0.offset, ~#pt_mutex~0.base, 104 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 112 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 120 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_mutex~0.base, 128 + ~#pt_mutex~0.offset, 8);call write~init~$Pointer$(7, 0, ~#pt_mutex~0.base, 136 + ~#pt_mutex~0.offset, 8);call write~init~int(0, ~#pt_mutex~0.base, 144 + ~#pt_mutex~0.offset, 4);call write~init~int(0, ~#pt_mutex~0.base, 148 + ~#pt_mutex~0.offset, 8);~#pt~0.base, ~#pt~0.offset := 63, 0;call #Ultimate.allocInit(880, 63);#memory_$Pointer$.base, #memory_$Pointer$.offset := ~initToZeroAtPointerBaseAddress~$Pointer$.base(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base), ~initToZeroAtPointerBaseAddress~$Pointer$.offset(#memory_$Pointer$.base, #memory_$Pointer$.offset, ~#pt~0.base);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt~0.base);~#pt_scratch~0.base, ~#pt_scratch~0.offset := 64, 0;call #Ultimate.allocInit(512, 64);#memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, ~#pt_scratch~0.base);~#pt_fops~0.base, ~#pt_fops~0.offset := 65, 0;call #Ultimate.allocInit(216, 65);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#pt_fops~0.base, ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~noop_llseek.base, #funAddr~noop_llseek.offset, ~#pt_fops~0.base, 8 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_read.base, #funAddr~pt_read.offset, ~#pt_fops~0.base, 16 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_write.base, #funAddr~pt_write.offset, ~#pt_fops~0.base, 24 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 32 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 40 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 48 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 56 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_ioctl.base, #funAddr~pt_ioctl.offset, ~#pt_fops~0.base, 64 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 72 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 80 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_open.base, #funAddr~pt_open.offset, ~#pt_fops~0.base, 88 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 96 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~pt_release.base, #funAddr~pt_release.offset, ~#pt_fops~0.base, 104 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 112 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 120 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 128 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 136 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 144 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 152 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 160 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 168 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 176 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 184 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 192 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 200 + ~#pt_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#pt_fops~0.base, 208 + ~#pt_fops~0.offset, 8);~pt_class~0.base, ~pt_class~0.offset := 0, 0;~ldvarg7~0 := 0;~pt_fops_group1~0.base, ~pt_fops_group1~0.offset := 0, 0;~ldvarg3~0.base, ~ldvarg3~0.offset := 0, 0;~ldvarg0~0.base, ~ldvarg0~0.offset := 0, 0;~pt_fops_group2~0.base, ~pt_fops_group2~0.offset := 0, 0;~ldvarg5~0 := 0;~ldv_retval_pt_open~0 := 0;~ldvarg6~0.base, ~ldvarg6~0.offset := 0, 0;~ldvarg8~0 := 0;~ldvarg1~0 := 0;~ldv_retval_pt_init~0 := 0;~ldvarg4~0.base, ~ldvarg4~0.offset := 0, 0;~ldvarg2~0.base, ~ldvarg2~0.offset := 0, 0;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 0;~ldv_mutex_lock~0 := 0;~ldv_mutex_mutex_of_device~0 := 0;~ldv_mutex_pt_mutex~0 := 0; {29670#true} is VALID [2022-02-20 21:45:30,049 INFO L290 TraceCheckUtils]: 1: Hoare triple {29670#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet291#1, main_#t~switch292#1, main_#t~nondet293#1, main_#t~switch294#1, main_#t~ret295#1, main_#t~ret296#1, main_#t~ret297#1, main_#t~ret298#1, main_#t~ret299#1, main_#t~ret300#1, main_#t~nondet301#1, main_#t~switch302#1, main_#t~ret303#1, main_~tmp~25#1, main_~tmp___0~12#1, main_~tmp___1~11#1;havoc main_~tmp~25#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~11#1;assume { :begin_inline_ldv_initialize } true;~ldv_mutex_cred_guard_mutex_of_signal_struct~0 := 1;~ldv_mutex_lock~0 := 1;~ldv_mutex_mutex_of_device~0 := 1;~ldv_mutex_pt_mutex~0 := 1; {29670#true} is VALID [2022-02-20 21:45:30,049 INFO L290 TraceCheckUtils]: 2: Hoare triple {29670#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {29670#true} is VALID [2022-02-20 21:45:30,050 INFO L290 TraceCheckUtils]: 3: Hoare triple {29670#true} assume -2147483648 <= main_#t~nondet291#1 && main_#t~nondet291#1 <= 2147483647;main_~tmp~25#1 := main_#t~nondet291#1;havoc main_#t~nondet291#1;main_#t~switch292#1 := 0 == main_~tmp~25#1; {29670#true} is VALID [2022-02-20 21:45:30,050 INFO L290 TraceCheckUtils]: 4: Hoare triple {29670#true} assume !main_#t~switch292#1;main_#t~switch292#1 := main_#t~switch292#1 || 1 == main_~tmp~25#1; {29670#true} is VALID [2022-02-20 21:45:30,050 INFO L290 TraceCheckUtils]: 5: Hoare triple {29670#true} assume main_#t~switch292#1; {29670#true} is VALID [2022-02-20 21:45:30,052 INFO L290 TraceCheckUtils]: 6: Hoare triple {29670#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet301#1 && main_#t~nondet301#1 <= 2147483647;main_~tmp___1~11#1 := main_#t~nondet301#1;havoc main_#t~nondet301#1;main_#t~switch302#1 := 0 == main_~tmp___1~11#1; {29670#true} is VALID [2022-02-20 21:45:30,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {29670#true} assume !main_#t~switch302#1;main_#t~switch302#1 := main_#t~switch302#1 || 1 == main_~tmp___1~11#1; {29670#true} is VALID [2022-02-20 21:45:30,052 INFO L290 TraceCheckUtils]: 8: Hoare triple {29670#true} assume main_#t~switch302#1; {29670#true} is VALID [2022-02-20 21:45:30,052 INFO L290 TraceCheckUtils]: 9: Hoare triple {29670#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_pt_init } true;havoc pt_init_#res#1;havoc pt_init_#t~ret277#1, pt_init_#t~ret278#1, pt_init_#t~nondet279#1, pt_init_#t~mem280#1, pt_init_#t~mem281#1.base, pt_init_#t~mem281#1.offset, pt_init_#t~ret282#1.base, pt_init_#t~ret282#1.offset, pt_init_#t~ret283#1, pt_init_#t~ret284#1, pt_init_#t~mem285#1, pt_init_#t~nondet286#1.base, pt_init_#t~nondet286#1.offset, pt_init_#t~nondet287#1.base, pt_init_#t~nondet287#1.offset, pt_init_~unit~2#1, pt_init_~err~1#1, pt_init_~tmp~24#1, pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset, pt_init_~tmp___0~11#1.base, pt_init_~tmp___0~11#1.offset, pt_init_~tmp___1~10#1, pt_init_~tmp___2~10#1;havoc pt_init_~unit~2#1;havoc pt_init_~err~1#1;havoc pt_init_~tmp~24#1;call pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc pt_init_~tmp___0~11#1.base, pt_init_~tmp___0~11#1.offset;havoc pt_init_~tmp___1~10#1;havoc pt_init_~tmp___2~10#1; {29670#true} is VALID [2022-02-20 21:45:30,053 INFO L290 TraceCheckUtils]: 10: Hoare triple {29670#true} assume !(0 != ~disable~0);assume { :begin_inline_pt_detect } true;havoc pt_detect_#res#1;havoc pt_detect_#t~nondet183#1, pt_detect_#t~mem184#1, pt_detect_#t~nondet185#1, pt_detect_#t~mem186#1, pt_detect_#t~mem187#1.base, pt_detect_#t~mem187#1.offset, pt_detect_#t~mem188#1, pt_detect_#t~mem189#1, pt_detect_#t~mem190#1, pt_detect_#t~mem191#1, pt_detect_#t~mem192#1, pt_detect_#t~ret193#1, pt_detect_#t~ret194#1, pt_detect_#t~mem195#1.base, pt_detect_#t~mem195#1.offset, pt_detect_#t~mem196#1.base, pt_detect_#t~mem196#1.offset, pt_detect_#t~ret197#1, pt_detect_#t~ret198#1, pt_detect_#t~mem199#1.base, pt_detect_#t~mem199#1.offset, pt_detect_#t~nondet200#1, pt_detect_~tape~0#1.base, pt_detect_~tape~0#1.offset, pt_detect_~specified~0#1, pt_detect_~found~0#1, pt_detect_~unit~0#1, pt_detect_~tape___0~0#1.base, pt_detect_~tape___0~0#1.offset, pt_detect_~tmp~18#1, pt_detect_~tmp___0~7#1, pt_detect_~tmp___1~6#1, pt_detect_~tmp___2~6#1;havoc pt_detect_~tape~0#1.base, pt_detect_~tape~0#1.offset;havoc pt_detect_~specified~0#1;havoc pt_detect_~found~0#1;havoc pt_detect_~unit~0#1;havoc pt_detect_~tape___0~0#1.base, pt_detect_~tape___0~0#1.offset;havoc pt_detect_~tmp~18#1;havoc pt_detect_~tmp___0~7#1;havoc pt_detect_~tmp___1~6#1;havoc pt_detect_~tmp___2~6#1;pt_detect_~specified~0#1 := 0;pt_detect_~found~0#1 := 0;havoc pt_detect_#t~nondet183#1;pt_detect_~specified~0#1 := 0;pt_detect_~unit~0#1 := 0; {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,054 INFO L290 TraceCheckUtils]: 11: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} assume pt_detect_~unit~0#1 <= 3; {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,054 INFO L290 TraceCheckUtils]: 12: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} pt_detect_~tape___0~0#1.base, pt_detect_~tape___0~0#1.offset := ~#pt~0.base, ~#pt~0.offset + 220 * (if pt_detect_~unit~0#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then pt_detect_~unit~0#1 % 18446744073709551616 % 18446744073709551616 else pt_detect_~unit~0#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);call write~$Pointer$(pt_detect_~tape___0~0#1.base, pt_detect_~tape___0~0#1.offset, pt_detect_~tape___0~0#1.base, 168 + pt_detect_~tape___0~0#1.offset, 8);assume { :begin_inline_atomic_set } true;atomic_set_#in~v#1.base, atomic_set_#in~v#1.offset, atomic_set_#in~i#1 := pt_detect_~tape___0~0#1.base, 188 + pt_detect_~tape___0~0#1.offset, 1;havoc atomic_set_~v#1.base, atomic_set_~v#1.offset, atomic_set_~i#1;atomic_set_~v#1.base, atomic_set_~v#1.offset := atomic_set_#in~v#1.base, atomic_set_#in~v#1.offset;atomic_set_~i#1 := atomic_set_#in~i#1;call write~int(atomic_set_~i#1, atomic_set_~v#1.base, atomic_set_~v#1.offset, 4); {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,055 INFO L290 TraceCheckUtils]: 13: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} assume { :end_inline_atomic_set } true;call write~int(0, pt_detect_~tape___0~0#1.base, 176 + pt_detect_~tape___0~0#1.offset, 4);call write~int(0, pt_detect_~tape___0~0#1.base, 180 + pt_detect_~tape___0~0#1.offset, 4);call write~int(0, pt_detect_~tape___0~0#1.base, 200 + pt_detect_~tape___0~0#1.offset, 4);call write~$Pointer$(0, 0, pt_detect_~tape___0~0#1.base, 204 + pt_detect_~tape___0~0#1.offset, 8);call pt_detect_#t~mem184#1 := read~int(~drives~0.base[pt_detect_~unit~0#1], 16 + ~drives~0.offset[pt_detect_~unit~0#1], 4);call write~int(pt_detect_#t~mem184#1, pt_detect_~tape___0~0#1.base, 184 + pt_detect_~tape___0~0#1.offset, 4);havoc pt_detect_#t~mem184#1;havoc pt_detect_#t~nondet185#1;call pt_detect_#t~mem186#1 := read~int(~drives~0.base[pt_detect_~unit~0#1], ~drives~0.offset[pt_detect_~unit~0#1], 4); {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,057 INFO L290 TraceCheckUtils]: 14: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} assume 0 == pt_detect_#t~mem186#1;havoc pt_detect_#t~mem186#1; {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,057 INFO L290 TraceCheckUtils]: 15: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} pt_detect_~unit~0#1 := 1 + pt_detect_~unit~0#1; {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,065 INFO L290 TraceCheckUtils]: 16: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} assume !(pt_detect_~unit~0#1 <= 3); {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} is VALID [2022-02-20 21:45:30,066 INFO L290 TraceCheckUtils]: 17: Hoare triple {29672#(= |ULTIMATE.start_pt_detect_~specified~0#1| 0)} assume !(0 == pt_detect_~specified~0#1); {29671#false} is VALID [2022-02-20 21:45:30,068 INFO L290 TraceCheckUtils]: 18: Hoare triple {29671#false} assume !(0 != pt_detect_~found~0#1);havoc pt_detect_#t~nondet200#1;pt_detect_#res#1 := -1; {29671#false} is VALID [2022-02-20 21:45:30,068 INFO L290 TraceCheckUtils]: 19: Hoare triple {29671#false} pt_init_#t~ret277#1 := pt_detect_#res#1;assume { :end_inline_pt_detect } true;assume -2147483648 <= pt_init_#t~ret277#1 && pt_init_#t~ret277#1 <= 2147483647;pt_init_~tmp~24#1 := pt_init_#t~ret277#1;havoc pt_init_#t~ret277#1; {29671#false} is VALID [2022-02-20 21:45:30,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {29671#false} assume 0 != pt_init_~tmp~24#1;pt_init_~err~1#1 := -19; {29671#false} is VALID [2022-02-20 21:45:30,069 INFO L290 TraceCheckUtils]: 21: Hoare triple {29671#false} pt_init_#res#1 := pt_init_~err~1#1;call ULTIMATE.dealloc(pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset);havoc pt_init_~#__key~0#1.base, pt_init_~#__key~0#1.offset; {29671#false} is VALID [2022-02-20 21:45:30,069 INFO L290 TraceCheckUtils]: 22: Hoare triple {29671#false} main_#t~ret303#1 := pt_init_#res#1;assume { :end_inline_pt_init } true;assume -2147483648 <= main_#t~ret303#1 && main_#t~ret303#1 <= 2147483647;~ldv_retval_pt_init~0 := main_#t~ret303#1;havoc main_#t~ret303#1; {29671#false} is VALID [2022-02-20 21:45:30,069 INFO L290 TraceCheckUtils]: 23: Hoare triple {29671#false} assume 0 == ~ldv_retval_pt_init~0;~ldv_state_variable_0~0 := 3; {29671#false} is VALID [2022-02-20 21:45:30,069 INFO L290 TraceCheckUtils]: 24: Hoare triple {29671#false} assume 0 != ~ldv_retval_pt_init~0;~ldv_state_variable_0~0 := 2; {29671#false} is VALID [2022-02-20 21:45:30,069 INFO L290 TraceCheckUtils]: 25: Hoare triple {29671#false} assume { :begin_inline_ldv_check_final_state } true; {29671#false} is VALID [2022-02-20 21:45:30,070 INFO L290 TraceCheckUtils]: 26: Hoare triple {29671#false} assume !(1 == ~ldv_mutex_cred_guard_mutex_of_signal_struct~0); {29671#false} is VALID [2022-02-20 21:45:30,070 INFO L272 TraceCheckUtils]: 27: Hoare triple {29671#false} call ldv_error(); {29671#false} is VALID [2022-02-20 21:45:30,070 INFO L290 TraceCheckUtils]: 28: Hoare triple {29671#false} assume !false; {29671#false} is VALID [2022-02-20 21:45:30,071 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 21:45:30,071 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 21:45:30,071 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [439983542] [2022-02-20 21:45:30,071 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [439983542] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 21:45:30,071 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 21:45:30,071 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 21:45:30,071 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [928031785] [2022-02-20 21:45:30,071 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 21:45:30,072 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 9.333333333333334) internal successors, (28), 3 states have internal predecessors, (28), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 29 [2022-02-20 21:45:30,072 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 21:45:30,072 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 9.333333333333334) internal successors, (28), 3 states have internal predecessors, (28), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 21:45:30,102 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:45:30,103 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 21:45:30,103 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 21:45:30,103 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 21:45:30,104 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 21:45:30,104 INFO L87 Difference]: Start difference. First operand 1561 states and 2199 transitions. Second operand has 3 states, 3 states have (on average 9.333333333333334) internal successors, (28), 3 states have internal predecessors, (28), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0)