./Ultimate.py --spec ../sv-benchmarks/c/properties/no-overflow.prp --file ../sv-benchmarks/c/bitvector/soft_float_3.c.cil.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for overflows 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/bitvector/soft_float_3.c.cil.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Overflow-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! overflow) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash aa6f3ffe66f40e883b6b9462d3d92566e122af5c88e351ce665cbb8a404d0554 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-21 03:09:53,324 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-21 03:09:53,325 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-21 03:09:53,359 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-21 03:09:53,361 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-21 03:09:53,364 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-21 03:09:53,365 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-21 03:09:53,367 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-21 03:09:53,368 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-21 03:09:53,369 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-21 03:09:53,370 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-21 03:09:53,372 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-21 03:09:53,372 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-21 03:09:53,376 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-21 03:09:53,377 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-21 03:09:53,378 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-21 03:09:53,380 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-21 03:09:53,381 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-21 03:09:53,382 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-21 03:09:53,388 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-21 03:09:53,390 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-21 03:09:53,391 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-21 03:09:53,392 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-21 03:09:53,393 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-21 03:09:53,395 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-21 03:09:53,397 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-21 03:09:53,397 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-21 03:09:53,398 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-21 03:09:53,399 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-21 03:09:53,400 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-21 03:09:53,400 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-21 03:09:53,401 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-21 03:09:53,402 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-21 03:09:53,403 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-21 03:09:53,404 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-21 03:09:53,404 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-21 03:09:53,405 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-21 03:09:53,405 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-21 03:09:53,406 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-21 03:09:53,406 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-21 03:09:53,407 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-21 03:09:53,407 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Overflow-32bit-Automizer_Default.epf [2022-02-21 03:09:53,430 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-21 03:09:53,430 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-21 03:09:53,431 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-21 03:09:53,431 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-21 03:09:53,432 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-21 03:09:53,432 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-21 03:09:53,432 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-21 03:09:53,433 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-21 03:09:53,433 INFO L138 SettingsManager]: * Use SBE=true [2022-02-21 03:09:53,433 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-21 03:09:53,434 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-21 03:09:53,434 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-21 03:09:53,434 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-21 03:09:53,434 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-21 03:09:53,434 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-21 03:09:53,434 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * Check absence of signed integer overflows=true [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-21 03:09:53,435 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-21 03:09:53,436 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-21 03:09:53,436 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-21 03:09:53,436 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-21 03:09:53,436 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:09:53,437 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-21 03:09:53,437 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-21 03:09:53,437 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-21 03:09:53,438 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-21 03:09:53,438 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-21 03:09:53,438 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-21 03:09:53,438 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 ! overflow) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> aa6f3ffe66f40e883b6b9462d3d92566e122af5c88e351ce665cbb8a404d0554 [2022-02-21 03:09:53,671 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-21 03:09:53,688 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-21 03:09:53,690 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-21 03:09:53,691 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-21 03:09:53,691 INFO L275 PluginConnector]: CDTParser initialized [2022-02-21 03:09:53,692 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/bitvector/soft_float_3.c.cil.c [2022-02-21 03:09:53,750 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d44dd47d0/f45bf7a4581940e6a148e02b192f97d8/FLAGe3a3b60be [2022-02-21 03:09:54,149 INFO L306 CDTParser]: Found 1 translation units. [2022-02-21 03:09:54,152 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/bitvector/soft_float_3.c.cil.c [2022-02-21 03:09:54,164 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d44dd47d0/f45bf7a4581940e6a148e02b192f97d8/FLAGe3a3b60be [2022-02-21 03:09:54,176 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d44dd47d0/f45bf7a4581940e6a148e02b192f97d8 [2022-02-21 03:09:54,179 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-21 03:09:54,181 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-21 03:09:54,183 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-21 03:09:54,183 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-21 03:09:54,185 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-21 03:09:54,186 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,187 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@79b978e4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54, skipping insertion in model container [2022-02-21 03:09:54,187 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,192 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-21 03:09:54,220 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-21 03:09:54,359 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/bitvector/soft_float_3.c.cil.c[727,740] [2022-02-21 03:09:54,421 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:09:54,435 INFO L203 MainTranslator]: Completed pre-run [2022-02-21 03:09:54,446 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/bitvector/soft_float_3.c.cil.c[727,740] [2022-02-21 03:09:54,473 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:09:54,482 INFO L208 MainTranslator]: Completed translation [2022-02-21 03:09:54,482 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54 WrapperNode [2022-02-21 03:09:54,482 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-21 03:09:54,483 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-21 03:09:54,483 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-21 03:09:54,483 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-21 03:09:54,488 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,498 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,537 INFO L137 Inliner]: procedures = 17, calls = 15, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 196 [2022-02-21 03:09:54,537 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-21 03:09:54,538 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-21 03:09:54,538 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-21 03:09:54,538 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-21 03:09:54,546 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,546 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,556 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,556 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,562 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,566 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,567 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,570 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-21 03:09:54,588 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-21 03:09:54,588 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-21 03:09:54,588 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-21 03:09:54,589 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (1/1) ... [2022-02-21 03:09:54,596 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:09:54,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:54,620 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-21 03:09:54,633 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-21 03:09:54,658 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-21 03:09:54,659 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-21 03:09:54,659 INFO L130 BoogieDeclarations]: Found specification of procedure base2flt [2022-02-21 03:09:54,659 INFO L138 BoogieDeclarations]: Found implementation of procedure base2flt [2022-02-21 03:09:54,659 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-21 03:09:54,659 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-21 03:09:54,659 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-21 03:09:54,659 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-21 03:09:54,751 INFO L234 CfgBuilder]: Building ICFG [2022-02-21 03:09:54,752 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-21 03:09:55,333 INFO L275 CfgBuilder]: Performing block encoding [2022-02-21 03:09:55,343 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-21 03:09:55,343 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-21 03:09:55,345 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:09:55 BoogieIcfgContainer [2022-02-21 03:09:55,345 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-21 03:09:55,346 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-21 03:09:55,346 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-21 03:09:55,355 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-21 03:09:55,356 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 21.02 03:09:54" (1/3) ... [2022-02-21 03:09:55,356 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3809037e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:09:55, skipping insertion in model container [2022-02-21 03:09:55,356 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:54" (2/3) ... [2022-02-21 03:09:55,356 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3809037e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:09:55, skipping insertion in model container [2022-02-21 03:09:55,357 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:09:55" (3/3) ... [2022-02-21 03:09:55,357 INFO L111 eAbstractionObserver]: Analyzing ICFG soft_float_3.c.cil.c [2022-02-21 03:09:55,361 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-21 03:09:55,361 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 30 error locations. [2022-02-21 03:09:55,390 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-21 03:09:55,394 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=FINITE_AUTOMATA, 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-21 03:09:55,394 INFO L340 AbstractCegarLoop]: Starting to check reachability of 30 error locations. [2022-02-21 03:09:55,412 INFO L276 IsEmpty]: Start isEmpty. Operand has 143 states, 105 states have (on average 1.8095238095238095) internal successors, (190), 136 states have internal predecessors, (190), 5 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-21 03:09:55,415 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:09:55,415 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:55,415 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:55,416 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting base2fltErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:09:55,419 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:55,419 INFO L85 PathProgramCache]: Analyzing trace with hash -740111720, now seen corresponding path program 1 times [2022-02-21 03:09:55,425 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:55,425 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2008774565] [2022-02-21 03:09:55,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:55,426 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:55,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:55,548 INFO L290 TraceCheckUtils]: 0: Hoare triple {146#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(21, 2);call #Ultimate.allocInit(12, 3); {146#true} is VALID [2022-02-21 03:09:55,548 INFO L290 TraceCheckUtils]: 1: Hoare triple {146#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {146#true} is VALID [2022-02-21 03:09:55,548 INFO L272 TraceCheckUtils]: 2: Hoare triple {146#true} call main_#t~ret22#1 := base2flt(0, 0); {146#true} is VALID [2022-02-21 03:09:55,549 INFO L290 TraceCheckUtils]: 3: Hoare triple {146#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {146#true} is VALID [2022-02-21 03:09:55,549 INFO L290 TraceCheckUtils]: 4: Hoare triple {146#true} assume !(0 == ~m % 4294967296); {146#true} is VALID [2022-02-21 03:09:55,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {146#true} assume !(~m % 4294967296 < 16777216); {146#true} is VALID [2022-02-21 03:09:55,550 INFO L290 TraceCheckUtils]: 6: Hoare triple {146#true} assume !true; {147#false} is VALID [2022-02-21 03:09:55,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {147#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {147#false} is VALID [2022-02-21 03:09:55,550 INFO L290 TraceCheckUtils]: 8: Hoare triple {147#false} assume !(128 + ~e <= 2147483647); {147#false} is VALID [2022-02-21 03:09:55,551 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-21 03:09:55,552 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:55,552 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2008774565] [2022-02-21 03:09:55,552 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2008774565] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:55,552 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:55,553 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-21 03:09:55,554 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [663530729] [2022-02-21 03:09:55,555 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:55,559 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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 9 [2022-02-21 03:09:55,560 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:55,562 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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-21 03:09:55,571 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:55,572 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-21 03:09:55,572 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:55,591 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-21 03:09:55,591 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-21 03:09:55,597 INFO L87 Difference]: Start difference. First operand has 143 states, 105 states have (on average 1.8095238095238095) internal successors, (190), 136 states have internal predecessors, (190), 5 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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-21 03:09:55,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:55,757 INFO L93 Difference]: Finished difference Result 281 states and 401 transitions. [2022-02-21 03:09:55,757 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-21 03:09:55,757 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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 9 [2022-02-21 03:09:55,758 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:55,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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-21 03:09:55,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 401 transitions. [2022-02-21 03:09:55,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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-21 03:09:55,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 401 transitions. [2022-02-21 03:09:55,780 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 401 transitions. [2022-02-21 03:09:56,189 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 401 edges. 401 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:56,197 INFO L225 Difference]: With dead ends: 281 [2022-02-21 03:09:56,198 INFO L226 Difference]: Without dead ends: 117 [2022-02-21 03:09:56,201 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-21 03:09:56,206 INFO L933 BasicCegarLoop]: 183 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 183 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:56,207 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 183 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:56,218 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 117 states. [2022-02-21 03:09:56,230 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 117 to 117. [2022-02-21 03:09:56,231 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:56,232 INFO L82 GeneralOperation]: Start isEquivalent. First operand 117 states. Second operand has 117 states, 84 states have (on average 1.630952380952381) internal successors, (137), 111 states have internal predecessors, (137), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,232 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand has 117 states, 84 states have (on average 1.630952380952381) internal successors, (137), 111 states have internal predecessors, (137), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,233 INFO L87 Difference]: Start difference. First operand 117 states. Second operand has 117 states, 84 states have (on average 1.630952380952381) internal successors, (137), 111 states have internal predecessors, (137), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,238 INFO L93 Difference]: Finished difference Result 117 states and 145 transitions. [2022-02-21 03:09:56,238 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 145 transitions. [2022-02-21 03:09:56,240 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,240 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,240 INFO L74 IsIncluded]: Start isIncluded. First operand has 117 states, 84 states have (on average 1.630952380952381) internal successors, (137), 111 states have internal predecessors, (137), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 117 states. [2022-02-21 03:09:56,241 INFO L87 Difference]: Start difference. First operand has 117 states, 84 states have (on average 1.630952380952381) internal successors, (137), 111 states have internal predecessors, (137), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 117 states. [2022-02-21 03:09:56,244 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,244 INFO L93 Difference]: Finished difference Result 117 states and 145 transitions. [2022-02-21 03:09:56,244 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 145 transitions. [2022-02-21 03:09:56,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:56,254 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:56,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 117 states, 84 states have (on average 1.630952380952381) internal successors, (137), 111 states have internal predecessors, (137), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 117 states and 145 transitions. [2022-02-21 03:09:56,260 INFO L78 Accepts]: Start accepts. Automaton has 117 states and 145 transitions. Word has length 9 [2022-02-21 03:09:56,260 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:56,260 INFO L470 AbstractCegarLoop]: Abstraction has 117 states and 145 transitions. [2022-02-21 03:09:56,261 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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-21 03:09:56,261 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 145 transitions. [2022-02-21 03:09:56,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:09:56,261 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:56,261 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:56,262 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-21 03:09:56,262 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:09:56,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:56,266 INFO L85 PathProgramCache]: Analyzing trace with hash -741053068, now seen corresponding path program 1 times [2022-02-21 03:09:56,268 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:56,269 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [473469182] [2022-02-21 03:09:56,269 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:56,269 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:56,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:56,314 INFO L290 TraceCheckUtils]: 0: Hoare triple {818#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(21, 2);call #Ultimate.allocInit(12, 3); {818#true} is VALID [2022-02-21 03:09:56,314 INFO L290 TraceCheckUtils]: 1: Hoare triple {818#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {818#true} is VALID [2022-02-21 03:09:56,315 INFO L272 TraceCheckUtils]: 2: Hoare triple {818#true} call main_#t~ret22#1 := base2flt(0, 0); {820#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:56,316 INFO L290 TraceCheckUtils]: 3: Hoare triple {820#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {821#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,316 INFO L290 TraceCheckUtils]: 4: Hoare triple {821#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {821#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {821#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {821#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,317 INFO L290 TraceCheckUtils]: 6: Hoare triple {821#(= base2flt_~e 0)} assume !false; {821#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {821#(= base2flt_~e 0)} assume !(~e <= -128); {821#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {821#(= base2flt_~e 0)} assume !(~e - 1 <= 2147483647); {819#false} is VALID [2022-02-21 03:09:56,318 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-21 03:09:56,318 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:56,318 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [473469182] [2022-02-21 03:09:56,318 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [473469182] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:56,318 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:56,318 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-21 03:09:56,318 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1386500693] [2022-02-21 03:09:56,319 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:56,319 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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 9 [2022-02-21 03:09:56,320 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:56,320 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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-21 03:09:56,328 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:56,328 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:56,328 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:56,329 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:56,329 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:09:56,329 INFO L87 Difference]: Start difference. First operand 117 states and 145 transitions. Second operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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-21 03:09:56,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,627 INFO L93 Difference]: Finished difference Result 296 states and 380 transitions. [2022-02-21 03:09:56,627 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:09:56,627 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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 9 [2022-02-21 03:09:56,627 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:56,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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-21 03:09:56,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 380 transitions. [2022-02-21 03:09:56,630 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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-21 03:09:56,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 380 transitions. [2022-02-21 03:09:56,634 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 380 transitions. [2022-02-21 03:09:56,883 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 380 edges. 380 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:56,886 INFO L225 Difference]: With dead ends: 296 [2022-02-21 03:09:56,886 INFO L226 Difference]: Without dead ends: 182 [2022-02-21 03:09:56,887 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 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-21 03:09:56,888 INFO L933 BasicCegarLoop]: 133 mSDtfsCounter, 100 mSDsluCounter, 244 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 377 SdHoareTripleChecker+Invalid, 67 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:56,888 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 377 Invalid, 67 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:56,889 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 182 states. [2022-02-21 03:09:56,903 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 182 to 166. [2022-02-21 03:09:56,903 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:56,904 INFO L82 GeneralOperation]: Start isEquivalent. First operand 182 states. Second operand has 166 states, 132 states have (on average 1.6363636363636365) internal successors, (216), 159 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,904 INFO L74 IsIncluded]: Start isIncluded. First operand 182 states. Second operand has 166 states, 132 states have (on average 1.6363636363636365) internal successors, (216), 159 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,905 INFO L87 Difference]: Start difference. First operand 182 states. Second operand has 166 states, 132 states have (on average 1.6363636363636365) internal successors, (216), 159 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,910 INFO L93 Difference]: Finished difference Result 182 states and 228 transitions. [2022-02-21 03:09:56,910 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 228 transitions. [2022-02-21 03:09:56,911 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,911 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,911 INFO L74 IsIncluded]: Start isIncluded. First operand has 166 states, 132 states have (on average 1.6363636363636365) internal successors, (216), 159 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 182 states. [2022-02-21 03:09:56,912 INFO L87 Difference]: Start difference. First operand has 166 states, 132 states have (on average 1.6363636363636365) internal successors, (216), 159 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 182 states. [2022-02-21 03:09:56,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,918 INFO L93 Difference]: Finished difference Result 182 states and 228 transitions. [2022-02-21 03:09:56,918 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 228 transitions. [2022-02-21 03:09:56,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:56,918 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:56,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 166 states, 132 states have (on average 1.6363636363636365) internal successors, (216), 159 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 166 states to 166 states and 224 transitions. [2022-02-21 03:09:56,924 INFO L78 Accepts]: Start accepts. Automaton has 166 states and 224 transitions. Word has length 9 [2022-02-21 03:09:56,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:56,925 INFO L470 AbstractCegarLoop]: Abstraction has 166 states and 224 transitions. [2022-02-21 03:09:56,925 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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-21 03:09:56,925 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 224 transitions. [2022-02-21 03:09:56,925 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-21 03:09:56,925 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:56,925 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:56,925 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-21 03:09:56,926 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:09:56,926 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:56,926 INFO L85 PathProgramCache]: Analyzing trace with hash 1163268503, now seen corresponding path program 1 times [2022-02-21 03:09:56,926 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:56,926 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [934076381] [2022-02-21 03:09:56,927 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:56,927 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:56,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:56,999 INFO L290 TraceCheckUtils]: 0: Hoare triple {1695#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(21, 2);call #Ultimate.allocInit(12, 3); {1695#true} is VALID [2022-02-21 03:09:57,000 INFO L290 TraceCheckUtils]: 1: Hoare triple {1695#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {1695#true} is VALID [2022-02-21 03:09:57,000 INFO L272 TraceCheckUtils]: 2: Hoare triple {1695#true} call main_#t~ret22#1 := base2flt(0, 0); {1697#(= |base2flt_#in~m| 0)} is VALID [2022-02-21 03:09:57,001 INFO L290 TraceCheckUtils]: 3: Hoare triple {1697#(= |base2flt_#in~m| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {1698#(= base2flt_~m 0)} is VALID [2022-02-21 03:09:57,001 INFO L290 TraceCheckUtils]: 4: Hoare triple {1698#(= base2flt_~m 0)} assume !(0 == ~m % 4294967296); {1698#(= base2flt_~m 0)} is VALID [2022-02-21 03:09:57,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {1698#(= base2flt_~m 0)} assume !(~m % 4294967296 < 16777216); {1696#false} is VALID [2022-02-21 03:09:57,002 INFO L290 TraceCheckUtils]: 6: Hoare triple {1696#false} assume !false; {1696#false} is VALID [2022-02-21 03:09:57,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {1696#false} assume !(~m % 4294967296 >= 33554432); {1696#false} is VALID [2022-02-21 03:09:57,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {1696#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {1696#false} is VALID [2022-02-21 03:09:57,002 INFO L290 TraceCheckUtils]: 9: Hoare triple {1696#false} assume 128 + ~e <= 2147483647; {1696#false} is VALID [2022-02-21 03:09:57,003 INFO L290 TraceCheckUtils]: 10: Hoare triple {1696#false} assume 128 + ~e >= -2147483648; {1696#false} is VALID [2022-02-21 03:09:57,003 INFO L290 TraceCheckUtils]: 11: Hoare triple {1696#false} assume !(16777216 * (128 + ~e) <= 2147483647); {1696#false} is VALID [2022-02-21 03:09:57,003 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-21 03:09:57,003 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:57,003 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [934076381] [2022-02-21 03:09:57,004 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [934076381] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:57,004 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:57,004 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-21 03:09:57,004 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [600341865] [2022-02-21 03:09:57,004 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:57,004 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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 12 [2022-02-21 03:09:57,005 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:57,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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-21 03:09:57,013 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:57,013 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:57,014 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:57,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:57,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:09:57,014 INFO L87 Difference]: Start difference. First operand 166 states and 224 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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-21 03:09:57,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:57,249 INFO L93 Difference]: Finished difference Result 377 states and 513 transitions. [2022-02-21 03:09:57,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-21 03:09:57,250 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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 12 [2022-02-21 03:09:57,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:57,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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-21 03:09:57,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 325 transitions. [2022-02-21 03:09:57,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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-21 03:09:57,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 325 transitions. [2022-02-21 03:09:57,257 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 325 transitions. [2022-02-21 03:09:57,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 325 edges. 325 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:57,462 INFO L225 Difference]: With dead ends: 377 [2022-02-21 03:09:57,462 INFO L226 Difference]: Without dead ends: 214 [2022-02-21 03:09:57,463 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-21 03:09:57,464 INFO L933 BasicCegarLoop]: 138 mSDtfsCounter, 33 mSDsluCounter, 257 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 395 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:57,464 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 395 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:57,465 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 214 states. [2022-02-21 03:09:57,471 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 214 to 189. [2022-02-21 03:09:57,471 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:57,472 INFO L82 GeneralOperation]: Start isEquivalent. First operand 214 states. Second operand has 189 states, 154 states have (on average 1.6493506493506493) internal successors, (254), 181 states have internal predecessors, (254), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:57,472 INFO L74 IsIncluded]: Start isIncluded. First operand 214 states. Second operand has 189 states, 154 states have (on average 1.6493506493506493) internal successors, (254), 181 states have internal predecessors, (254), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:57,473 INFO L87 Difference]: Start difference. First operand 214 states. Second operand has 189 states, 154 states have (on average 1.6493506493506493) internal successors, (254), 181 states have internal predecessors, (254), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:57,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:57,478 INFO L93 Difference]: Finished difference Result 214 states and 286 transitions. [2022-02-21 03:09:57,478 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 286 transitions. [2022-02-21 03:09:57,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:57,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:57,480 INFO L74 IsIncluded]: Start isIncluded. First operand has 189 states, 154 states have (on average 1.6493506493506493) internal successors, (254), 181 states have internal predecessors, (254), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 214 states. [2022-02-21 03:09:57,480 INFO L87 Difference]: Start difference. First operand has 189 states, 154 states have (on average 1.6493506493506493) internal successors, (254), 181 states have internal predecessors, (254), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 214 states. [2022-02-21 03:09:57,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:57,487 INFO L93 Difference]: Finished difference Result 214 states and 286 transitions. [2022-02-21 03:09:57,487 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 286 transitions. [2022-02-21 03:09:57,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:57,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:57,488 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:57,488 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:57,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 189 states, 154 states have (on average 1.6493506493506493) internal successors, (254), 181 states have internal predecessors, (254), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:57,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 189 states to 189 states and 262 transitions. [2022-02-21 03:09:57,494 INFO L78 Accepts]: Start accepts. Automaton has 189 states and 262 transitions. Word has length 12 [2022-02-21 03:09:57,494 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:57,494 INFO L470 AbstractCegarLoop]: Abstraction has 189 states and 262 transitions. [2022-02-21 03:09:57,494 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 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-21 03:09:57,494 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 262 transitions. [2022-02-21 03:09:57,495 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-21 03:09:57,495 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:57,495 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:57,495 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-21 03:09:57,495 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:09:57,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:57,496 INFO L85 PathProgramCache]: Analyzing trace with hash 1505632759, now seen corresponding path program 1 times [2022-02-21 03:09:57,496 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:57,496 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1828601890] [2022-02-21 03:09:57,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:57,497 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:57,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:57,589 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:09:57,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:57,595 INFO L290 TraceCheckUtils]: 0: Hoare triple {2762#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2753#true} is VALID [2022-02-21 03:09:57,595 INFO L290 TraceCheckUtils]: 1: Hoare triple {2753#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {2753#true} is VALID [2022-02-21 03:09:57,595 INFO L290 TraceCheckUtils]: 2: Hoare triple {2753#true} #res := ~__retres4~0; {2753#true} is VALID [2022-02-21 03:09:57,595 INFO L290 TraceCheckUtils]: 3: Hoare triple {2753#true} assume true; {2753#true} is VALID [2022-02-21 03:09:57,595 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {2753#true} {2753#true} #393#return; {2753#true} is VALID [2022-02-21 03:09:57,596 INFO L290 TraceCheckUtils]: 0: Hoare triple {2753#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(21, 2);call #Ultimate.allocInit(12, 3); {2753#true} is VALID [2022-02-21 03:09:57,596 INFO L290 TraceCheckUtils]: 1: Hoare triple {2753#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {2753#true} is VALID [2022-02-21 03:09:57,596 INFO L272 TraceCheckUtils]: 2: Hoare triple {2753#true} call main_#t~ret22#1 := base2flt(0, 0); {2762#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:57,597 INFO L290 TraceCheckUtils]: 3: Hoare triple {2762#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2753#true} is VALID [2022-02-21 03:09:57,597 INFO L290 TraceCheckUtils]: 4: Hoare triple {2753#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {2753#true} is VALID [2022-02-21 03:09:57,597 INFO L290 TraceCheckUtils]: 5: Hoare triple {2753#true} #res := ~__retres4~0; {2753#true} is VALID [2022-02-21 03:09:57,597 INFO L290 TraceCheckUtils]: 6: Hoare triple {2753#true} assume true; {2753#true} is VALID [2022-02-21 03:09:57,597 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {2753#true} {2753#true} #393#return; {2753#true} is VALID [2022-02-21 03:09:57,597 INFO L290 TraceCheckUtils]: 8: Hoare triple {2753#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {2753#true} is VALID [2022-02-21 03:09:57,598 INFO L272 TraceCheckUtils]: 9: Hoare triple {2753#true} call main_#t~ret23#1 := base2flt(1, 0); {2760#(= |base2flt_#in~m| 1)} is VALID [2022-02-21 03:09:57,598 INFO L290 TraceCheckUtils]: 10: Hoare triple {2760#(= |base2flt_#in~m| 1)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2761#(= (+ (- 1) base2flt_~m) 0)} is VALID [2022-02-21 03:09:57,598 INFO L290 TraceCheckUtils]: 11: Hoare triple {2761#(= (+ (- 1) base2flt_~m) 0)} assume !(0 == ~m % 4294967296); {2761#(= (+ (- 1) base2flt_~m) 0)} is VALID [2022-02-21 03:09:57,599 INFO L290 TraceCheckUtils]: 12: Hoare triple {2761#(= (+ (- 1) base2flt_~m) 0)} assume !(~m % 4294967296 < 16777216); {2754#false} is VALID [2022-02-21 03:09:57,599 INFO L290 TraceCheckUtils]: 13: Hoare triple {2754#false} assume !false; {2754#false} is VALID [2022-02-21 03:09:57,599 INFO L290 TraceCheckUtils]: 14: Hoare triple {2754#false} assume !(~m % 4294967296 >= 33554432); {2754#false} is VALID [2022-02-21 03:09:57,599 INFO L290 TraceCheckUtils]: 15: Hoare triple {2754#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {2754#false} is VALID [2022-02-21 03:09:57,599 INFO L290 TraceCheckUtils]: 16: Hoare triple {2754#false} assume 128 + ~e <= 2147483647; {2754#false} is VALID [2022-02-21 03:09:57,599 INFO L290 TraceCheckUtils]: 17: Hoare triple {2754#false} assume 128 + ~e >= -2147483648; {2754#false} is VALID [2022-02-21 03:09:57,600 INFO L290 TraceCheckUtils]: 18: Hoare triple {2754#false} assume !(16777216 * (128 + ~e) <= 2147483647); {2754#false} is VALID [2022-02-21 03:09:57,600 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:57,600 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:57,600 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1828601890] [2022-02-21 03:09:57,600 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1828601890] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:09:57,600 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [961344118] [2022-02-21 03:09:57,600 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:57,601 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:57,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:57,602 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:09:57,603 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-21 03:09:57,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:57,642 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-21 03:09:57,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:57,654 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:09:57,745 INFO L290 TraceCheckUtils]: 0: Hoare triple {2753#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(21, 2);call #Ultimate.allocInit(12, 3); {2753#true} is VALID [2022-02-21 03:09:57,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {2753#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L272 TraceCheckUtils]: 2: Hoare triple {2753#true} call main_#t~ret22#1 := base2flt(0, 0); {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L290 TraceCheckUtils]: 3: Hoare triple {2753#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L290 TraceCheckUtils]: 4: Hoare triple {2753#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {2753#true} #res := ~__retres4~0; {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L290 TraceCheckUtils]: 6: Hoare triple {2753#true} assume true; {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {2753#true} {2753#true} #393#return; {2753#true} is VALID [2022-02-21 03:09:57,746 INFO L290 TraceCheckUtils]: 8: Hoare triple {2753#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {2753#true} is VALID [2022-02-21 03:09:57,747 INFO L272 TraceCheckUtils]: 9: Hoare triple {2753#true} call main_#t~ret23#1 := base2flt(1, 0); {2760#(= |base2flt_#in~m| 1)} is VALID [2022-02-21 03:09:57,747 INFO L290 TraceCheckUtils]: 10: Hoare triple {2760#(= |base2flt_#in~m| 1)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2761#(= (+ (- 1) base2flt_~m) 0)} is VALID [2022-02-21 03:09:57,747 INFO L290 TraceCheckUtils]: 11: Hoare triple {2761#(= (+ (- 1) base2flt_~m) 0)} assume !(0 == ~m % 4294967296); {2761#(= (+ (- 1) base2flt_~m) 0)} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 12: Hoare triple {2761#(= (+ (- 1) base2flt_~m) 0)} assume !(~m % 4294967296 < 16777216); {2754#false} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 13: Hoare triple {2754#false} assume !false; {2754#false} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {2754#false} assume !(~m % 4294967296 >= 33554432); {2754#false} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {2754#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {2754#false} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {2754#false} assume 128 + ~e <= 2147483647; {2754#false} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {2754#false} assume 128 + ~e >= -2147483648; {2754#false} is VALID [2022-02-21 03:09:57,748 INFO L290 TraceCheckUtils]: 18: Hoare triple {2754#false} assume !(16777216 * (128 + ~e) <= 2147483647); {2754#false} is VALID [2022-02-21 03:09:57,749 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:57,749 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:09:57,749 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [961344118] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:57,749 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:09:57,749 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:09:57,749 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [260665180] [2022-02-21 03:09:57,749 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:57,750 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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 19 [2022-02-21 03:09:57,750 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:57,754 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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-21 03:09:57,766 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-21 03:09:57,766 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:57,766 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:57,773 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:57,774 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-21 03:09:57,774 INFO L87 Difference]: Start difference. First operand 189 states and 262 transitions. Second operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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-21 03:09:58,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,030 INFO L93 Difference]: Finished difference Result 357 states and 479 transitions. [2022-02-21 03:09:58,030 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-21 03:09:58,030 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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 19 [2022-02-21 03:09:58,030 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:58,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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-21 03:09:58,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 346 transitions. [2022-02-21 03:09:58,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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-21 03:09:58,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 346 transitions. [2022-02-21 03:09:58,037 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 346 transitions. [2022-02-21 03:09:58,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 346 edges. 346 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:58,263 INFO L225 Difference]: With dead ends: 357 [2022-02-21 03:09:58,263 INFO L226 Difference]: Without dead ends: 190 [2022-02-21 03:09:58,264 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 23 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:09:58,264 INFO L933 BasicCegarLoop]: 148 mSDtfsCounter, 60 mSDsluCounter, 265 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 413 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:58,265 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 413 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:58,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 190 states. [2022-02-21 03:09:58,271 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 190 to 172. [2022-02-21 03:09:58,271 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:58,271 INFO L82 GeneralOperation]: Start isEquivalent. First operand 190 states. Second operand has 172 states, 137 states have (on average 1.6496350364963503) internal successors, (226), 164 states have internal predecessors, (226), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:58,272 INFO L74 IsIncluded]: Start isIncluded. First operand 190 states. Second operand has 172 states, 137 states have (on average 1.6496350364963503) internal successors, (226), 164 states have internal predecessors, (226), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:58,272 INFO L87 Difference]: Start difference. First operand 190 states. Second operand has 172 states, 137 states have (on average 1.6496350364963503) internal successors, (226), 164 states have internal predecessors, (226), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:58,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,276 INFO L93 Difference]: Finished difference Result 190 states and 243 transitions. [2022-02-21 03:09:58,276 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 243 transitions. [2022-02-21 03:09:58,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:58,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:58,277 INFO L74 IsIncluded]: Start isIncluded. First operand has 172 states, 137 states have (on average 1.6496350364963503) internal successors, (226), 164 states have internal predecessors, (226), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 190 states. [2022-02-21 03:09:58,277 INFO L87 Difference]: Start difference. First operand has 172 states, 137 states have (on average 1.6496350364963503) internal successors, (226), 164 states have internal predecessors, (226), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 190 states. [2022-02-21 03:09:58,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,281 INFO L93 Difference]: Finished difference Result 190 states and 243 transitions. [2022-02-21 03:09:58,281 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 243 transitions. [2022-02-21 03:09:58,281 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:58,281 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:58,281 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:58,281 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:58,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 172 states, 137 states have (on average 1.6496350364963503) internal successors, (226), 164 states have internal predecessors, (226), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:58,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 172 states to 172 states and 234 transitions. [2022-02-21 03:09:58,299 INFO L78 Accepts]: Start accepts. Automaton has 172 states and 234 transitions. Word has length 19 [2022-02-21 03:09:58,299 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:58,299 INFO L470 AbstractCegarLoop]: Abstraction has 172 states and 234 transitions. [2022-02-21 03:09:58,299 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 4.0) internal successors, (16), 3 states have internal predecessors, (16), 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-21 03:09:58,300 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 234 transitions. [2022-02-21 03:09:58,300 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-21 03:09:58,300 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:58,300 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:58,331 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-21 03:09:58,500 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:58,501 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting base2fltErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:09:58,501 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:58,501 INFO L85 PathProgramCache]: Analyzing trace with hash 1223519597, now seen corresponding path program 1 times [2022-02-21 03:09:58,501 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:58,501 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [830459891] [2022-02-21 03:09:58,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:58,502 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:58,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,570 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:09:58,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,596 INFO L290 TraceCheckUtils]: 0: Hoare triple {3787#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3777#true} is VALID [2022-02-21 03:09:58,597 INFO L290 TraceCheckUtils]: 1: Hoare triple {3777#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {3777#true} is VALID [2022-02-21 03:09:58,597 INFO L290 TraceCheckUtils]: 2: Hoare triple {3777#true} #res := ~__retres4~0; {3777#true} is VALID [2022-02-21 03:09:58,597 INFO L290 TraceCheckUtils]: 3: Hoare triple {3777#true} assume true; {3777#true} is VALID [2022-02-21 03:09:58,597 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3777#true} {3777#true} #393#return; {3777#true} is VALID [2022-02-21 03:09:58,597 INFO L290 TraceCheckUtils]: 0: Hoare triple {3777#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(21, 2);call #Ultimate.allocInit(12, 3); {3777#true} is VALID [2022-02-21 03:09:58,597 INFO L290 TraceCheckUtils]: 1: Hoare triple {3777#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {3777#true} is VALID [2022-02-21 03:09:58,602 INFO L272 TraceCheckUtils]: 2: Hoare triple {3777#true} call main_#t~ret22#1 := base2flt(0, 0); {3787#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:58,602 INFO L290 TraceCheckUtils]: 3: Hoare triple {3787#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3777#true} is VALID [2022-02-21 03:09:58,602 INFO L290 TraceCheckUtils]: 4: Hoare triple {3777#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {3777#true} is VALID [2022-02-21 03:09:58,602 INFO L290 TraceCheckUtils]: 5: Hoare triple {3777#true} #res := ~__retres4~0; {3777#true} is VALID [2022-02-21 03:09:58,602 INFO L290 TraceCheckUtils]: 6: Hoare triple {3777#true} assume true; {3777#true} is VALID [2022-02-21 03:09:58,602 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {3777#true} {3777#true} #393#return; {3777#true} is VALID [2022-02-21 03:09:58,603 INFO L290 TraceCheckUtils]: 8: Hoare triple {3777#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {3777#true} is VALID [2022-02-21 03:09:58,605 INFO L272 TraceCheckUtils]: 9: Hoare triple {3777#true} call main_#t~ret23#1 := base2flt(1, 0); {3784#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:58,605 INFO L290 TraceCheckUtils]: 10: Hoare triple {3784#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3785#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,606 INFO L290 TraceCheckUtils]: 11: Hoare triple {3785#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {3785#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,606 INFO L290 TraceCheckUtils]: 12: Hoare triple {3785#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {3785#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,606 INFO L290 TraceCheckUtils]: 13: Hoare triple {3785#(= base2flt_~e 0)} assume !false; {3785#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,607 INFO L290 TraceCheckUtils]: 14: Hoare triple {3785#(= base2flt_~e 0)} assume !(~e <= -128); {3785#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,607 INFO L290 TraceCheckUtils]: 15: Hoare triple {3785#(= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {3785#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,608 INFO L290 TraceCheckUtils]: 16: Hoare triple {3785#(= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {3786#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:58,608 INFO L290 TraceCheckUtils]: 17: Hoare triple {3786#(<= (+ base2flt_~e 1) 0)} assume !(~m % 4294967296 < 16777216); {3786#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:58,608 INFO L290 TraceCheckUtils]: 18: Hoare triple {3786#(<= (+ base2flt_~e 1) 0)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {3786#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:58,609 INFO L290 TraceCheckUtils]: 19: Hoare triple {3786#(<= (+ base2flt_~e 1) 0)} assume !(128 + ~e <= 2147483647); {3778#false} is VALID [2022-02-21 03:09:58,609 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:58,609 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:58,609 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [830459891] [2022-02-21 03:09:58,609 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [830459891] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:09:58,609 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [39909465] [2022-02-21 03:09:58,609 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:58,609 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:58,610 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:58,611 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:09:58,612 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-21 03:09:58,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,652 INFO L263 TraceCheckSpWp]: Trace formula consists of 87 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:09:58,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,661 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:09:58,747 INFO L290 TraceCheckUtils]: 0: Hoare triple {3777#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(21, 2);call #Ultimate.allocInit(12, 3); {3777#true} is VALID [2022-02-21 03:09:58,748 INFO L290 TraceCheckUtils]: 1: Hoare triple {3777#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {3777#true} is VALID [2022-02-21 03:09:58,748 INFO L272 TraceCheckUtils]: 2: Hoare triple {3777#true} call main_#t~ret22#1 := base2flt(0, 0); {3777#true} is VALID [2022-02-21 03:09:58,748 INFO L290 TraceCheckUtils]: 3: Hoare triple {3777#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3777#true} is VALID [2022-02-21 03:09:58,748 INFO L290 TraceCheckUtils]: 4: Hoare triple {3777#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {3777#true} is VALID [2022-02-21 03:09:58,748 INFO L290 TraceCheckUtils]: 5: Hoare triple {3777#true} #res := ~__retres4~0; {3777#true} is VALID [2022-02-21 03:09:58,751 INFO L290 TraceCheckUtils]: 6: Hoare triple {3777#true} assume true; {3777#true} is VALID [2022-02-21 03:09:58,751 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {3777#true} {3777#true} #393#return; {3777#true} is VALID [2022-02-21 03:09:58,751 INFO L290 TraceCheckUtils]: 8: Hoare triple {3777#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {3777#true} is VALID [2022-02-21 03:09:58,752 INFO L272 TraceCheckUtils]: 9: Hoare triple {3777#true} call main_#t~ret23#1 := base2flt(1, 0); {3818#(<= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:58,752 INFO L290 TraceCheckUtils]: 10: Hoare triple {3818#(<= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3822#(<= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,753 INFO L290 TraceCheckUtils]: 11: Hoare triple {3822#(<= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {3822#(<= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,753 INFO L290 TraceCheckUtils]: 12: Hoare triple {3822#(<= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {3822#(<= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,753 INFO L290 TraceCheckUtils]: 13: Hoare triple {3822#(<= base2flt_~e 0)} assume !false; {3822#(<= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,754 INFO L290 TraceCheckUtils]: 14: Hoare triple {3822#(<= base2flt_~e 0)} assume !(~e <= -128); {3822#(<= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,754 INFO L290 TraceCheckUtils]: 15: Hoare triple {3822#(<= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {3822#(<= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,756 INFO L290 TraceCheckUtils]: 16: Hoare triple {3822#(<= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {3786#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:58,757 INFO L290 TraceCheckUtils]: 17: Hoare triple {3786#(<= (+ base2flt_~e 1) 0)} assume !(~m % 4294967296 < 16777216); {3786#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:58,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {3786#(<= (+ base2flt_~e 1) 0)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {3786#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:58,771 INFO L290 TraceCheckUtils]: 19: Hoare triple {3786#(<= (+ base2flt_~e 1) 0)} assume !(128 + ~e <= 2147483647); {3778#false} is VALID [2022-02-21 03:09:58,771 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:58,771 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:09:58,772 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [39909465] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:58,772 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:09:58,772 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 7 [2022-02-21 03:09:58,772 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2109772590] [2022-02-21 03:09:58,772 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:58,773 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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 20 [2022-02-21 03:09:58,773 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:58,774 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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-21 03:09:58,784 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:58,785 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:58,785 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:58,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:58,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-21 03:09:58,786 INFO L87 Difference]: Start difference. First operand 172 states and 234 transitions. Second operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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-21 03:09:59,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,080 INFO L93 Difference]: Finished difference Result 183 states and 238 transitions. [2022-02-21 03:09:59,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:09:59,080 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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 20 [2022-02-21 03:09:59,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:59,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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-21 03:09:59,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 203 transitions. [2022-02-21 03:09:59,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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-21 03:09:59,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 203 transitions. [2022-02-21 03:09:59,083 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 203 transitions. [2022-02-21 03:09:59,232 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 203 edges. 203 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,235 INFO L225 Difference]: With dead ends: 183 [2022-02-21 03:09:59,235 INFO L226 Difference]: Without dead ends: 178 [2022-02-21 03:09:59,235 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-02-21 03:09:59,236 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 152 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 152 SdHoareTripleChecker+Valid, 357 SdHoareTripleChecker+Invalid, 90 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:59,236 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [152 Valid, 357 Invalid, 90 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:09:59,237 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 178 states. [2022-02-21 03:09:59,247 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 178 to 170. [2022-02-21 03:09:59,248 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:59,248 INFO L82 GeneralOperation]: Start isEquivalent. First operand 178 states. Second operand has 170 states, 137 states have (on average 1.5547445255474452) internal successors, (213), 162 states have internal predecessors, (213), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,248 INFO L74 IsIncluded]: Start isIncluded. First operand 178 states. Second operand has 170 states, 137 states have (on average 1.5547445255474452) internal successors, (213), 162 states have internal predecessors, (213), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,249 INFO L87 Difference]: Start difference. First operand 178 states. Second operand has 170 states, 137 states have (on average 1.5547445255474452) internal successors, (213), 162 states have internal predecessors, (213), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,252 INFO L93 Difference]: Finished difference Result 178 states and 225 transitions. [2022-02-21 03:09:59,252 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 225 transitions. [2022-02-21 03:09:59,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,253 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 137 states have (on average 1.5547445255474452) internal successors, (213), 162 states have internal predecessors, (213), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 178 states. [2022-02-21 03:09:59,253 INFO L87 Difference]: Start difference. First operand has 170 states, 137 states have (on average 1.5547445255474452) internal successors, (213), 162 states have internal predecessors, (213), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 178 states. [2022-02-21 03:09:59,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,258 INFO L93 Difference]: Finished difference Result 178 states and 225 transitions. [2022-02-21 03:09:59,258 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 225 transitions. [2022-02-21 03:09:59,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:59,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:59,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 137 states have (on average 1.5547445255474452) internal successors, (213), 162 states have internal predecessors, (213), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 221 transitions. [2022-02-21 03:09:59,262 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 221 transitions. Word has length 20 [2022-02-21 03:09:59,262 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:59,262 INFO L470 AbstractCegarLoop]: Abstraction has 170 states and 221 transitions. [2022-02-21 03:09:59,262 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 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-21 03:09:59,262 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 221 transitions. [2022-02-21 03:09:59,262 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-21 03:09:59,262 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:59,262 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:59,281 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-21 03:09:59,463 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:59,463 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting base2fltErr5ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:09:59,464 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:59,464 INFO L85 PathProgramCache]: Analyzing trace with hash -725598036, now seen corresponding path program 1 times [2022-02-21 03:09:59,464 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:59,464 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1049768358] [2022-02-21 03:09:59,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:59,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:59,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,523 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:09:59,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,529 INFO L290 TraceCheckUtils]: 0: Hoare triple {4607#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {4597#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {4597#true} is VALID [2022-02-21 03:09:59,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {4597#true} #res := ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,530 INFO L290 TraceCheckUtils]: 3: Hoare triple {4597#true} assume true; {4597#true} is VALID [2022-02-21 03:09:59,530 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {4597#true} {4597#true} #393#return; {4597#true} is VALID [2022-02-21 03:09:59,530 INFO L290 TraceCheckUtils]: 0: Hoare triple {4597#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(21, 2);call #Ultimate.allocInit(12, 3); {4597#true} is VALID [2022-02-21 03:09:59,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {4597#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {4597#true} is VALID [2022-02-21 03:09:59,531 INFO L272 TraceCheckUtils]: 2: Hoare triple {4597#true} call main_#t~ret22#1 := base2flt(0, 0); {4607#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:59,531 INFO L290 TraceCheckUtils]: 3: Hoare triple {4607#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,531 INFO L290 TraceCheckUtils]: 4: Hoare triple {4597#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {4597#true} is VALID [2022-02-21 03:09:59,531 INFO L290 TraceCheckUtils]: 5: Hoare triple {4597#true} #res := ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,531 INFO L290 TraceCheckUtils]: 6: Hoare triple {4597#true} assume true; {4597#true} is VALID [2022-02-21 03:09:59,531 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {4597#true} {4597#true} #393#return; {4597#true} is VALID [2022-02-21 03:09:59,531 INFO L290 TraceCheckUtils]: 8: Hoare triple {4597#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {4597#true} is VALID [2022-02-21 03:09:59,532 INFO L272 TraceCheckUtils]: 9: Hoare triple {4597#true} call main_#t~ret23#1 := base2flt(1, 0); {4604#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:59,532 INFO L290 TraceCheckUtils]: 10: Hoare triple {4604#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4605#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,533 INFO L290 TraceCheckUtils]: 11: Hoare triple {4605#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {4605#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,533 INFO L290 TraceCheckUtils]: 12: Hoare triple {4605#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {4605#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,533 INFO L290 TraceCheckUtils]: 13: Hoare triple {4605#(= base2flt_~e 0)} assume !false; {4605#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,533 INFO L290 TraceCheckUtils]: 14: Hoare triple {4605#(= base2flt_~e 0)} assume !(~e <= -128); {4605#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,534 INFO L290 TraceCheckUtils]: 15: Hoare triple {4605#(= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {4605#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,534 INFO L290 TraceCheckUtils]: 16: Hoare triple {4605#(= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {4606#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,534 INFO L290 TraceCheckUtils]: 17: Hoare triple {4606#(<= 0 (+ base2flt_~e 1))} assume !(~m % 4294967296 < 16777216); {4606#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,535 INFO L290 TraceCheckUtils]: 18: Hoare triple {4606#(<= 0 (+ base2flt_~e 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {4606#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,535 INFO L290 TraceCheckUtils]: 19: Hoare triple {4606#(<= 0 (+ base2flt_~e 1))} assume 128 + ~e <= 2147483647; {4606#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,535 INFO L290 TraceCheckUtils]: 20: Hoare triple {4606#(<= 0 (+ base2flt_~e 1))} assume !(128 + ~e >= -2147483648); {4598#false} is VALID [2022-02-21 03:09:59,536 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:59,536 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:59,536 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1049768358] [2022-02-21 03:09:59,536 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1049768358] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:09:59,536 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [228481950] [2022-02-21 03:09:59,536 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:59,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:59,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:59,537 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:09:59,538 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-21 03:09:59,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,581 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-21 03:09:59,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,593 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:09:59,668 INFO L290 TraceCheckUtils]: 0: Hoare triple {4597#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(21, 2);call #Ultimate.allocInit(12, 3); {4597#true} is VALID [2022-02-21 03:09:59,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {4597#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {4597#true} is VALID [2022-02-21 03:09:59,668 INFO L272 TraceCheckUtils]: 2: Hoare triple {4597#true} call main_#t~ret22#1 := base2flt(0, 0); {4597#true} is VALID [2022-02-21 03:09:59,668 INFO L290 TraceCheckUtils]: 3: Hoare triple {4597#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 4: Hoare triple {4597#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 5: Hoare triple {4597#true} #res := ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 6: Hoare triple {4597#true} assume true; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {4597#true} {4597#true} #393#return; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 8: Hoare triple {4597#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L272 TraceCheckUtils]: 9: Hoare triple {4597#true} call main_#t~ret23#1 := base2flt(1, 0); {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 10: Hoare triple {4597#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 11: Hoare triple {4597#true} assume !(0 == ~m % 4294967296); {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 12: Hoare triple {4597#true} assume ~m % 4294967296 < 16777216; {4597#true} is VALID [2022-02-21 03:09:59,669 INFO L290 TraceCheckUtils]: 13: Hoare triple {4597#true} assume !false; {4597#true} is VALID [2022-02-21 03:09:59,670 INFO L290 TraceCheckUtils]: 14: Hoare triple {4597#true} assume !(~e <= -128); {4653#(not (<= (+ 128 base2flt_~e) 0))} is VALID [2022-02-21 03:09:59,670 INFO L290 TraceCheckUtils]: 15: Hoare triple {4653#(not (<= (+ 128 base2flt_~e) 0))} assume ~e - 1 <= 2147483647; {4653#(not (<= (+ 128 base2flt_~e) 0))} is VALID [2022-02-21 03:09:59,671 INFO L290 TraceCheckUtils]: 16: Hoare triple {4653#(not (<= (+ 128 base2flt_~e) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {4660#(< 0 (+ 129 base2flt_~e))} is VALID [2022-02-21 03:09:59,671 INFO L290 TraceCheckUtils]: 17: Hoare triple {4660#(< 0 (+ 129 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {4660#(< 0 (+ 129 base2flt_~e))} is VALID [2022-02-21 03:09:59,671 INFO L290 TraceCheckUtils]: 18: Hoare triple {4660#(< 0 (+ 129 base2flt_~e))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {4660#(< 0 (+ 129 base2flt_~e))} is VALID [2022-02-21 03:09:59,672 INFO L290 TraceCheckUtils]: 19: Hoare triple {4660#(< 0 (+ 129 base2flt_~e))} assume 128 + ~e <= 2147483647; {4660#(< 0 (+ 129 base2flt_~e))} is VALID [2022-02-21 03:09:59,672 INFO L290 TraceCheckUtils]: 20: Hoare triple {4660#(< 0 (+ 129 base2flt_~e))} assume !(128 + ~e >= -2147483648); {4598#false} is VALID [2022-02-21 03:09:59,672 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-21 03:09:59,672 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:09:59,673 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [228481950] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:59,673 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:09:59,673 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [5] total 7 [2022-02-21 03:09:59,673 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1160294564] [2022-02-21 03:09:59,673 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:59,673 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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 21 [2022-02-21 03:09:59,674 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:59,674 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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-21 03:09:59,690 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,690 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:59,690 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:59,691 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:59,691 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-21 03:09:59,691 INFO L87 Difference]: Start difference. First operand 170 states and 221 transitions. Second operand has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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-21 03:09:59,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,903 INFO L93 Difference]: Finished difference Result 208 states and 278 transitions. [2022-02-21 03:09:59,903 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:09:59,903 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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 21 [2022-02-21 03:09:59,904 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:59,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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-21 03:09:59,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 185 transitions. [2022-02-21 03:09:59,905 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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-21 03:09:59,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 185 transitions. [2022-02-21 03:09:59,907 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 185 transitions. [2022-02-21 03:10:00,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 185 edges. 185 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:00,031 INFO L225 Difference]: With dead ends: 208 [2022-02-21 03:10:00,031 INFO L226 Difference]: Without dead ends: 203 [2022-02-21 03:10:00,031 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-21 03:10:00,033 INFO L933 BasicCegarLoop]: 129 mSDtfsCounter, 33 mSDsluCounter, 122 mSDsCounter, 0 mSdLazyCounter, 63 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 251 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 63 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:00,035 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 251 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 63 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:10:00,038 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-02-21 03:10:00,058 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 187. [2022-02-21 03:10:00,058 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:00,059 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 187 states, 155 states have (on average 1.4774193548387098) internal successors, (229), 179 states have internal predecessors, (229), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,060 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 187 states, 155 states have (on average 1.4774193548387098) internal successors, (229), 179 states have internal predecessors, (229), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,061 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 187 states, 155 states have (on average 1.4774193548387098) internal successors, (229), 179 states have internal predecessors, (229), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,066 INFO L93 Difference]: Finished difference Result 203 states and 260 transitions. [2022-02-21 03:10:00,066 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 260 transitions. [2022-02-21 03:10:00,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,067 INFO L74 IsIncluded]: Start isIncluded. First operand has 187 states, 155 states have (on average 1.4774193548387098) internal successors, (229), 179 states have internal predecessors, (229), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 203 states. [2022-02-21 03:10:00,068 INFO L87 Difference]: Start difference. First operand has 187 states, 155 states have (on average 1.4774193548387098) internal successors, (229), 179 states have internal predecessors, (229), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 203 states. [2022-02-21 03:10:00,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,076 INFO L93 Difference]: Finished difference Result 203 states and 260 transitions. [2022-02-21 03:10:00,076 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 260 transitions. [2022-02-21 03:10:00,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,077 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:00,077 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:00,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 187 states, 155 states have (on average 1.4774193548387098) internal successors, (229), 179 states have internal predecessors, (229), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 187 states to 187 states and 237 transitions. [2022-02-21 03:10:00,081 INFO L78 Accepts]: Start accepts. Automaton has 187 states and 237 transitions. Word has length 21 [2022-02-21 03:10:00,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:00,081 INFO L470 AbstractCegarLoop]: Abstraction has 187 states and 237 transitions. [2022-02-21 03:10:00,082 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 5.666666666666667) internal successors, (17), 4 states have internal predecessors, (17), 1 states have call successors, (2), 1 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-21 03:10:00,082 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 237 transitions. [2022-02-21 03:10:00,082 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-21 03:10:00,082 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:00,082 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:00,100 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:00,299 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:00,299 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:00,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:00,300 INFO L85 PathProgramCache]: Analyzing trace with hash -451289022, now seen corresponding path program 1 times [2022-02-21 03:10:00,300 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:00,300 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [790350783] [2022-02-21 03:10:00,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,300 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:00,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,354 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:00,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,359 INFO L290 TraceCheckUtils]: 0: Hoare triple {5530#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,360 INFO L290 TraceCheckUtils]: 1: Hoare triple {5510#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5510#true} is VALID [2022-02-21 03:10:00,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {5510#true} #res := ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,360 INFO L290 TraceCheckUtils]: 3: Hoare triple {5510#true} assume true; {5510#true} is VALID [2022-02-21 03:10:00,360 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {5510#true} {5510#true} #393#return; {5510#true} is VALID [2022-02-21 03:10:00,360 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:00,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,419 INFO L290 TraceCheckUtils]: 0: Hoare triple {5530#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,420 INFO L290 TraceCheckUtils]: 1: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,420 INFO L290 TraceCheckUtils]: 2: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,420 INFO L290 TraceCheckUtils]: 3: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,421 INFO L290 TraceCheckUtils]: 4: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,421 INFO L290 TraceCheckUtils]: 5: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,422 INFO L290 TraceCheckUtils]: 6: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:00,422 INFO L290 TraceCheckUtils]: 7: Hoare triple {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:00,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:00,423 INFO L290 TraceCheckUtils]: 9: Hoare triple {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e <= -128;~__retres4~0 := 0; {5533#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:00,423 INFO L290 TraceCheckUtils]: 10: Hoare triple {5533#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {5533#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:00,423 INFO L290 TraceCheckUtils]: 11: Hoare triple {5533#(not (= |base2flt_#in~e| 0))} assume true; {5533#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:00,424 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {5533#(not (= |base2flt_#in~e| 0))} {5510#true} #395#return; {5511#false} is VALID [2022-02-21 03:10:00,424 INFO L290 TraceCheckUtils]: 0: Hoare triple {5510#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(21, 2);call #Ultimate.allocInit(12, 3); {5510#true} is VALID [2022-02-21 03:10:00,425 INFO L290 TraceCheckUtils]: 1: Hoare triple {5510#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {5510#true} is VALID [2022-02-21 03:10:00,425 INFO L272 TraceCheckUtils]: 2: Hoare triple {5510#true} call main_#t~ret22#1 := base2flt(0, 0); {5530#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:00,425 INFO L290 TraceCheckUtils]: 3: Hoare triple {5530#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,425 INFO L290 TraceCheckUtils]: 4: Hoare triple {5510#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5510#true} is VALID [2022-02-21 03:10:00,426 INFO L290 TraceCheckUtils]: 5: Hoare triple {5510#true} #res := ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,426 INFO L290 TraceCheckUtils]: 6: Hoare triple {5510#true} assume true; {5510#true} is VALID [2022-02-21 03:10:00,426 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5510#true} {5510#true} #393#return; {5510#true} is VALID [2022-02-21 03:10:00,426 INFO L290 TraceCheckUtils]: 8: Hoare triple {5510#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5510#true} is VALID [2022-02-21 03:10:00,427 INFO L272 TraceCheckUtils]: 9: Hoare triple {5510#true} call main_#t~ret23#1 := base2flt(1, 0); {5530#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:00,427 INFO L290 TraceCheckUtils]: 10: Hoare triple {5530#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,427 INFO L290 TraceCheckUtils]: 11: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,428 INFO L290 TraceCheckUtils]: 12: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,428 INFO L290 TraceCheckUtils]: 13: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,428 INFO L290 TraceCheckUtils]: 14: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,429 INFO L290 TraceCheckUtils]: 15: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:00,429 INFO L290 TraceCheckUtils]: 16: Hoare triple {5531#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:00,430 INFO L290 TraceCheckUtils]: 17: Hoare triple {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:00,430 INFO L290 TraceCheckUtils]: 18: Hoare triple {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:00,430 INFO L290 TraceCheckUtils]: 19: Hoare triple {5532#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e <= -128;~__retres4~0 := 0; {5533#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:00,431 INFO L290 TraceCheckUtils]: 20: Hoare triple {5533#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {5533#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:00,431 INFO L290 TraceCheckUtils]: 21: Hoare triple {5533#(not (= |base2flt_#in~e| 0))} assume true; {5533#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:00,432 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {5533#(not (= |base2flt_#in~e| 0))} {5510#true} #395#return; {5511#false} is VALID [2022-02-21 03:10:00,432 INFO L290 TraceCheckUtils]: 23: Hoare triple {5511#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5511#false} is VALID [2022-02-21 03:10:00,432 INFO L272 TraceCheckUtils]: 24: Hoare triple {5511#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5511#false} is VALID [2022-02-21 03:10:00,432 INFO L290 TraceCheckUtils]: 25: Hoare triple {5511#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5511#false} is VALID [2022-02-21 03:10:00,432 INFO L290 TraceCheckUtils]: 26: Hoare triple {5511#false} assume !(0 == ~m % 4294967296); {5511#false} is VALID [2022-02-21 03:10:00,432 INFO L290 TraceCheckUtils]: 27: Hoare triple {5511#false} assume ~m % 4294967296 < 16777216; {5511#false} is VALID [2022-02-21 03:10:00,432 INFO L290 TraceCheckUtils]: 28: Hoare triple {5511#false} assume !false; {5511#false} is VALID [2022-02-21 03:10:00,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {5511#false} assume !(~e <= -128); {5511#false} is VALID [2022-02-21 03:10:00,433 INFO L290 TraceCheckUtils]: 30: Hoare triple {5511#false} assume !(~e - 1 <= 2147483647); {5511#false} is VALID [2022-02-21 03:10:00,433 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:00,433 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:00,433 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [790350783] [2022-02-21 03:10:00,433 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [790350783] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:00,434 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [552365232] [2022-02-21 03:10:00,434 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:00,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:00,435 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:00,442 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-21 03:10:00,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,495 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:00,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,505 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:00,625 INFO L290 TraceCheckUtils]: 0: Hoare triple {5510#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(21, 2);call #Ultimate.allocInit(12, 3); {5510#true} is VALID [2022-02-21 03:10:00,625 INFO L290 TraceCheckUtils]: 1: Hoare triple {5510#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {5510#true} is VALID [2022-02-21 03:10:00,625 INFO L272 TraceCheckUtils]: 2: Hoare triple {5510#true} call main_#t~ret22#1 := base2flt(0, 0); {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L290 TraceCheckUtils]: 3: Hoare triple {5510#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L290 TraceCheckUtils]: 4: Hoare triple {5510#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L290 TraceCheckUtils]: 5: Hoare triple {5510#true} #res := ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L290 TraceCheckUtils]: 6: Hoare triple {5510#true} assume true; {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5510#true} {5510#true} #393#return; {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L290 TraceCheckUtils]: 8: Hoare triple {5510#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L272 TraceCheckUtils]: 9: Hoare triple {5510#true} call main_#t~ret23#1 := base2flt(1, 0); {5510#true} is VALID [2022-02-21 03:10:00,626 INFO L290 TraceCheckUtils]: 10: Hoare triple {5510#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5567#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:00,627 INFO L290 TraceCheckUtils]: 11: Hoare triple {5567#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {5567#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:00,628 INFO L290 TraceCheckUtils]: 12: Hoare triple {5567#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {5567#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:00,628 INFO L290 TraceCheckUtils]: 13: Hoare triple {5567#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {5567#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:00,629 INFO L290 TraceCheckUtils]: 14: Hoare triple {5567#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {5567#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:00,629 INFO L290 TraceCheckUtils]: 15: Hoare triple {5567#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {5567#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:00,630 INFO L290 TraceCheckUtils]: 16: Hoare triple {5567#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {5586#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:00,630 INFO L290 TraceCheckUtils]: 17: Hoare triple {5586#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {5586#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:00,631 INFO L290 TraceCheckUtils]: 18: Hoare triple {5586#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {5586#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:00,631 INFO L290 TraceCheckUtils]: 19: Hoare triple {5586#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e <= -128;~__retres4~0 := 0; {5596#(<= (+ 127 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:00,632 INFO L290 TraceCheckUtils]: 20: Hoare triple {5596#(<= (+ 127 |base2flt_#in~e|) 0)} #res := ~__retres4~0; {5596#(<= (+ 127 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:00,632 INFO L290 TraceCheckUtils]: 21: Hoare triple {5596#(<= (+ 127 |base2flt_#in~e|) 0)} assume true; {5596#(<= (+ 127 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:00,633 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {5596#(<= (+ 127 |base2flt_#in~e|) 0)} {5510#true} #395#return; {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 23: Hoare triple {5511#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L272 TraceCheckUtils]: 24: Hoare triple {5511#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 25: Hoare triple {5511#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 26: Hoare triple {5511#false} assume !(0 == ~m % 4294967296); {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 27: Hoare triple {5511#false} assume ~m % 4294967296 < 16777216; {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 28: Hoare triple {5511#false} assume !false; {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 29: Hoare triple {5511#false} assume !(~e <= -128); {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L290 TraceCheckUtils]: 30: Hoare triple {5511#false} assume !(~e - 1 <= 2147483647); {5511#false} is VALID [2022-02-21 03:10:00,633 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:00,634 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:00,864 INFO L290 TraceCheckUtils]: 30: Hoare triple {5511#false} assume !(~e - 1 <= 2147483647); {5511#false} is VALID [2022-02-21 03:10:00,864 INFO L290 TraceCheckUtils]: 29: Hoare triple {5511#false} assume !(~e <= -128); {5511#false} is VALID [2022-02-21 03:10:00,864 INFO L290 TraceCheckUtils]: 28: Hoare triple {5511#false} assume !false; {5511#false} is VALID [2022-02-21 03:10:00,864 INFO L290 TraceCheckUtils]: 27: Hoare triple {5511#false} assume ~m % 4294967296 < 16777216; {5511#false} is VALID [2022-02-21 03:10:00,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {5511#false} assume !(0 == ~m % 4294967296); {5511#false} is VALID [2022-02-21 03:10:00,864 INFO L290 TraceCheckUtils]: 25: Hoare triple {5511#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5511#false} is VALID [2022-02-21 03:10:00,864 INFO L272 TraceCheckUtils]: 24: Hoare triple {5511#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5511#false} is VALID [2022-02-21 03:10:00,865 INFO L290 TraceCheckUtils]: 23: Hoare triple {5511#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5511#false} is VALID [2022-02-21 03:10:00,866 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {5657#(not (<= 0 |base2flt_#in~e|))} {5510#true} #395#return; {5511#false} is VALID [2022-02-21 03:10:00,866 INFO L290 TraceCheckUtils]: 21: Hoare triple {5657#(not (<= 0 |base2flt_#in~e|))} assume true; {5657#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:00,869 INFO L290 TraceCheckUtils]: 20: Hoare triple {5657#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {5657#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:00,869 INFO L290 TraceCheckUtils]: 19: Hoare triple {5667#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {5657#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:00,870 INFO L290 TraceCheckUtils]: 18: Hoare triple {5667#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {5667#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,870 INFO L290 TraceCheckUtils]: 17: Hoare triple {5667#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {5667#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,871 INFO L290 TraceCheckUtils]: 16: Hoare triple {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {5667#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,871 INFO L290 TraceCheckUtils]: 15: Hoare triple {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,871 INFO L290 TraceCheckUtils]: 14: Hoare triple {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,872 INFO L290 TraceCheckUtils]: 11: Hoare triple {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 10: Hoare triple {5510#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5677#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:00,873 INFO L272 TraceCheckUtils]: 9: Hoare triple {5510#true} call main_#t~ret23#1 := base2flt(1, 0); {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 8: Hoare triple {5510#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5510#true} {5510#true} #393#return; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 6: Hoare triple {5510#true} assume true; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 5: Hoare triple {5510#true} #res := ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 4: Hoare triple {5510#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 3: Hoare triple {5510#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L272 TraceCheckUtils]: 2: Hoare triple {5510#true} call main_#t~ret22#1 := base2flt(0, 0); {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 1: Hoare triple {5510#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {5510#true} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 0: Hoare triple {5510#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(21, 2);call #Ultimate.allocInit(12, 3); {5510#true} is VALID [2022-02-21 03:10:00,874 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:00,874 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [552365232] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:00,874 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:00,874 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5, 5] total 12 [2022-02-21 03:10:00,874 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1728275116] [2022-02-21 03:10:00,874 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:00,875 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-02-21 03:10:00,875 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:00,875 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:00,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:00,917 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-21 03:10:00,918 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:00,918 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-21 03:10:00,918 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=90, Unknown=0, NotChecked=0, Total=132 [2022-02-21 03:10:00,918 INFO L87 Difference]: Start difference. First operand 187 states and 237 transitions. Second operand has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:02,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,622 INFO L93 Difference]: Finished difference Result 821 states and 1067 transitions. [2022-02-21 03:10:02,622 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-02-21 03:10:02,622 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-02-21 03:10:02,622 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:02,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:02,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 681 transitions. [2022-02-21 03:10:02,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:02,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 681 transitions. [2022-02-21 03:10:02,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 681 transitions. [2022-02-21 03:10:03,164 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 681 edges. 681 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:03,181 INFO L225 Difference]: With dead ends: 821 [2022-02-21 03:10:03,181 INFO L226 Difference]: Without dead ends: 667 [2022-02-21 03:10:03,182 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 259 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=342, Invalid=714, Unknown=0, NotChecked=0, Total=1056 [2022-02-21 03:10:03,183 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 619 mSDsluCounter, 859 mSDsCounter, 0 mSdLazyCounter, 429 mSolverCounterSat, 100 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 619 SdHoareTripleChecker+Valid, 977 SdHoareTripleChecker+Invalid, 529 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 100 IncrementalHoareTripleChecker+Valid, 429 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:03,183 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [619 Valid, 977 Invalid, 529 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [100 Valid, 429 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-21 03:10:03,183 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 667 states. [2022-02-21 03:10:03,215 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 667 to 217. [2022-02-21 03:10:03,215 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:03,215 INFO L82 GeneralOperation]: Start isEquivalent. First operand 667 states. Second operand has 217 states, 185 states have (on average 1.4378378378378378) internal successors, (266), 209 states have internal predecessors, (266), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:03,216 INFO L74 IsIncluded]: Start isIncluded. First operand 667 states. Second operand has 217 states, 185 states have (on average 1.4378378378378378) internal successors, (266), 209 states have internal predecessors, (266), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:03,216 INFO L87 Difference]: Start difference. First operand 667 states. Second operand has 217 states, 185 states have (on average 1.4378378378378378) internal successors, (266), 209 states have internal predecessors, (266), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:03,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:03,236 INFO L93 Difference]: Finished difference Result 667 states and 852 transitions. [2022-02-21 03:10:03,236 INFO L276 IsEmpty]: Start isEmpty. Operand 667 states and 852 transitions. [2022-02-21 03:10:03,237 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:03,237 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:03,238 INFO L74 IsIncluded]: Start isIncluded. First operand has 217 states, 185 states have (on average 1.4378378378378378) internal successors, (266), 209 states have internal predecessors, (266), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 667 states. [2022-02-21 03:10:03,238 INFO L87 Difference]: Start difference. First operand has 217 states, 185 states have (on average 1.4378378378378378) internal successors, (266), 209 states have internal predecessors, (266), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 667 states. [2022-02-21 03:10:03,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:03,259 INFO L93 Difference]: Finished difference Result 667 states and 852 transitions. [2022-02-21 03:10:03,259 INFO L276 IsEmpty]: Start isEmpty. Operand 667 states and 852 transitions. [2022-02-21 03:10:03,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:03,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:03,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:03,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:03,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 217 states, 185 states have (on average 1.4378378378378378) internal successors, (266), 209 states have internal predecessors, (266), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:03,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 217 states to 217 states and 274 transitions. [2022-02-21 03:10:03,266 INFO L78 Accepts]: Start accepts. Automaton has 217 states and 274 transitions. Word has length 31 [2022-02-21 03:10:03,266 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:03,266 INFO L470 AbstractCegarLoop]: Abstraction has 217 states and 274 transitions. [2022-02-21 03:10:03,266 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.25) internal successors, (51), 11 states have internal predecessors, (51), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:03,266 INFO L276 IsEmpty]: Start isEmpty. Operand 217 states and 274 transitions. [2022-02-21 03:10:03,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-21 03:10:03,267 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:03,267 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:03,291 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:03,481 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:03,481 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:03,481 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:03,482 INFO L85 PathProgramCache]: Analyzing trace with hash -96158884, now seen corresponding path program 1 times [2022-02-21 03:10:03,482 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:03,482 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2113233957] [2022-02-21 03:10:03,482 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:03,482 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:03,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,555 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:03,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,561 INFO L290 TraceCheckUtils]: 0: Hoare triple {8282#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {8247#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8247#true} is VALID [2022-02-21 03:10:03,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {8247#true} #res := ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,562 INFO L290 TraceCheckUtils]: 3: Hoare triple {8247#true} assume true; {8247#true} is VALID [2022-02-21 03:10:03,562 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8247#true} {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #393#return; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,562 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:03,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,588 INFO L290 TraceCheckUtils]: 0: Hoare triple {8282#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {8247#true} assume !(0 == ~m % 4294967296); {8247#true} is VALID [2022-02-21 03:10:03,588 INFO L290 TraceCheckUtils]: 2: Hoare triple {8247#true} assume ~m % 4294967296 < 16777216; {8247#true} is VALID [2022-02-21 03:10:03,588 INFO L290 TraceCheckUtils]: 3: Hoare triple {8247#true} assume !false; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 4: Hoare triple {8247#true} assume !(~e <= -128); {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {8247#true} assume ~e - 1 <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 6: Hoare triple {8247#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {8247#true} assume !(~m % 4294967296 < 16777216); {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {8247#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {8247#true} assume 128 + ~e <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 10: Hoare triple {8247#true} assume 128 + ~e >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 11: Hoare triple {8247#true} assume 16777216 * (128 + ~e) <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 12: Hoare triple {8247#true} assume 16777216 * (128 + ~e) >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {8247#true} assume 128 + ~e <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {8247#true} assume 128 + ~e >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 15: Hoare triple {8247#true} assume 16777216 * (128 + ~e) <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 16: Hoare triple {8247#true} assume 16777216 * (128 + ~e) >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 17: Hoare triple {8247#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 18: Hoare triple {8247#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 19: Hoare triple {8247#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 20: Hoare triple {8247#true} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 21: Hoare triple {8247#true} ~__retres4~0 := ~res~0; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 22: Hoare triple {8247#true} #res := ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,590 INFO L290 TraceCheckUtils]: 23: Hoare triple {8247#true} assume true; {8247#true} is VALID [2022-02-21 03:10:03,591 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {8247#true} {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #395#return; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,591 INFO L290 TraceCheckUtils]: 0: Hoare triple {8247#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(21, 2);call #Ultimate.allocInit(12, 3); {8247#true} is VALID [2022-02-21 03:10:03,591 INFO L290 TraceCheckUtils]: 1: Hoare triple {8247#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,592 INFO L272 TraceCheckUtils]: 2: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {8282#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,592 INFO L290 TraceCheckUtils]: 3: Hoare triple {8282#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,592 INFO L290 TraceCheckUtils]: 4: Hoare triple {8247#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8247#true} is VALID [2022-02-21 03:10:03,592 INFO L290 TraceCheckUtils]: 5: Hoare triple {8247#true} #res := ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,592 INFO L290 TraceCheckUtils]: 6: Hoare triple {8247#true} assume true; {8247#true} is VALID [2022-02-21 03:10:03,593 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {8247#true} {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #393#return; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,593 INFO L272 TraceCheckUtils]: 9: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {8282#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,593 INFO L290 TraceCheckUtils]: 10: Hoare triple {8282#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 11: Hoare triple {8247#true} assume !(0 == ~m % 4294967296); {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 12: Hoare triple {8247#true} assume ~m % 4294967296 < 16777216; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 13: Hoare triple {8247#true} assume !false; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 14: Hoare triple {8247#true} assume !(~e <= -128); {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 15: Hoare triple {8247#true} assume ~e - 1 <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 16: Hoare triple {8247#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 17: Hoare triple {8247#true} assume !(~m % 4294967296 < 16777216); {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 18: Hoare triple {8247#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 19: Hoare triple {8247#true} assume 128 + ~e <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {8247#true} assume 128 + ~e >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 21: Hoare triple {8247#true} assume 16777216 * (128 + ~e) <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 22: Hoare triple {8247#true} assume 16777216 * (128 + ~e) >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {8247#true} assume 128 + ~e <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 24: Hoare triple {8247#true} assume 128 + ~e >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 25: Hoare triple {8247#true} assume 16777216 * (128 + ~e) <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 26: Hoare triple {8247#true} assume 16777216 * (128 + ~e) >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 27: Hoare triple {8247#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {8247#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 29: Hoare triple {8247#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 30: Hoare triple {8247#true} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 31: Hoare triple {8247#true} ~__retres4~0 := ~res~0; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 32: Hoare triple {8247#true} #res := ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,595 INFO L290 TraceCheckUtils]: 33: Hoare triple {8247#true} assume true; {8247#true} is VALID [2022-02-21 03:10:03,596 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {8247#true} {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #395#return; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,596 INFO L290 TraceCheckUtils]: 35: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,596 INFO L272 TraceCheckUtils]: 36: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {8280#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:03,597 INFO L290 TraceCheckUtils]: 37: Hoare triple {8280#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,597 INFO L290 TraceCheckUtils]: 38: Hoare triple {8281#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,597 INFO L290 TraceCheckUtils]: 39: Hoare triple {8281#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,598 INFO L290 TraceCheckUtils]: 40: Hoare triple {8281#(<= base2flt_~e 127)} assume !false; {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,598 INFO L290 TraceCheckUtils]: 41: Hoare triple {8281#(<= base2flt_~e 127)} assume !(~e <= -128); {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,598 INFO L290 TraceCheckUtils]: 42: Hoare triple {8281#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {8248#false} is VALID [2022-02-21 03:10:03,598 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:03,599 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:03,599 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2113233957] [2022-02-21 03:10:03,599 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2113233957] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:03,599 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1601879775] [2022-02-21 03:10:03,599 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:03,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:03,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:03,600 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:03,600 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-02-21 03:10:03,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,652 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:03,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,675 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:03,774 INFO L290 TraceCheckUtils]: 0: Hoare triple {8247#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(21, 2);call #Ultimate.allocInit(12, 3); {8247#true} is VALID [2022-02-21 03:10:03,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {8247#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,774 INFO L272 TraceCheckUtils]: 2: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {8247#true} is VALID [2022-02-21 03:10:03,774 INFO L290 TraceCheckUtils]: 3: Hoare triple {8247#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,775 INFO L290 TraceCheckUtils]: 4: Hoare triple {8247#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8247#true} is VALID [2022-02-21 03:10:03,775 INFO L290 TraceCheckUtils]: 5: Hoare triple {8247#true} #res := ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,775 INFO L290 TraceCheckUtils]: 6: Hoare triple {8247#true} assume true; {8247#true} is VALID [2022-02-21 03:10:03,778 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {8247#true} {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #393#return; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 8: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,779 INFO L272 TraceCheckUtils]: 9: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {8247#true} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 10: Hoare triple {8247#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 11: Hoare triple {8247#true} assume !(0 == ~m % 4294967296); {8247#true} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 12: Hoare triple {8247#true} assume ~m % 4294967296 < 16777216; {8247#true} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 13: Hoare triple {8247#true} assume !false; {8247#true} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {8247#true} assume !(~e <= -128); {8247#true} is VALID [2022-02-21 03:10:03,779 INFO L290 TraceCheckUtils]: 15: Hoare triple {8247#true} assume ~e - 1 <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 16: Hoare triple {8247#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 17: Hoare triple {8247#true} assume !(~m % 4294967296 < 16777216); {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 18: Hoare triple {8247#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 19: Hoare triple {8247#true} assume 128 + ~e <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 20: Hoare triple {8247#true} assume 128 + ~e >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 21: Hoare triple {8247#true} assume 16777216 * (128 + ~e) <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 22: Hoare triple {8247#true} assume 16777216 * (128 + ~e) >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 23: Hoare triple {8247#true} assume 128 + ~e <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 24: Hoare triple {8247#true} assume 128 + ~e >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,780 INFO L290 TraceCheckUtils]: 25: Hoare triple {8247#true} assume 16777216 * (128 + ~e) <= 2147483647; {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 26: Hoare triple {8247#true} assume 16777216 * (128 + ~e) >= -2147483648; {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 27: Hoare triple {8247#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 28: Hoare triple {8247#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 29: Hoare triple {8247#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {8247#true} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 31: Hoare triple {8247#true} ~__retres4~0 := ~res~0; {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 32: Hoare triple {8247#true} #res := ~__retres4~0; {8247#true} is VALID [2022-02-21 03:10:03,781 INFO L290 TraceCheckUtils]: 33: Hoare triple {8247#true} assume true; {8247#true} is VALID [2022-02-21 03:10:03,783 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {8247#true} {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #395#return; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,784 INFO L290 TraceCheckUtils]: 35: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:03,784 INFO L272 TraceCheckUtils]: 36: Hoare triple {8249#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {8280#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:03,784 INFO L290 TraceCheckUtils]: 37: Hoare triple {8280#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,785 INFO L290 TraceCheckUtils]: 38: Hoare triple {8281#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,785 INFO L290 TraceCheckUtils]: 39: Hoare triple {8281#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,785 INFO L290 TraceCheckUtils]: 40: Hoare triple {8281#(<= base2flt_~e 127)} assume !false; {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,786 INFO L290 TraceCheckUtils]: 41: Hoare triple {8281#(<= base2flt_~e 127)} assume !(~e <= -128); {8281#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:03,786 INFO L290 TraceCheckUtils]: 42: Hoare triple {8281#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {8248#false} is VALID [2022-02-21 03:10:03,786 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:03,786 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:03,787 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1601879775] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:03,787 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:03,787 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:03,787 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2026826824] [2022-02-21 03:10:03,787 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:03,787 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 43 [2022-02-21 03:10:03,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:03,788 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:03,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:03,810 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:03,810 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:03,810 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:03,810 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:03,810 INFO L87 Difference]: Start difference. First operand 217 states and 274 transitions. Second operand has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:04,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:04,204 INFO L93 Difference]: Finished difference Result 308 states and 403 transitions. [2022-02-21 03:10:04,204 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:04,205 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 43 [2022-02-21 03:10:04,205 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:04,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:04,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 222 transitions. [2022-02-21 03:10:04,207 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:04,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 222 transitions. [2022-02-21 03:10:04,208 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 222 transitions. [2022-02-21 03:10:04,370 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 222 edges. 222 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:04,374 INFO L225 Difference]: With dead ends: 308 [2022-02-21 03:10:04,375 INFO L226 Difference]: Without dead ends: 305 [2022-02-21 03:10:04,375 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:10:04,375 INFO L933 BasicCegarLoop]: 108 mSDtfsCounter, 212 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 103 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 215 SdHoareTripleChecker+Valid, 360 SdHoareTripleChecker+Invalid, 118 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 103 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:04,376 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [215 Valid, 360 Invalid, 118 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 103 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:04,376 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 305 states. [2022-02-21 03:10:04,425 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 305 to 286. [2022-02-21 03:10:04,425 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:04,426 INFO L82 GeneralOperation]: Start isEquivalent. First operand 305 states. Second operand has 286 states, 254 states have (on average 1.4645669291338583) internal successors, (372), 277 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:04,426 INFO L74 IsIncluded]: Start isIncluded. First operand 305 states. Second operand has 286 states, 254 states have (on average 1.4645669291338583) internal successors, (372), 277 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:04,427 INFO L87 Difference]: Start difference. First operand 305 states. Second operand has 286 states, 254 states have (on average 1.4645669291338583) internal successors, (372), 277 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:04,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:04,432 INFO L93 Difference]: Finished difference Result 305 states and 396 transitions. [2022-02-21 03:10:04,432 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 396 transitions. [2022-02-21 03:10:04,432 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:04,432 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:04,433 INFO L74 IsIncluded]: Start isIncluded. First operand has 286 states, 254 states have (on average 1.4645669291338583) internal successors, (372), 277 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 305 states. [2022-02-21 03:10:04,434 INFO L87 Difference]: Start difference. First operand has 286 states, 254 states have (on average 1.4645669291338583) internal successors, (372), 277 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 305 states. [2022-02-21 03:10:04,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:04,440 INFO L93 Difference]: Finished difference Result 305 states and 396 transitions. [2022-02-21 03:10:04,440 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 396 transitions. [2022-02-21 03:10:04,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:04,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:04,441 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:04,441 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:04,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 286 states, 254 states have (on average 1.4645669291338583) internal successors, (372), 277 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:04,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 286 states to 286 states and 380 transitions. [2022-02-21 03:10:04,446 INFO L78 Accepts]: Start accepts. Automaton has 286 states and 380 transitions. Word has length 43 [2022-02-21 03:10:04,446 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:04,446 INFO L470 AbstractCegarLoop]: Abstraction has 286 states and 380 transitions. [2022-02-21 03:10:04,447 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 8.75) internal successors, (35), 4 states have internal predecessors, (35), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:04,447 INFO L276 IsEmpty]: Start isEmpty. Operand 286 states and 380 transitions. [2022-02-21 03:10:04,447 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-02-21 03:10:04,447 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:04,447 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:04,465 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:04,663 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:04,663 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting base2fltErr3ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:04,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:04,664 INFO L85 PathProgramCache]: Analyzing trace with hash -1326924412, now seen corresponding path program 1 times [2022-02-21 03:10:04,664 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:04,664 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [238757131] [2022-02-21 03:10:04,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:04,664 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:04,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,714 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:04,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,719 INFO L290 TraceCheckUtils]: 0: Hoare triple {9713#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,720 INFO L290 TraceCheckUtils]: 1: Hoare triple {9678#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9678#true} is VALID [2022-02-21 03:10:04,720 INFO L290 TraceCheckUtils]: 2: Hoare triple {9678#true} #res := ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,720 INFO L290 TraceCheckUtils]: 3: Hoare triple {9678#true} assume true; {9678#true} is VALID [2022-02-21 03:10:04,721 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9678#true} {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #393#return; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,721 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:04,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,745 INFO L290 TraceCheckUtils]: 0: Hoare triple {9713#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {9678#true} assume !(0 == ~m % 4294967296); {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 2: Hoare triple {9678#true} assume ~m % 4294967296 < 16777216; {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 3: Hoare triple {9678#true} assume !false; {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 4: Hoare triple {9678#true} assume !(~e <= -128); {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {9678#true} assume ~e - 1 <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 6: Hoare triple {9678#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {9678#true} is VALID [2022-02-21 03:10:04,746 INFO L290 TraceCheckUtils]: 7: Hoare triple {9678#true} assume !(~m % 4294967296 < 16777216); {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 8: Hoare triple {9678#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 9: Hoare triple {9678#true} assume 128 + ~e <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 10: Hoare triple {9678#true} assume 128 + ~e >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 11: Hoare triple {9678#true} assume 16777216 * (128 + ~e) <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 12: Hoare triple {9678#true} assume 16777216 * (128 + ~e) >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {9678#true} assume 128 + ~e <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 14: Hoare triple {9678#true} assume 128 + ~e >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,747 INFO L290 TraceCheckUtils]: 15: Hoare triple {9678#true} assume 16777216 * (128 + ~e) <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {9678#true} assume 16777216 * (128 + ~e) >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {9678#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 18: Hoare triple {9678#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {9678#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {9678#true} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 21: Hoare triple {9678#true} ~__retres4~0 := ~res~0; {9678#true} is VALID [2022-02-21 03:10:04,748 INFO L290 TraceCheckUtils]: 22: Hoare triple {9678#true} #res := ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,749 INFO L290 TraceCheckUtils]: 23: Hoare triple {9678#true} assume true; {9678#true} is VALID [2022-02-21 03:10:04,749 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {9678#true} {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #395#return; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,749 INFO L290 TraceCheckUtils]: 0: Hoare triple {9678#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(21, 2);call #Ultimate.allocInit(12, 3); {9678#true} is VALID [2022-02-21 03:10:04,750 INFO L290 TraceCheckUtils]: 1: Hoare triple {9678#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,750 INFO L272 TraceCheckUtils]: 2: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {9713#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:04,751 INFO L290 TraceCheckUtils]: 3: Hoare triple {9713#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,751 INFO L290 TraceCheckUtils]: 4: Hoare triple {9678#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9678#true} is VALID [2022-02-21 03:10:04,751 INFO L290 TraceCheckUtils]: 5: Hoare triple {9678#true} #res := ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,751 INFO L290 TraceCheckUtils]: 6: Hoare triple {9678#true} assume true; {9678#true} is VALID [2022-02-21 03:10:04,752 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9678#true} {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #393#return; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,753 INFO L272 TraceCheckUtils]: 9: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {9713#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 10: Hoare triple {9713#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 11: Hoare triple {9678#true} assume !(0 == ~m % 4294967296); {9678#true} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 12: Hoare triple {9678#true} assume ~m % 4294967296 < 16777216; {9678#true} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 13: Hoare triple {9678#true} assume !false; {9678#true} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 14: Hoare triple {9678#true} assume !(~e <= -128); {9678#true} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 15: Hoare triple {9678#true} assume ~e - 1 <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {9678#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 17: Hoare triple {9678#true} assume !(~m % 4294967296 < 16777216); {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 18: Hoare triple {9678#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 19: Hoare triple {9678#true} assume 128 + ~e <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 20: Hoare triple {9678#true} assume 128 + ~e >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 21: Hoare triple {9678#true} assume 16777216 * (128 + ~e) <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 22: Hoare triple {9678#true} assume 16777216 * (128 + ~e) >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,754 INFO L290 TraceCheckUtils]: 23: Hoare triple {9678#true} assume 128 + ~e <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 24: Hoare triple {9678#true} assume 128 + ~e >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {9678#true} assume 16777216 * (128 + ~e) <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 26: Hoare triple {9678#true} assume 16777216 * (128 + ~e) >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {9678#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 28: Hoare triple {9678#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {9678#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 30: Hoare triple {9678#true} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {9678#true} is VALID [2022-02-21 03:10:04,755 INFO L290 TraceCheckUtils]: 31: Hoare triple {9678#true} ~__retres4~0 := ~res~0; {9678#true} is VALID [2022-02-21 03:10:04,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {9678#true} #res := ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,756 INFO L290 TraceCheckUtils]: 33: Hoare triple {9678#true} assume true; {9678#true} is VALID [2022-02-21 03:10:04,756 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9678#true} {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #395#return; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,757 INFO L290 TraceCheckUtils]: 35: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,757 INFO L272 TraceCheckUtils]: 36: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9711#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:04,758 INFO L290 TraceCheckUtils]: 37: Hoare triple {9711#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,758 INFO L290 TraceCheckUtils]: 38: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,758 INFO L290 TraceCheckUtils]: 39: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,759 INFO L290 TraceCheckUtils]: 40: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !false; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,759 INFO L290 TraceCheckUtils]: 41: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,759 INFO L290 TraceCheckUtils]: 42: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,760 INFO L290 TraceCheckUtils]: 43: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,760 INFO L290 TraceCheckUtils]: 44: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {9679#false} is VALID [2022-02-21 03:10:04,760 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 3 proven. 2 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:04,761 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:04,761 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [238757131] [2022-02-21 03:10:04,761 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [238757131] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:04,761 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1895794868] [2022-02-21 03:10:04,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:04,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:04,761 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:04,762 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:04,766 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-02-21 03:10:04,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,817 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:04,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,844 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:04,946 INFO L290 TraceCheckUtils]: 0: Hoare triple {9678#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(21, 2);call #Ultimate.allocInit(12, 3); {9678#true} is VALID [2022-02-21 03:10:04,947 INFO L290 TraceCheckUtils]: 1: Hoare triple {9678#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,947 INFO L272 TraceCheckUtils]: 2: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {9678#true} is VALID [2022-02-21 03:10:04,947 INFO L290 TraceCheckUtils]: 3: Hoare triple {9678#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,947 INFO L290 TraceCheckUtils]: 4: Hoare triple {9678#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9678#true} is VALID [2022-02-21 03:10:04,947 INFO L290 TraceCheckUtils]: 5: Hoare triple {9678#true} #res := ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,947 INFO L290 TraceCheckUtils]: 6: Hoare triple {9678#true} assume true; {9678#true} is VALID [2022-02-21 03:10:04,948 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9678#true} {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #393#return; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,948 INFO L290 TraceCheckUtils]: 8: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,948 INFO L272 TraceCheckUtils]: 9: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {9678#true} is VALID [2022-02-21 03:10:04,948 INFO L290 TraceCheckUtils]: 10: Hoare triple {9678#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 11: Hoare triple {9678#true} assume !(0 == ~m % 4294967296); {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 12: Hoare triple {9678#true} assume ~m % 4294967296 < 16777216; {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 13: Hoare triple {9678#true} assume !false; {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 14: Hoare triple {9678#true} assume !(~e <= -128); {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 15: Hoare triple {9678#true} assume ~e - 1 <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 16: Hoare triple {9678#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 17: Hoare triple {9678#true} assume !(~m % 4294967296 < 16777216); {9678#true} is VALID [2022-02-21 03:10:04,949 INFO L290 TraceCheckUtils]: 18: Hoare triple {9678#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {9678#true} assume 128 + ~e <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {9678#true} assume 128 + ~e >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 21: Hoare triple {9678#true} assume 16777216 * (128 + ~e) <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 22: Hoare triple {9678#true} assume 16777216 * (128 + ~e) >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {9678#true} assume 128 + ~e <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {9678#true} assume 128 + ~e >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 25: Hoare triple {9678#true} assume 16777216 * (128 + ~e) <= 2147483647; {9678#true} is VALID [2022-02-21 03:10:04,950 INFO L290 TraceCheckUtils]: 26: Hoare triple {9678#true} assume 16777216 * (128 + ~e) >= -2147483648; {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 27: Hoare triple {9678#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 28: Hoare triple {9678#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 29: Hoare triple {9678#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 30: Hoare triple {9678#true} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 31: Hoare triple {9678#true} ~__retres4~0 := ~res~0; {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 32: Hoare triple {9678#true} #res := ~__retres4~0; {9678#true} is VALID [2022-02-21 03:10:04,951 INFO L290 TraceCheckUtils]: 33: Hoare triple {9678#true} assume true; {9678#true} is VALID [2022-02-21 03:10:04,952 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9678#true} {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #395#return; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,954 INFO L290 TraceCheckUtils]: 35: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:04,955 INFO L272 TraceCheckUtils]: 36: Hoare triple {9680#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9711#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:04,955 INFO L290 TraceCheckUtils]: 37: Hoare triple {9711#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,955 INFO L290 TraceCheckUtils]: 38: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,956 INFO L290 TraceCheckUtils]: 39: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,956 INFO L290 TraceCheckUtils]: 40: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !false; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,957 INFO L290 TraceCheckUtils]: 41: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,957 INFO L290 TraceCheckUtils]: 42: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,960 INFO L290 TraceCheckUtils]: 43: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {9712#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:04,961 INFO L290 TraceCheckUtils]: 44: Hoare triple {9712#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {9679#false} is VALID [2022-02-21 03:10:04,961 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:04,961 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:04,961 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1895794868] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:04,961 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:04,961 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:04,962 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [278933757] [2022-02-21 03:10:04,962 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:04,963 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 45 [2022-02-21 03:10:04,963 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:04,963 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:04,985 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:04,985 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:04,985 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:04,986 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:04,986 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:04,987 INFO L87 Difference]: Start difference. First operand 286 states and 380 transitions. Second operand has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:05,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:05,367 INFO L93 Difference]: Finished difference Result 312 states and 404 transitions. [2022-02-21 03:10:05,367 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:05,367 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 45 [2022-02-21 03:10:05,367 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:05,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:05,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 231 transitions. [2022-02-21 03:10:05,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:05,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 231 transitions. [2022-02-21 03:10:05,370 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 231 transitions. [2022-02-21 03:10:05,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 231 edges. 231 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:05,528 INFO L225 Difference]: With dead ends: 312 [2022-02-21 03:10:05,528 INFO L226 Difference]: Without dead ends: 307 [2022-02-21 03:10:05,528 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:10:05,529 INFO L933 BasicCegarLoop]: 136 mSDtfsCounter, 165 mSDsluCounter, 295 mSDsCounter, 0 mSdLazyCounter, 93 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 168 SdHoareTripleChecker+Valid, 431 SdHoareTripleChecker+Invalid, 116 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 93 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:05,529 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [168 Valid, 431 Invalid, 116 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 93 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:05,530 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 307 states. [2022-02-21 03:10:05,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 307 to 266. [2022-02-21 03:10:05,606 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:05,606 INFO L82 GeneralOperation]: Start isEquivalent. First operand 307 states. Second operand has 266 states, 234 states have (on average 1.4401709401709402) internal successors, (337), 257 states have internal predecessors, (337), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:05,607 INFO L74 IsIncluded]: Start isIncluded. First operand 307 states. Second operand has 266 states, 234 states have (on average 1.4401709401709402) internal successors, (337), 257 states have internal predecessors, (337), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:05,608 INFO L87 Difference]: Start difference. First operand 307 states. Second operand has 266 states, 234 states have (on average 1.4401709401709402) internal successors, (337), 257 states have internal predecessors, (337), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:05,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:05,615 INFO L93 Difference]: Finished difference Result 307 states and 395 transitions. [2022-02-21 03:10:05,615 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 395 transitions. [2022-02-21 03:10:05,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:05,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:05,616 INFO L74 IsIncluded]: Start isIncluded. First operand has 266 states, 234 states have (on average 1.4401709401709402) internal successors, (337), 257 states have internal predecessors, (337), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 307 states. [2022-02-21 03:10:05,617 INFO L87 Difference]: Start difference. First operand has 266 states, 234 states have (on average 1.4401709401709402) internal successors, (337), 257 states have internal predecessors, (337), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 307 states. [2022-02-21 03:10:05,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:05,625 INFO L93 Difference]: Finished difference Result 307 states and 395 transitions. [2022-02-21 03:10:05,625 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 395 transitions. [2022-02-21 03:10:05,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:05,626 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:05,626 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:05,626 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:05,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 266 states, 234 states have (on average 1.4401709401709402) internal successors, (337), 257 states have internal predecessors, (337), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:05,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 266 states to 266 states and 345 transitions. [2022-02-21 03:10:05,633 INFO L78 Accepts]: Start accepts. Automaton has 266 states and 345 transitions. Word has length 45 [2022-02-21 03:10:05,633 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:05,633 INFO L470 AbstractCegarLoop]: Abstraction has 266 states and 345 transitions. [2022-02-21 03:10:05,633 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:05,633 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 345 transitions. [2022-02-21 03:10:05,634 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-21 03:10:05,634 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:05,634 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:05,655 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:05,847 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:05,848 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:05,848 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:05,848 INFO L85 PathProgramCache]: Analyzing trace with hash 1817189039, now seen corresponding path program 1 times [2022-02-21 03:10:05,848 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:05,848 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [192786641] [2022-02-21 03:10:05,849 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:05,849 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:05,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,881 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:05,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,884 INFO L290 TraceCheckUtils]: 0: Hoare triple {11136#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {11104#true} is VALID [2022-02-21 03:10:05,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {11104#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {11104#true} is VALID [2022-02-21 03:10:05,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {11104#true} #res := ~__retres4~0; {11104#true} is VALID [2022-02-21 03:10:05,885 INFO L290 TraceCheckUtils]: 3: Hoare triple {11104#true} assume true; {11104#true} is VALID [2022-02-21 03:10:05,885 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {11104#true} {11104#true} #393#return; {11104#true} is VALID [2022-02-21 03:10:05,885 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:05,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,935 INFO L290 TraceCheckUtils]: 0: Hoare triple {11136#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,936 INFO L290 TraceCheckUtils]: 2: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,936 INFO L290 TraceCheckUtils]: 3: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,936 INFO L290 TraceCheckUtils]: 4: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,937 INFO L290 TraceCheckUtils]: 5: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,937 INFO L290 TraceCheckUtils]: 6: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {11138#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:05,938 INFO L290 TraceCheckUtils]: 7: Hoare triple {11138#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,938 INFO L290 TraceCheckUtils]: 8: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,938 INFO L290 TraceCheckUtils]: 9: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,938 INFO L290 TraceCheckUtils]: 10: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,939 INFO L290 TraceCheckUtils]: 11: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,939 INFO L290 TraceCheckUtils]: 12: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,940 INFO L290 TraceCheckUtils]: 14: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,940 INFO L290 TraceCheckUtils]: 15: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,941 INFO L290 TraceCheckUtils]: 18: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,942 INFO L290 TraceCheckUtils]: 19: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,942 INFO L290 TraceCheckUtils]: 20: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,942 INFO L290 TraceCheckUtils]: 21: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,943 INFO L290 TraceCheckUtils]: 22: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,943 INFO L290 TraceCheckUtils]: 23: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume true; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,944 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {11139#(not (= |base2flt_#in~m| 1))} {11104#true} #395#return; {11105#false} is VALID [2022-02-21 03:10:05,944 INFO L290 TraceCheckUtils]: 0: Hoare triple {11104#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(21, 2);call #Ultimate.allocInit(12, 3); {11104#true} is VALID [2022-02-21 03:10:05,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {11104#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {11104#true} is VALID [2022-02-21 03:10:05,945 INFO L272 TraceCheckUtils]: 2: Hoare triple {11104#true} call main_#t~ret22#1 := base2flt(0, 0); {11136#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:05,945 INFO L290 TraceCheckUtils]: 3: Hoare triple {11136#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {11104#true} is VALID [2022-02-21 03:10:05,945 INFO L290 TraceCheckUtils]: 4: Hoare triple {11104#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {11104#true} is VALID [2022-02-21 03:10:05,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {11104#true} #res := ~__retres4~0; {11104#true} is VALID [2022-02-21 03:10:05,945 INFO L290 TraceCheckUtils]: 6: Hoare triple {11104#true} assume true; {11104#true} is VALID [2022-02-21 03:10:05,945 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {11104#true} {11104#true} #393#return; {11104#true} is VALID [2022-02-21 03:10:05,945 INFO L290 TraceCheckUtils]: 8: Hoare triple {11104#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {11104#true} is VALID [2022-02-21 03:10:05,946 INFO L272 TraceCheckUtils]: 9: Hoare triple {11104#true} call main_#t~ret23#1 := base2flt(1, 0); {11136#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:05,946 INFO L290 TraceCheckUtils]: 10: Hoare triple {11136#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,947 INFO L290 TraceCheckUtils]: 11: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,947 INFO L290 TraceCheckUtils]: 12: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,947 INFO L290 TraceCheckUtils]: 13: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,948 INFO L290 TraceCheckUtils]: 14: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,948 INFO L290 TraceCheckUtils]: 15: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:05,948 INFO L290 TraceCheckUtils]: 16: Hoare triple {11137#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {11138#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:05,949 INFO L290 TraceCheckUtils]: 17: Hoare triple {11138#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,949 INFO L290 TraceCheckUtils]: 18: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,949 INFO L290 TraceCheckUtils]: 19: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,951 INFO L290 TraceCheckUtils]: 21: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,951 INFO L290 TraceCheckUtils]: 22: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,951 INFO L290 TraceCheckUtils]: 23: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,952 INFO L290 TraceCheckUtils]: 25: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,952 INFO L290 TraceCheckUtils]: 26: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,952 INFO L290 TraceCheckUtils]: 27: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,953 INFO L290 TraceCheckUtils]: 28: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,953 INFO L290 TraceCheckUtils]: 29: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,953 INFO L290 TraceCheckUtils]: 30: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,954 INFO L290 TraceCheckUtils]: 31: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,954 INFO L290 TraceCheckUtils]: 32: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,954 INFO L290 TraceCheckUtils]: 33: Hoare triple {11139#(not (= |base2flt_#in~m| 1))} assume true; {11139#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:05,955 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {11139#(not (= |base2flt_#in~m| 1))} {11104#true} #395#return; {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L290 TraceCheckUtils]: 35: Hoare triple {11105#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L272 TraceCheckUtils]: 36: Hoare triple {11105#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L290 TraceCheckUtils]: 37: Hoare triple {11105#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L290 TraceCheckUtils]: 38: Hoare triple {11105#false} assume !(0 == ~m % 4294967296); {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L290 TraceCheckUtils]: 39: Hoare triple {11105#false} assume !(~m % 4294967296 < 16777216); {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L290 TraceCheckUtils]: 40: Hoare triple {11105#false} assume !false; {11105#false} is VALID [2022-02-21 03:10:05,955 INFO L290 TraceCheckUtils]: 41: Hoare triple {11105#false} assume !(~m % 4294967296 >= 33554432); {11105#false} is VALID [2022-02-21 03:10:05,956 INFO L290 TraceCheckUtils]: 42: Hoare triple {11105#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {11105#false} is VALID [2022-02-21 03:10:05,956 INFO L290 TraceCheckUtils]: 43: Hoare triple {11105#false} assume 128 + ~e <= 2147483647; {11105#false} is VALID [2022-02-21 03:10:05,956 INFO L290 TraceCheckUtils]: 44: Hoare triple {11105#false} assume 128 + ~e >= -2147483648; {11105#false} is VALID [2022-02-21 03:10:05,956 INFO L290 TraceCheckUtils]: 45: Hoare triple {11105#false} assume !(16777216 * (128 + ~e) <= 2147483647); {11105#false} is VALID [2022-02-21 03:10:05,956 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:05,956 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:05,956 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [192786641] [2022-02-21 03:10:05,957 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [192786641] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:05,957 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:05,957 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-21 03:10:05,957 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1703412716] [2022-02-21 03:10:05,957 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:05,957 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 46 [2022-02-21 03:10:05,958 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:05,958 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:05,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:05,982 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-21 03:10:05,982 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:05,982 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-21 03:10:05,983 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:05,983 INFO L87 Difference]: Start difference. First operand 266 states and 345 transitions. Second operand has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:06,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:06,694 INFO L93 Difference]: Finished difference Result 867 states and 1107 transitions. [2022-02-21 03:10:06,694 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-21 03:10:06,694 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 46 [2022-02-21 03:10:06,695 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:06,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:06,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 487 transitions. [2022-02-21 03:10:06,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:06,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 487 transitions. [2022-02-21 03:10:06,704 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 487 transitions. [2022-02-21 03:10:07,023 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 487 edges. 487 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:07,042 INFO L225 Difference]: With dead ends: 867 [2022-02-21 03:10:07,042 INFO L226 Difference]: Without dead ends: 644 [2022-02-21 03:10:07,043 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-02-21 03:10:07,044 INFO L933 BasicCegarLoop]: 146 mSDtfsCounter, 336 mSDsluCounter, 274 mSDsCounter, 0 mSdLazyCounter, 117 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 336 SdHoareTripleChecker+Valid, 420 SdHoareTripleChecker+Invalid, 145 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 117 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:07,045 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [336 Valid, 420 Invalid, 145 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 117 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:07,046 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 644 states. [2022-02-21 03:10:07,107 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 644 to 266. [2022-02-21 03:10:07,108 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:07,109 INFO L82 GeneralOperation]: Start isEquivalent. First operand 644 states. Second operand has 266 states, 234 states have (on average 1.435897435897436) internal successors, (336), 257 states have internal predecessors, (336), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:07,109 INFO L74 IsIncluded]: Start isIncluded. First operand 644 states. Second operand has 266 states, 234 states have (on average 1.435897435897436) internal successors, (336), 257 states have internal predecessors, (336), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:07,110 INFO L87 Difference]: Start difference. First operand 644 states. Second operand has 266 states, 234 states have (on average 1.435897435897436) internal successors, (336), 257 states have internal predecessors, (336), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:07,128 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:07,128 INFO L93 Difference]: Finished difference Result 644 states and 815 transitions. [2022-02-21 03:10:07,128 INFO L276 IsEmpty]: Start isEmpty. Operand 644 states and 815 transitions. [2022-02-21 03:10:07,130 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:07,130 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:07,130 INFO L74 IsIncluded]: Start isIncluded. First operand has 266 states, 234 states have (on average 1.435897435897436) internal successors, (336), 257 states have internal predecessors, (336), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 644 states. [2022-02-21 03:10:07,131 INFO L87 Difference]: Start difference. First operand has 266 states, 234 states have (on average 1.435897435897436) internal successors, (336), 257 states have internal predecessors, (336), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 644 states. [2022-02-21 03:10:07,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:07,150 INFO L93 Difference]: Finished difference Result 644 states and 815 transitions. [2022-02-21 03:10:07,151 INFO L276 IsEmpty]: Start isEmpty. Operand 644 states and 815 transitions. [2022-02-21 03:10:07,152 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:07,152 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:07,152 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:07,152 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:07,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 266 states, 234 states have (on average 1.435897435897436) internal successors, (336), 257 states have internal predecessors, (336), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:07,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 266 states to 266 states and 344 transitions. [2022-02-21 03:10:07,157 INFO L78 Accepts]: Start accepts. Automaton has 266 states and 344 transitions. Word has length 46 [2022-02-21 03:10:07,157 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:07,157 INFO L470 AbstractCegarLoop]: Abstraction has 266 states and 344 transitions. [2022-02-21 03:10:07,158 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 6.833333333333333) internal successors, (41), 5 states have internal predecessors, (41), 2 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-21 03:10:07,158 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 344 transitions. [2022-02-21 03:10:07,159 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-02-21 03:10:07,159 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:07,159 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:07,159 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-21 03:10:07,160 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:07,160 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:07,160 INFO L85 PathProgramCache]: Analyzing trace with hash 1400021551, now seen corresponding path program 1 times [2022-02-21 03:10:07,161 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:07,161 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1267058604] [2022-02-21 03:10:07,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:07,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:07,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,192 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:07,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,196 INFO L290 TraceCheckUtils]: 0: Hoare triple {13719#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:07,196 INFO L290 TraceCheckUtils]: 1: Hoare triple {13684#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13684#true} is VALID [2022-02-21 03:10:07,196 INFO L290 TraceCheckUtils]: 2: Hoare triple {13684#true} #res := ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:07,196 INFO L290 TraceCheckUtils]: 3: Hoare triple {13684#true} assume true; {13684#true} is VALID [2022-02-21 03:10:07,196 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {13684#true} {13684#true} #393#return; {13684#true} is VALID [2022-02-21 03:10:07,197 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:07,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,263 INFO L290 TraceCheckUtils]: 0: Hoare triple {13719#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,263 INFO L290 TraceCheckUtils]: 1: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,264 INFO L290 TraceCheckUtils]: 2: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,264 INFO L290 TraceCheckUtils]: 3: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,264 INFO L290 TraceCheckUtils]: 4: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,265 INFO L290 TraceCheckUtils]: 5: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,265 INFO L290 TraceCheckUtils]: 6: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,265 INFO L290 TraceCheckUtils]: 7: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,265 INFO L290 TraceCheckUtils]: 8: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,266 INFO L290 TraceCheckUtils]: 9: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,266 INFO L290 TraceCheckUtils]: 10: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,267 INFO L290 TraceCheckUtils]: 11: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,267 INFO L290 TraceCheckUtils]: 12: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,267 INFO L290 TraceCheckUtils]: 13: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,268 INFO L290 TraceCheckUtils]: 14: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,268 INFO L290 TraceCheckUtils]: 15: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,269 INFO L290 TraceCheckUtils]: 17: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,269 INFO L290 TraceCheckUtils]: 18: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,270 INFO L290 TraceCheckUtils]: 21: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,270 INFO L290 TraceCheckUtils]: 22: Hoare triple {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,271 INFO L290 TraceCheckUtils]: 23: Hoare triple {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {13725#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:07,271 INFO L290 TraceCheckUtils]: 25: Hoare triple {13725#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {13725#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:07,272 INFO L290 TraceCheckUtils]: 26: Hoare triple {13725#(not (= |base2flt_#in~e| 0))} assume true; {13725#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:07,272 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13725#(not (= |base2flt_#in~e| 0))} {13684#true} #395#return; {13685#false} is VALID [2022-02-21 03:10:07,272 INFO L290 TraceCheckUtils]: 0: Hoare triple {13684#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(21, 2);call #Ultimate.allocInit(12, 3); {13684#true} is VALID [2022-02-21 03:10:07,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {13684#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {13684#true} is VALID [2022-02-21 03:10:07,273 INFO L272 TraceCheckUtils]: 2: Hoare triple {13684#true} call main_#t~ret22#1 := base2flt(0, 0); {13719#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:07,273 INFO L290 TraceCheckUtils]: 3: Hoare triple {13719#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:07,273 INFO L290 TraceCheckUtils]: 4: Hoare triple {13684#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13684#true} is VALID [2022-02-21 03:10:07,273 INFO L290 TraceCheckUtils]: 5: Hoare triple {13684#true} #res := ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:07,274 INFO L290 TraceCheckUtils]: 6: Hoare triple {13684#true} assume true; {13684#true} is VALID [2022-02-21 03:10:07,274 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13684#true} {13684#true} #393#return; {13684#true} is VALID [2022-02-21 03:10:07,274 INFO L290 TraceCheckUtils]: 8: Hoare triple {13684#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13684#true} is VALID [2022-02-21 03:10:07,274 INFO L272 TraceCheckUtils]: 9: Hoare triple {13684#true} call main_#t~ret23#1 := base2flt(1, 0); {13719#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:07,275 INFO L290 TraceCheckUtils]: 10: Hoare triple {13719#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,275 INFO L290 TraceCheckUtils]: 11: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,275 INFO L290 TraceCheckUtils]: 12: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,276 INFO L290 TraceCheckUtils]: 13: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,276 INFO L290 TraceCheckUtils]: 14: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,276 INFO L290 TraceCheckUtils]: 15: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:07,277 INFO L290 TraceCheckUtils]: 16: Hoare triple {13720#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,277 INFO L290 TraceCheckUtils]: 17: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,277 INFO L290 TraceCheckUtils]: 18: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,278 INFO L290 TraceCheckUtils]: 19: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,278 INFO L290 TraceCheckUtils]: 20: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:07,278 INFO L290 TraceCheckUtils]: 21: Hoare triple {13721#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,279 INFO L290 TraceCheckUtils]: 22: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,279 INFO L290 TraceCheckUtils]: 23: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,280 INFO L290 TraceCheckUtils]: 24: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,280 INFO L290 TraceCheckUtils]: 26: Hoare triple {13722#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,281 INFO L290 TraceCheckUtils]: 27: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,281 INFO L290 TraceCheckUtils]: 28: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,281 INFO L290 TraceCheckUtils]: 29: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,281 INFO L290 TraceCheckUtils]: 30: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:07,282 INFO L290 TraceCheckUtils]: 31: Hoare triple {13723#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,282 INFO L290 TraceCheckUtils]: 32: Hoare triple {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,282 INFO L290 TraceCheckUtils]: 33: Hoare triple {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:07,283 INFO L290 TraceCheckUtils]: 34: Hoare triple {13724#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {13725#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:07,283 INFO L290 TraceCheckUtils]: 35: Hoare triple {13725#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {13725#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:07,283 INFO L290 TraceCheckUtils]: 36: Hoare triple {13725#(not (= |base2flt_#in~e| 0))} assume true; {13725#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:07,284 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {13725#(not (= |base2flt_#in~e| 0))} {13684#true} #395#return; {13685#false} is VALID [2022-02-21 03:10:07,284 INFO L290 TraceCheckUtils]: 38: Hoare triple {13685#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13685#false} is VALID [2022-02-21 03:10:07,284 INFO L272 TraceCheckUtils]: 39: Hoare triple {13685#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13685#false} is VALID [2022-02-21 03:10:07,284 INFO L290 TraceCheckUtils]: 40: Hoare triple {13685#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13685#false} is VALID [2022-02-21 03:10:07,284 INFO L290 TraceCheckUtils]: 41: Hoare triple {13685#false} assume !(0 == ~m % 4294967296); {13685#false} is VALID [2022-02-21 03:10:07,284 INFO L290 TraceCheckUtils]: 42: Hoare triple {13685#false} assume !(~m % 4294967296 < 16777216); {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L290 TraceCheckUtils]: 43: Hoare triple {13685#false} assume !false; {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L290 TraceCheckUtils]: 44: Hoare triple {13685#false} assume !(~m % 4294967296 >= 33554432); {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L290 TraceCheckUtils]: 45: Hoare triple {13685#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L290 TraceCheckUtils]: 46: Hoare triple {13685#false} assume 128 + ~e <= 2147483647; {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L290 TraceCheckUtils]: 47: Hoare triple {13685#false} assume 128 + ~e >= -2147483648; {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L290 TraceCheckUtils]: 48: Hoare triple {13685#false} assume !(16777216 * (128 + ~e) <= 2147483647); {13685#false} is VALID [2022-02-21 03:10:07,285 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 9 proven. 38 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:07,286 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:07,286 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1267058604] [2022-02-21 03:10:07,286 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1267058604] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:07,286 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2127050074] [2022-02-21 03:10:07,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:07,286 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:07,286 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:07,301 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:07,302 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-02-21 03:10:07,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,357 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-21 03:10:07,370 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,371 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 0: Hoare triple {13684#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(21, 2);call #Ultimate.allocInit(12, 3); {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 1: Hoare triple {13684#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L272 TraceCheckUtils]: 2: Hoare triple {13684#true} call main_#t~ret22#1 := base2flt(0, 0); {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 3: Hoare triple {13684#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 4: Hoare triple {13684#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 5: Hoare triple {13684#true} #res := ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 6: Hoare triple {13684#true} assume true; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13684#true} {13684#true} #393#return; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {13684#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13684#true} is VALID [2022-02-21 03:10:07,585 INFO L272 TraceCheckUtils]: 9: Hoare triple {13684#true} call main_#t~ret23#1 := base2flt(1, 0); {13684#true} is VALID [2022-02-21 03:10:07,586 INFO L290 TraceCheckUtils]: 10: Hoare triple {13684#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13759#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:07,586 INFO L290 TraceCheckUtils]: 11: Hoare triple {13759#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {13759#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:07,586 INFO L290 TraceCheckUtils]: 12: Hoare triple {13759#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {13759#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:07,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {13759#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {13759#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:07,587 INFO L290 TraceCheckUtils]: 14: Hoare triple {13759#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {13759#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:07,587 INFO L290 TraceCheckUtils]: 15: Hoare triple {13759#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {13759#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:07,587 INFO L290 TraceCheckUtils]: 16: Hoare triple {13759#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:07,588 INFO L290 TraceCheckUtils]: 17: Hoare triple {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:07,588 INFO L290 TraceCheckUtils]: 18: Hoare triple {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:07,588 INFO L290 TraceCheckUtils]: 19: Hoare triple {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !(~e <= -128); {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:07,595 INFO L290 TraceCheckUtils]: 20: Hoare triple {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 <= 2147483647; {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:07,596 INFO L290 TraceCheckUtils]: 21: Hoare triple {13778#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:07,596 INFO L290 TraceCheckUtils]: 22: Hoare triple {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~m % 4294967296 < 16777216; {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:07,596 INFO L290 TraceCheckUtils]: 23: Hoare triple {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !false; {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:07,597 INFO L290 TraceCheckUtils]: 24: Hoare triple {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !(~e <= -128); {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:07,597 INFO L290 TraceCheckUtils]: 25: Hoare triple {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 <= 2147483647; {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:07,597 INFO L290 TraceCheckUtils]: 26: Hoare triple {13794#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:07,598 INFO L290 TraceCheckUtils]: 27: Hoare triple {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~m % 4294967296 < 16777216; {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:07,598 INFO L290 TraceCheckUtils]: 28: Hoare triple {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !false; {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:07,599 INFO L290 TraceCheckUtils]: 29: Hoare triple {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !(~e <= -128); {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:07,599 INFO L290 TraceCheckUtils]: 30: Hoare triple {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 <= 2147483647; {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:07,600 INFO L290 TraceCheckUtils]: 31: Hoare triple {13810#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13826#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:07,600 INFO L290 TraceCheckUtils]: 32: Hoare triple {13826#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~m % 4294967296 < 16777216; {13826#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:07,601 INFO L290 TraceCheckUtils]: 33: Hoare triple {13826#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !false; {13826#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:07,601 INFO L290 TraceCheckUtils]: 34: Hoare triple {13826#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e <= -128;~__retres4~0 := 0; {13836#(<= (+ |base2flt_#in~e| 124) 0)} is VALID [2022-02-21 03:10:07,601 INFO L290 TraceCheckUtils]: 35: Hoare triple {13836#(<= (+ |base2flt_#in~e| 124) 0)} #res := ~__retres4~0; {13836#(<= (+ |base2flt_#in~e| 124) 0)} is VALID [2022-02-21 03:10:07,602 INFO L290 TraceCheckUtils]: 36: Hoare triple {13836#(<= (+ |base2flt_#in~e| 124) 0)} assume true; {13836#(<= (+ |base2flt_#in~e| 124) 0)} is VALID [2022-02-21 03:10:07,602 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {13836#(<= (+ |base2flt_#in~e| 124) 0)} {13684#true} #395#return; {13685#false} is VALID [2022-02-21 03:10:07,602 INFO L290 TraceCheckUtils]: 38: Hoare triple {13685#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L272 TraceCheckUtils]: 39: Hoare triple {13685#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 40: Hoare triple {13685#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 41: Hoare triple {13685#false} assume !(0 == ~m % 4294967296); {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 42: Hoare triple {13685#false} assume !(~m % 4294967296 < 16777216); {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 43: Hoare triple {13685#false} assume !false; {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 44: Hoare triple {13685#false} assume !(~m % 4294967296 >= 33554432); {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 45: Hoare triple {13685#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 46: Hoare triple {13685#false} assume 128 + ~e <= 2147483647; {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 47: Hoare triple {13685#false} assume 128 + ~e >= -2147483648; {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L290 TraceCheckUtils]: 48: Hoare triple {13685#false} assume !(16777216 * (128 + ~e) <= 2147483647); {13685#false} is VALID [2022-02-21 03:10:07,603 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 9 proven. 38 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:07,603 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:08,018 INFO L290 TraceCheckUtils]: 48: Hoare triple {13685#false} assume !(16777216 * (128 + ~e) <= 2147483647); {13685#false} is VALID [2022-02-21 03:10:08,019 INFO L290 TraceCheckUtils]: 47: Hoare triple {13685#false} assume 128 + ~e >= -2147483648; {13685#false} is VALID [2022-02-21 03:10:08,019 INFO L290 TraceCheckUtils]: 46: Hoare triple {13685#false} assume 128 + ~e <= 2147483647; {13685#false} is VALID [2022-02-21 03:10:08,019 INFO L290 TraceCheckUtils]: 45: Hoare triple {13685#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {13685#false} is VALID [2022-02-21 03:10:08,019 INFO L290 TraceCheckUtils]: 44: Hoare triple {13685#false} assume !(~m % 4294967296 >= 33554432); {13685#false} is VALID [2022-02-21 03:10:08,019 INFO L290 TraceCheckUtils]: 43: Hoare triple {13685#false} assume !false; {13685#false} is VALID [2022-02-21 03:10:08,019 INFO L290 TraceCheckUtils]: 42: Hoare triple {13685#false} assume !(~m % 4294967296 < 16777216); {13685#false} is VALID [2022-02-21 03:10:08,020 INFO L290 TraceCheckUtils]: 41: Hoare triple {13685#false} assume !(0 == ~m % 4294967296); {13685#false} is VALID [2022-02-21 03:10:08,020 INFO L290 TraceCheckUtils]: 40: Hoare triple {13685#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13685#false} is VALID [2022-02-21 03:10:08,020 INFO L272 TraceCheckUtils]: 39: Hoare triple {13685#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13685#false} is VALID [2022-02-21 03:10:08,020 INFO L290 TraceCheckUtils]: 38: Hoare triple {13685#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13685#false} is VALID [2022-02-21 03:10:08,021 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {13915#(not (<= 0 |base2flt_#in~e|))} {13684#true} #395#return; {13685#false} is VALID [2022-02-21 03:10:08,021 INFO L290 TraceCheckUtils]: 36: Hoare triple {13915#(not (<= 0 |base2flt_#in~e|))} assume true; {13915#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:08,021 INFO L290 TraceCheckUtils]: 35: Hoare triple {13915#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {13915#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:08,022 INFO L290 TraceCheckUtils]: 34: Hoare triple {13925#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {13915#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:08,022 INFO L290 TraceCheckUtils]: 33: Hoare triple {13925#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {13925#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,022 INFO L290 TraceCheckUtils]: 32: Hoare triple {13925#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {13925#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,023 INFO L290 TraceCheckUtils]: 31: Hoare triple {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13925#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,023 INFO L290 TraceCheckUtils]: 30: Hoare triple {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,024 INFO L290 TraceCheckUtils]: 29: Hoare triple {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,024 INFO L290 TraceCheckUtils]: 28: Hoare triple {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,024 INFO L290 TraceCheckUtils]: 27: Hoare triple {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,025 INFO L290 TraceCheckUtils]: 26: Hoare triple {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13935#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,025 INFO L290 TraceCheckUtils]: 25: Hoare triple {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,026 INFO L290 TraceCheckUtils]: 23: Hoare triple {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,026 INFO L290 TraceCheckUtils]: 22: Hoare triple {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,027 INFO L290 TraceCheckUtils]: 21: Hoare triple {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13951#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,027 INFO L290 TraceCheckUtils]: 20: Hoare triple {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,027 INFO L290 TraceCheckUtils]: 19: Hoare triple {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,028 INFO L290 TraceCheckUtils]: 18: Hoare triple {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,028 INFO L290 TraceCheckUtils]: 17: Hoare triple {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13967#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,029 INFO L290 TraceCheckUtils]: 15: Hoare triple {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,029 INFO L290 TraceCheckUtils]: 14: Hoare triple {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,029 INFO L290 TraceCheckUtils]: 13: Hoare triple {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,030 INFO L290 TraceCheckUtils]: 12: Hoare triple {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,030 INFO L290 TraceCheckUtils]: 11: Hoare triple {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,031 INFO L290 TraceCheckUtils]: 10: Hoare triple {13684#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13983#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:08,031 INFO L272 TraceCheckUtils]: 9: Hoare triple {13684#true} call main_#t~ret23#1 := base2flt(1, 0); {13684#true} is VALID [2022-02-21 03:10:08,031 INFO L290 TraceCheckUtils]: 8: Hoare triple {13684#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13684#true} is VALID [2022-02-21 03:10:08,031 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13684#true} {13684#true} #393#return; {13684#true} is VALID [2022-02-21 03:10:08,031 INFO L290 TraceCheckUtils]: 6: Hoare triple {13684#true} assume true; {13684#true} is VALID [2022-02-21 03:10:08,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {13684#true} #res := ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:08,031 INFO L290 TraceCheckUtils]: 4: Hoare triple {13684#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13684#true} is VALID [2022-02-21 03:10:08,031 INFO L290 TraceCheckUtils]: 3: Hoare triple {13684#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13684#true} is VALID [2022-02-21 03:10:08,032 INFO L272 TraceCheckUtils]: 2: Hoare triple {13684#true} call main_#t~ret22#1 := base2flt(0, 0); {13684#true} is VALID [2022-02-21 03:10:08,032 INFO L290 TraceCheckUtils]: 1: Hoare triple {13684#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {13684#true} is VALID [2022-02-21 03:10:08,032 INFO L290 TraceCheckUtils]: 0: Hoare triple {13684#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(21, 2);call #Ultimate.allocInit(12, 3); {13684#true} is VALID [2022-02-21 03:10:08,032 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 9 proven. 38 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:08,032 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2127050074] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:08,032 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:08,032 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 21 [2022-02-21 03:10:08,033 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1846953589] [2022-02-21 03:10:08,033 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:08,035 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 49 [2022-02-21 03:10:08,035 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:08,035 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:08,102 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:08,102 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-21 03:10:08,102 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:08,108 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-21 03:10:08,109 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=138, Invalid=282, Unknown=0, NotChecked=0, Total=420 [2022-02-21 03:10:08,109 INFO L87 Difference]: Start difference. First operand 266 states and 344 transitions. Second operand has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:11,402 INFO L93 Difference]: Finished difference Result 2114 states and 2736 transitions. [2022-02-21 03:10:11,402 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 53 states. [2022-02-21 03:10:11,402 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 49 [2022-02-21 03:10:11,403 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:11,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 1090 transitions. [2022-02-21 03:10:11,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 1090 transitions. [2022-02-21 03:10:11,425 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 53 states and 1090 transitions. [2022-02-21 03:10:12,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1090 edges. 1090 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:12,446 INFO L225 Difference]: With dead ends: 2114 [2022-02-21 03:10:12,447 INFO L226 Difference]: Without dead ends: 1911 [2022-02-21 03:10:12,448 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 58 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1061 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=1137, Invalid=2403, Unknown=0, NotChecked=0, Total=3540 [2022-02-21 03:10:12,448 INFO L933 BasicCegarLoop]: 121 mSDtfsCounter, 1463 mSDsluCounter, 976 mSDsCounter, 0 mSdLazyCounter, 574 mSolverCounterSat, 289 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1463 SdHoareTripleChecker+Valid, 1097 SdHoareTripleChecker+Invalid, 863 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 289 IncrementalHoareTripleChecker+Valid, 574 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:12,449 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1463 Valid, 1097 Invalid, 863 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [289 Valid, 574 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-21 03:10:12,450 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1911 states. [2022-02-21 03:10:12,577 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1911 to 296. [2022-02-21 03:10:12,577 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:12,578 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1911 states. Second operand has 296 states, 264 states have (on average 1.4090909090909092) internal successors, (372), 287 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:12,578 INFO L74 IsIncluded]: Start isIncluded. First operand 1911 states. Second operand has 296 states, 264 states have (on average 1.4090909090909092) internal successors, (372), 287 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:12,579 INFO L87 Difference]: Start difference. First operand 1911 states. Second operand has 296 states, 264 states have (on average 1.4090909090909092) internal successors, (372), 287 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:12,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:12,716 INFO L93 Difference]: Finished difference Result 1911 states and 2429 transitions. [2022-02-21 03:10:12,716 INFO L276 IsEmpty]: Start isEmpty. Operand 1911 states and 2429 transitions. [2022-02-21 03:10:12,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:12,719 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:12,720 INFO L74 IsIncluded]: Start isIncluded. First operand has 296 states, 264 states have (on average 1.4090909090909092) internal successors, (372), 287 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 1911 states. [2022-02-21 03:10:12,720 INFO L87 Difference]: Start difference. First operand has 296 states, 264 states have (on average 1.4090909090909092) internal successors, (372), 287 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 1911 states. [2022-02-21 03:10:12,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:12,865 INFO L93 Difference]: Finished difference Result 1911 states and 2429 transitions. [2022-02-21 03:10:12,865 INFO L276 IsEmpty]: Start isEmpty. Operand 1911 states and 2429 transitions. [2022-02-21 03:10:12,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:12,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:12,868 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:12,868 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:12,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 296 states, 264 states have (on average 1.4090909090909092) internal successors, (372), 287 states have internal predecessors, (372), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:12,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 296 states to 296 states and 380 transitions. [2022-02-21 03:10:12,874 INFO L78 Accepts]: Start accepts. Automaton has 296 states and 380 transitions. Word has length 49 [2022-02-21 03:10:12,874 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:12,875 INFO L470 AbstractCegarLoop]: Abstraction has 296 states and 380 transitions. [2022-02-21 03:10:12,875 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 4.714285714285714) internal successors, (99), 20 states have internal predecessors, (99), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:12,875 INFO L276 IsEmpty]: Start isEmpty. Operand 296 states and 380 transitions. [2022-02-21 03:10:12,875 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-21 03:10:12,875 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:12,875 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:12,895 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:13,096 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:13,096 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:13,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:13,096 INFO L85 PathProgramCache]: Analyzing trace with hash 1543370645, now seen corresponding path program 1 times [2022-02-21 03:10:13,096 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:13,097 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1298672610] [2022-02-21 03:10:13,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:13,097 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:13,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:13,142 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:13,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:13,146 INFO L290 TraceCheckUtils]: 0: Hoare triple {20636#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,147 INFO L290 TraceCheckUtils]: 1: Hoare triple {20599#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20599#true} is VALID [2022-02-21 03:10:13,147 INFO L290 TraceCheckUtils]: 2: Hoare triple {20599#true} #res := ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,147 INFO L290 TraceCheckUtils]: 3: Hoare triple {20599#true} assume true; {20599#true} is VALID [2022-02-21 03:10:13,147 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {20599#true} {20599#true} #393#return; {20599#true} is VALID [2022-02-21 03:10:13,147 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:13,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:13,216 INFO L290 TraceCheckUtils]: 0: Hoare triple {20636#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,217 INFO L290 TraceCheckUtils]: 3: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,217 INFO L290 TraceCheckUtils]: 4: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,218 INFO L290 TraceCheckUtils]: 6: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,218 INFO L290 TraceCheckUtils]: 7: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,220 INFO L290 TraceCheckUtils]: 10: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20639#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,221 INFO L290 TraceCheckUtils]: 12: Hoare triple {20639#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,221 INFO L290 TraceCheckUtils]: 14: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,222 INFO L290 TraceCheckUtils]: 15: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,222 INFO L290 TraceCheckUtils]: 16: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,222 INFO L290 TraceCheckUtils]: 17: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,222 INFO L290 TraceCheckUtils]: 18: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,223 INFO L290 TraceCheckUtils]: 19: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,223 INFO L290 TraceCheckUtils]: 20: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,223 INFO L290 TraceCheckUtils]: 21: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,223 INFO L290 TraceCheckUtils]: 22: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,224 INFO L290 TraceCheckUtils]: 23: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,224 INFO L290 TraceCheckUtils]: 24: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,225 INFO L290 TraceCheckUtils]: 27: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,225 INFO L290 TraceCheckUtils]: 28: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume true; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,225 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {20640#(not (= |base2flt_#in~m| 1))} {20599#true} #395#return; {20600#false} is VALID [2022-02-21 03:10:13,226 INFO L290 TraceCheckUtils]: 0: Hoare triple {20599#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(21, 2);call #Ultimate.allocInit(12, 3); {20599#true} is VALID [2022-02-21 03:10:13,226 INFO L290 TraceCheckUtils]: 1: Hoare triple {20599#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {20599#true} is VALID [2022-02-21 03:10:13,226 INFO L272 TraceCheckUtils]: 2: Hoare triple {20599#true} call main_#t~ret22#1 := base2flt(0, 0); {20636#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:13,226 INFO L290 TraceCheckUtils]: 3: Hoare triple {20636#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,226 INFO L290 TraceCheckUtils]: 4: Hoare triple {20599#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20599#true} is VALID [2022-02-21 03:10:13,226 INFO L290 TraceCheckUtils]: 5: Hoare triple {20599#true} #res := ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,226 INFO L290 TraceCheckUtils]: 6: Hoare triple {20599#true} assume true; {20599#true} is VALID [2022-02-21 03:10:13,232 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {20599#true} {20599#true} #393#return; {20599#true} is VALID [2022-02-21 03:10:13,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {20599#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {20599#true} is VALID [2022-02-21 03:10:13,233 INFO L272 TraceCheckUtils]: 9: Hoare triple {20599#true} call main_#t~ret23#1 := base2flt(1, 0); {20636#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:13,233 INFO L290 TraceCheckUtils]: 10: Hoare triple {20636#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,234 INFO L290 TraceCheckUtils]: 11: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,234 INFO L290 TraceCheckUtils]: 12: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,234 INFO L290 TraceCheckUtils]: 13: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,234 INFO L290 TraceCheckUtils]: 14: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,235 INFO L290 TraceCheckUtils]: 15: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:13,235 INFO L290 TraceCheckUtils]: 16: Hoare triple {20637#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,236 INFO L290 TraceCheckUtils]: 17: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,236 INFO L290 TraceCheckUtils]: 18: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,236 INFO L290 TraceCheckUtils]: 19: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,237 INFO L290 TraceCheckUtils]: 20: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,237 INFO L290 TraceCheckUtils]: 21: Hoare triple {20638#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20639#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,238 INFO L290 TraceCheckUtils]: 22: Hoare triple {20639#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,238 INFO L290 TraceCheckUtils]: 23: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,238 INFO L290 TraceCheckUtils]: 24: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,239 INFO L290 TraceCheckUtils]: 25: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,239 INFO L290 TraceCheckUtils]: 26: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,239 INFO L290 TraceCheckUtils]: 27: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,240 INFO L290 TraceCheckUtils]: 28: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,240 INFO L290 TraceCheckUtils]: 29: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,240 INFO L290 TraceCheckUtils]: 30: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,240 INFO L290 TraceCheckUtils]: 31: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,241 INFO L290 TraceCheckUtils]: 32: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,241 INFO L290 TraceCheckUtils]: 33: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,241 INFO L290 TraceCheckUtils]: 34: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,241 INFO L290 TraceCheckUtils]: 35: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,242 INFO L290 TraceCheckUtils]: 36: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,242 INFO L290 TraceCheckUtils]: 37: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,242 INFO L290 TraceCheckUtils]: 38: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume true; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,243 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {20640#(not (= |base2flt_#in~m| 1))} {20599#true} #395#return; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 40: Hoare triple {20600#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L272 TraceCheckUtils]: 41: Hoare triple {20600#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 42: Hoare triple {20600#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 43: Hoare triple {20600#false} assume !(0 == ~m % 4294967296); {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 44: Hoare triple {20600#false} assume !(~m % 4294967296 < 16777216); {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 45: Hoare triple {20600#false} assume !false; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 46: Hoare triple {20600#false} assume !(~m % 4294967296 >= 33554432); {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 47: Hoare triple {20600#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 48: Hoare triple {20600#false} assume 128 + ~e <= 2147483647; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 49: Hoare triple {20600#false} assume 128 + ~e >= -2147483648; {20600#false} is VALID [2022-02-21 03:10:13,243 INFO L290 TraceCheckUtils]: 50: Hoare triple {20600#false} assume !(16777216 * (128 + ~e) <= 2147483647); {20600#false} is VALID [2022-02-21 03:10:13,244 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:13,244 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:13,244 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1298672610] [2022-02-21 03:10:13,245 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1298672610] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:13,245 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1639262193] [2022-02-21 03:10:13,245 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:13,245 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:13,245 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:13,246 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:13,247 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-02-21 03:10:13,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:13,296 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-21 03:10:13,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:13,305 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:13,433 INFO L290 TraceCheckUtils]: 0: Hoare triple {20599#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(21, 2);call #Ultimate.allocInit(12, 3); {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {20599#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L272 TraceCheckUtils]: 2: Hoare triple {20599#true} call main_#t~ret22#1 := base2flt(0, 0); {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L290 TraceCheckUtils]: 3: Hoare triple {20599#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L290 TraceCheckUtils]: 4: Hoare triple {20599#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {20599#true} #res := ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L290 TraceCheckUtils]: 6: Hoare triple {20599#true} assume true; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {20599#true} {20599#true} #393#return; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {20599#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {20599#true} is VALID [2022-02-21 03:10:13,434 INFO L272 TraceCheckUtils]: 9: Hoare triple {20599#true} call main_#t~ret23#1 := base2flt(1, 0); {20599#true} is VALID [2022-02-21 03:10:13,435 INFO L290 TraceCheckUtils]: 10: Hoare triple {20599#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20674#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:13,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {20674#(= base2flt_~m |base2flt_#in~m|)} assume !(0 == ~m % 4294967296); {20674#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:13,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {20674#(= base2flt_~m |base2flt_#in~m|)} assume ~m % 4294967296 < 16777216; {20674#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:13,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {20674#(= base2flt_~m |base2flt_#in~m|)} assume !false; {20674#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:13,436 INFO L290 TraceCheckUtils]: 14: Hoare triple {20674#(= base2flt_~m |base2flt_#in~m|)} assume !(~e <= -128); {20674#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:13,436 INFO L290 TraceCheckUtils]: 15: Hoare triple {20674#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 <= 2147483647; {20674#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:13,436 INFO L290 TraceCheckUtils]: 16: Hoare triple {20674#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:13,437 INFO L290 TraceCheckUtils]: 17: Hoare triple {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:13,437 INFO L290 TraceCheckUtils]: 18: Hoare triple {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !false; {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:13,437 INFO L290 TraceCheckUtils]: 19: Hoare triple {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:13,438 INFO L290 TraceCheckUtils]: 20: Hoare triple {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:13,438 INFO L290 TraceCheckUtils]: 21: Hoare triple {20693#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20709#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:13,439 INFO L290 TraceCheckUtils]: 22: Hoare triple {20709#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !(~m % 4294967296 < 16777216); {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,439 INFO L290 TraceCheckUtils]: 23: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,439 INFO L290 TraceCheckUtils]: 24: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,440 INFO L290 TraceCheckUtils]: 25: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,440 INFO L290 TraceCheckUtils]: 26: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 16777216 * (128 + ~e) <= 2147483647; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,440 INFO L290 TraceCheckUtils]: 27: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 16777216 * (128 + ~e) >= -2147483648; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,440 INFO L290 TraceCheckUtils]: 28: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,441 INFO L290 TraceCheckUtils]: 29: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,441 INFO L290 TraceCheckUtils]: 30: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 16777216 * (128 + ~e) <= 2147483647; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,441 INFO L290 TraceCheckUtils]: 31: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 16777216 * (128 + ~e) >= -2147483648; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,442 INFO L290 TraceCheckUtils]: 32: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,442 INFO L290 TraceCheckUtils]: 33: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,442 INFO L290 TraceCheckUtils]: 34: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,442 INFO L290 TraceCheckUtils]: 35: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,443 INFO L290 TraceCheckUtils]: 36: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} ~__retres4~0 := ~res~0; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,443 INFO L290 TraceCheckUtils]: 37: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} #res := ~__retres4~0; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,443 INFO L290 TraceCheckUtils]: 38: Hoare triple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume true; {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:13,444 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {20713#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} {20599#true} #395#return; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 40: Hoare triple {20600#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L272 TraceCheckUtils]: 41: Hoare triple {20600#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 42: Hoare triple {20600#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 43: Hoare triple {20600#false} assume !(0 == ~m % 4294967296); {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 44: Hoare triple {20600#false} assume !(~m % 4294967296 < 16777216); {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 45: Hoare triple {20600#false} assume !false; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 46: Hoare triple {20600#false} assume !(~m % 4294967296 >= 33554432); {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 47: Hoare triple {20600#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 48: Hoare triple {20600#false} assume 128 + ~e <= 2147483647; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 49: Hoare triple {20600#false} assume 128 + ~e >= -2147483648; {20600#false} is VALID [2022-02-21 03:10:13,444 INFO L290 TraceCheckUtils]: 50: Hoare triple {20600#false} assume !(16777216 * (128 + ~e) <= 2147483647); {20600#false} is VALID [2022-02-21 03:10:13,445 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:13,445 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 50: Hoare triple {20600#false} assume !(16777216 * (128 + ~e) <= 2147483647); {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 49: Hoare triple {20600#false} assume 128 + ~e >= -2147483648; {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 48: Hoare triple {20600#false} assume 128 + ~e <= 2147483647; {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 47: Hoare triple {20600#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 46: Hoare triple {20600#false} assume !(~m % 4294967296 >= 33554432); {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 45: Hoare triple {20600#false} assume !false; {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 44: Hoare triple {20600#false} assume !(~m % 4294967296 < 16777216); {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 43: Hoare triple {20600#false} assume !(0 == ~m % 4294967296); {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L290 TraceCheckUtils]: 42: Hoare triple {20600#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20600#false} is VALID [2022-02-21 03:10:13,656 INFO L272 TraceCheckUtils]: 41: Hoare triple {20600#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {20600#false} is VALID [2022-02-21 03:10:13,657 INFO L290 TraceCheckUtils]: 40: Hoare triple {20600#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {20600#false} is VALID [2022-02-21 03:10:13,657 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {20640#(not (= |base2flt_#in~m| 1))} {20599#true} #395#return; {20600#false} is VALID [2022-02-21 03:10:13,657 INFO L290 TraceCheckUtils]: 38: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume true; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,658 INFO L290 TraceCheckUtils]: 37: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,658 INFO L290 TraceCheckUtils]: 36: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,658 INFO L290 TraceCheckUtils]: 35: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,659 INFO L290 TraceCheckUtils]: 34: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,659 INFO L290 TraceCheckUtils]: 33: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,659 INFO L290 TraceCheckUtils]: 32: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,659 INFO L290 TraceCheckUtils]: 31: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,660 INFO L290 TraceCheckUtils]: 30: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,660 INFO L290 TraceCheckUtils]: 29: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,660 INFO L290 TraceCheckUtils]: 28: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,660 INFO L290 TraceCheckUtils]: 27: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,661 INFO L290 TraceCheckUtils]: 25: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,662 INFO L290 TraceCheckUtils]: 24: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {20640#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,662 INFO L290 TraceCheckUtils]: 22: Hoare triple {20885#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {20640#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:13,664 INFO L290 TraceCheckUtils]: 21: Hoare triple {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20885#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,664 INFO L290 TraceCheckUtils]: 20: Hoare triple {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,665 INFO L290 TraceCheckUtils]: 19: Hoare triple {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,665 INFO L290 TraceCheckUtils]: 18: Hoare triple {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,666 INFO L290 TraceCheckUtils]: 17: Hoare triple {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20889#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,681 INFO L290 TraceCheckUtils]: 15: Hoare triple {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,681 INFO L290 TraceCheckUtils]: 14: Hoare triple {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,681 INFO L290 TraceCheckUtils]: 13: Hoare triple {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,681 INFO L290 TraceCheckUtils]: 12: Hoare triple {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,682 INFO L290 TraceCheckUtils]: 11: Hoare triple {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(0 == ~m % 4294967296); {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,682 INFO L290 TraceCheckUtils]: 10: Hoare triple {20599#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20905#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:13,682 INFO L272 TraceCheckUtils]: 9: Hoare triple {20599#true} call main_#t~ret23#1 := base2flt(1, 0); {20599#true} is VALID [2022-02-21 03:10:13,682 INFO L290 TraceCheckUtils]: 8: Hoare triple {20599#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {20599#true} is VALID [2022-02-21 03:10:13,682 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {20599#true} {20599#true} #393#return; {20599#true} is VALID [2022-02-21 03:10:13,682 INFO L290 TraceCheckUtils]: 6: Hoare triple {20599#true} assume true; {20599#true} is VALID [2022-02-21 03:10:13,682 INFO L290 TraceCheckUtils]: 5: Hoare triple {20599#true} #res := ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,682 INFO L290 TraceCheckUtils]: 4: Hoare triple {20599#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20599#true} is VALID [2022-02-21 03:10:13,683 INFO L290 TraceCheckUtils]: 3: Hoare triple {20599#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20599#true} is VALID [2022-02-21 03:10:13,683 INFO L272 TraceCheckUtils]: 2: Hoare triple {20599#true} call main_#t~ret22#1 := base2flt(0, 0); {20599#true} is VALID [2022-02-21 03:10:13,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {20599#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {20599#true} is VALID [2022-02-21 03:10:13,683 INFO L290 TraceCheckUtils]: 0: Hoare triple {20599#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(21, 2);call #Ultimate.allocInit(12, 3); {20599#true} is VALID [2022-02-21 03:10:13,683 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:13,683 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1639262193] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:13,683 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:13,683 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-02-21 03:10:13,683 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1965453774] [2022-02-21 03:10:13,683 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:13,684 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 51 [2022-02-21 03:10:13,684 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:13,684 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:13,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:13,746 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-21 03:10:13,746 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:13,746 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-21 03:10:13,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=121, Unknown=0, NotChecked=0, Total=182 [2022-02-21 03:10:13,747 INFO L87 Difference]: Start difference. First operand 296 states and 380 transitions. Second operand has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:16,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:16,327 INFO L93 Difference]: Finished difference Result 1217 states and 1533 transitions. [2022-02-21 03:10:16,327 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-02-21 03:10:16,327 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 51 [2022-02-21 03:10:16,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:16,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:16,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 658 transitions. [2022-02-21 03:10:16,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:16,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 658 transitions. [2022-02-21 03:10:16,337 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 658 transitions. [2022-02-21 03:10:16,803 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 658 edges. 658 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:16,834 INFO L225 Difference]: With dead ends: 1217 [2022-02-21 03:10:16,834 INFO L226 Difference]: Without dead ends: 938 [2022-02-21 03:10:16,835 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 150 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 289 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=345, Invalid=845, Unknown=0, NotChecked=0, Total=1190 [2022-02-21 03:10:16,835 INFO L933 BasicCegarLoop]: 181 mSDtfsCounter, 749 mSDsluCounter, 850 mSDsCounter, 0 mSdLazyCounter, 451 mSolverCounterSat, 94 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 749 SdHoareTripleChecker+Valid, 1031 SdHoareTripleChecker+Invalid, 545 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 94 IncrementalHoareTripleChecker+Valid, 451 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:16,835 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [749 Valid, 1031 Invalid, 545 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [94 Valid, 451 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-21 03:10:16,836 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 938 states. [2022-02-21 03:10:17,013 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 938 to 360. [2022-02-21 03:10:17,014 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:17,014 INFO L82 GeneralOperation]: Start isEquivalent. First operand 938 states. Second operand has 360 states, 328 states have (on average 1.399390243902439) internal successors, (459), 351 states have internal predecessors, (459), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:17,015 INFO L74 IsIncluded]: Start isIncluded. First operand 938 states. Second operand has 360 states, 328 states have (on average 1.399390243902439) internal successors, (459), 351 states have internal predecessors, (459), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:17,015 INFO L87 Difference]: Start difference. First operand 938 states. Second operand has 360 states, 328 states have (on average 1.399390243902439) internal successors, (459), 351 states have internal predecessors, (459), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:17,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:17,051 INFO L93 Difference]: Finished difference Result 938 states and 1153 transitions. [2022-02-21 03:10:17,051 INFO L276 IsEmpty]: Start isEmpty. Operand 938 states and 1153 transitions. [2022-02-21 03:10:17,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:17,052 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:17,053 INFO L74 IsIncluded]: Start isIncluded. First operand has 360 states, 328 states have (on average 1.399390243902439) internal successors, (459), 351 states have internal predecessors, (459), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 938 states. [2022-02-21 03:10:17,053 INFO L87 Difference]: Start difference. First operand has 360 states, 328 states have (on average 1.399390243902439) internal successors, (459), 351 states have internal predecessors, (459), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 938 states. [2022-02-21 03:10:17,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:17,085 INFO L93 Difference]: Finished difference Result 938 states and 1153 transitions. [2022-02-21 03:10:17,085 INFO L276 IsEmpty]: Start isEmpty. Operand 938 states and 1153 transitions. [2022-02-21 03:10:17,086 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:17,086 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:17,086 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:17,086 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:17,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 360 states, 328 states have (on average 1.399390243902439) internal successors, (459), 351 states have internal predecessors, (459), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:17,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 360 states to 360 states and 467 transitions. [2022-02-21 03:10:17,092 INFO L78 Accepts]: Start accepts. Automaton has 360 states and 467 transitions. Word has length 51 [2022-02-21 03:10:17,092 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:17,092 INFO L470 AbstractCegarLoop]: Abstraction has 360 states and 467 transitions. [2022-02-21 03:10:17,092 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 6.357142857142857) internal successors, (89), 13 states have internal predecessors, (89), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:17,093 INFO L276 IsEmpty]: Start isEmpty. Operand 360 states and 467 transitions. [2022-02-21 03:10:17,093 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-02-21 03:10:17,093 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:17,093 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:17,113 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:17,306 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-02-21 03:10:17,306 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:17,306 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:17,306 INFO L85 PathProgramCache]: Analyzing trace with hash -1382541291, now seen corresponding path program 2 times [2022-02-21 03:10:17,306 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:17,307 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [792828270] [2022-02-21 03:10:17,307 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:17,307 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:17,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,356 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:17,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,360 INFO L290 TraceCheckUtils]: 0: Hoare triple {24695#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:17,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {24638#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {24638#true} is VALID [2022-02-21 03:10:17,361 INFO L290 TraceCheckUtils]: 2: Hoare triple {24638#true} #res := ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:17,361 INFO L290 TraceCheckUtils]: 3: Hoare triple {24638#true} assume true; {24638#true} is VALID [2022-02-21 03:10:17,361 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {24638#true} {24638#true} #393#return; {24638#true} is VALID [2022-02-21 03:10:17,361 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:17,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,509 INFO L290 TraceCheckUtils]: 0: Hoare triple {24695#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,509 INFO L290 TraceCheckUtils]: 2: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,510 INFO L290 TraceCheckUtils]: 3: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,510 INFO L290 TraceCheckUtils]: 4: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,510 INFO L290 TraceCheckUtils]: 5: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,511 INFO L290 TraceCheckUtils]: 6: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,512 INFO L290 TraceCheckUtils]: 10: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,513 INFO L290 TraceCheckUtils]: 11: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,514 INFO L290 TraceCheckUtils]: 12: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,514 INFO L290 TraceCheckUtils]: 13: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,515 INFO L290 TraceCheckUtils]: 15: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,515 INFO L290 TraceCheckUtils]: 16: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,516 INFO L290 TraceCheckUtils]: 17: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,516 INFO L290 TraceCheckUtils]: 18: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,516 INFO L290 TraceCheckUtils]: 19: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,516 INFO L290 TraceCheckUtils]: 20: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,517 INFO L290 TraceCheckUtils]: 22: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,518 INFO L290 TraceCheckUtils]: 23: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,519 INFO L290 TraceCheckUtils]: 24: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,519 INFO L290 TraceCheckUtils]: 25: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,520 INFO L290 TraceCheckUtils]: 26: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,520 INFO L290 TraceCheckUtils]: 27: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,521 INFO L290 TraceCheckUtils]: 28: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,521 INFO L290 TraceCheckUtils]: 29: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,522 INFO L290 TraceCheckUtils]: 30: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,522 INFO L290 TraceCheckUtils]: 31: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24702#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,523 INFO L290 TraceCheckUtils]: 32: Hoare triple {24702#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,523 INFO L290 TraceCheckUtils]: 33: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,523 INFO L290 TraceCheckUtils]: 34: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,524 INFO L290 TraceCheckUtils]: 35: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,524 INFO L290 TraceCheckUtils]: 36: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,524 INFO L290 TraceCheckUtils]: 37: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,524 INFO L290 TraceCheckUtils]: 38: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,525 INFO L290 TraceCheckUtils]: 39: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,525 INFO L290 TraceCheckUtils]: 40: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,525 INFO L290 TraceCheckUtils]: 41: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,526 INFO L290 TraceCheckUtils]: 42: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,526 INFO L290 TraceCheckUtils]: 43: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,526 INFO L290 TraceCheckUtils]: 44: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,526 INFO L290 TraceCheckUtils]: 45: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,527 INFO L290 TraceCheckUtils]: 46: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,527 INFO L290 TraceCheckUtils]: 47: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,527 INFO L290 TraceCheckUtils]: 48: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume true; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,528 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {24703#(not (= |base2flt_#in~m| 1))} {24638#true} #395#return; {24639#false} is VALID [2022-02-21 03:10:17,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {24638#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(21, 2);call #Ultimate.allocInit(12, 3); {24638#true} is VALID [2022-02-21 03:10:17,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {24638#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L272 TraceCheckUtils]: 2: Hoare triple {24638#true} call main_#t~ret22#1 := base2flt(0, 0); {24695#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:17,529 INFO L290 TraceCheckUtils]: 3: Hoare triple {24695#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L290 TraceCheckUtils]: 4: Hoare triple {24638#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L290 TraceCheckUtils]: 5: Hoare triple {24638#true} #res := ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L290 TraceCheckUtils]: 6: Hoare triple {24638#true} assume true; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {24638#true} {24638#true} #393#return; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {24638#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {24638#true} is VALID [2022-02-21 03:10:17,529 INFO L272 TraceCheckUtils]: 9: Hoare triple {24638#true} call main_#t~ret23#1 := base2flt(1, 0); {24695#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:17,530 INFO L290 TraceCheckUtils]: 10: Hoare triple {24695#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,530 INFO L290 TraceCheckUtils]: 11: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,530 INFO L290 TraceCheckUtils]: 12: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,531 INFO L290 TraceCheckUtils]: 15: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,532 INFO L290 TraceCheckUtils]: 16: Hoare triple {24696#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,532 INFO L290 TraceCheckUtils]: 17: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,533 INFO L290 TraceCheckUtils]: 18: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,533 INFO L290 TraceCheckUtils]: 19: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,533 INFO L290 TraceCheckUtils]: 20: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,534 INFO L290 TraceCheckUtils]: 21: Hoare triple {24697#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,535 INFO L290 TraceCheckUtils]: 22: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,535 INFO L290 TraceCheckUtils]: 24: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,536 INFO L290 TraceCheckUtils]: 25: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,536 INFO L290 TraceCheckUtils]: 26: Hoare triple {24698#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,537 INFO L290 TraceCheckUtils]: 27: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,537 INFO L290 TraceCheckUtils]: 28: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,537 INFO L290 TraceCheckUtils]: 29: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,537 INFO L290 TraceCheckUtils]: 30: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,538 INFO L290 TraceCheckUtils]: 31: Hoare triple {24699#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,539 INFO L290 TraceCheckUtils]: 32: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,539 INFO L290 TraceCheckUtils]: 33: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,539 INFO L290 TraceCheckUtils]: 34: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,540 INFO L290 TraceCheckUtils]: 35: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,540 INFO L290 TraceCheckUtils]: 36: Hoare triple {24700#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,541 INFO L290 TraceCheckUtils]: 37: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,541 INFO L290 TraceCheckUtils]: 38: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,542 INFO L290 TraceCheckUtils]: 39: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,542 INFO L290 TraceCheckUtils]: 40: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,543 INFO L290 TraceCheckUtils]: 41: Hoare triple {24701#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24702#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,543 INFO L290 TraceCheckUtils]: 42: Hoare triple {24702#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,544 INFO L290 TraceCheckUtils]: 43: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,544 INFO L290 TraceCheckUtils]: 44: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,544 INFO L290 TraceCheckUtils]: 45: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,544 INFO L290 TraceCheckUtils]: 46: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,545 INFO L290 TraceCheckUtils]: 47: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,545 INFO L290 TraceCheckUtils]: 48: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,545 INFO L290 TraceCheckUtils]: 49: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,546 INFO L290 TraceCheckUtils]: 50: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,546 INFO L290 TraceCheckUtils]: 51: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,546 INFO L290 TraceCheckUtils]: 52: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,547 INFO L290 TraceCheckUtils]: 53: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,547 INFO L290 TraceCheckUtils]: 54: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,547 INFO L290 TraceCheckUtils]: 55: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,547 INFO L290 TraceCheckUtils]: 56: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,548 INFO L290 TraceCheckUtils]: 57: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,548 INFO L290 TraceCheckUtils]: 58: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume true; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,549 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24703#(not (= |base2flt_#in~m| 1))} {24638#true} #395#return; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 60: Hoare triple {24639#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L272 TraceCheckUtils]: 61: Hoare triple {24639#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 62: Hoare triple {24639#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 63: Hoare triple {24639#false} assume !(0 == ~m % 4294967296); {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 64: Hoare triple {24639#false} assume !(~m % 4294967296 < 16777216); {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 65: Hoare triple {24639#false} assume !false; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 66: Hoare triple {24639#false} assume !(~m % 4294967296 >= 33554432); {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 67: Hoare triple {24639#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 68: Hoare triple {24639#false} assume 128 + ~e <= 2147483647; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 69: Hoare triple {24639#false} assume 128 + ~e >= -2147483648; {24639#false} is VALID [2022-02-21 03:10:17,549 INFO L290 TraceCheckUtils]: 70: Hoare triple {24639#false} assume !(16777216 * (128 + ~e) <= 2147483647); {24639#false} is VALID [2022-02-21 03:10:17,550 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 13 proven. 75 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:17,550 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:17,550 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [792828270] [2022-02-21 03:10:17,550 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [792828270] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:17,550 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [256205916] [2022-02-21 03:10:17,550 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:10:17,550 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:17,550 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:17,551 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:17,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-02-21 03:10:17,623 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-21 03:10:17,624 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:10:17,625 INFO L263 TraceCheckSpWp]: Trace formula consists of 183 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-21 03:10:17,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,639 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 0: Hoare triple {24638#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(21, 2);call #Ultimate.allocInit(12, 3); {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {24638#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L272 TraceCheckUtils]: 2: Hoare triple {24638#true} call main_#t~ret22#1 := base2flt(0, 0); {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 3: Hoare triple {24638#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 4: Hoare triple {24638#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {24638#true} #res := ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 6: Hoare triple {24638#true} assume true; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {24638#true} {24638#true} #393#return; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L290 TraceCheckUtils]: 8: Hoare triple {24638#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {24638#true} is VALID [2022-02-21 03:10:17,907 INFO L272 TraceCheckUtils]: 9: Hoare triple {24638#true} call main_#t~ret23#1 := base2flt(1, 0); {24638#true} is VALID [2022-02-21 03:10:17,908 INFO L290 TraceCheckUtils]: 10: Hoare triple {24638#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24737#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,908 INFO L290 TraceCheckUtils]: 11: Hoare triple {24737#(= base2flt_~m |base2flt_#in~m|)} assume !(0 == ~m % 4294967296); {24737#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,908 INFO L290 TraceCheckUtils]: 12: Hoare triple {24737#(= base2flt_~m |base2flt_#in~m|)} assume ~m % 4294967296 < 16777216; {24737#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,908 INFO L290 TraceCheckUtils]: 13: Hoare triple {24737#(= base2flt_~m |base2flt_#in~m|)} assume !false; {24737#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,909 INFO L290 TraceCheckUtils]: 14: Hoare triple {24737#(= base2flt_~m |base2flt_#in~m|)} assume !(~e <= -128); {24737#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,909 INFO L290 TraceCheckUtils]: 15: Hoare triple {24737#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 <= 2147483647; {24737#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,909 INFO L290 TraceCheckUtils]: 16: Hoare triple {24737#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,910 INFO L290 TraceCheckUtils]: 17: Hoare triple {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,910 INFO L290 TraceCheckUtils]: 18: Hoare triple {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !false; {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,910 INFO L290 TraceCheckUtils]: 19: Hoare triple {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,910 INFO L290 TraceCheckUtils]: 20: Hoare triple {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,911 INFO L290 TraceCheckUtils]: 21: Hoare triple {24756#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:17,911 INFO L290 TraceCheckUtils]: 22: Hoare triple {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume ~m % 4294967296 < 16777216; {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:17,912 INFO L290 TraceCheckUtils]: 23: Hoare triple {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !false; {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:17,912 INFO L290 TraceCheckUtils]: 24: Hoare triple {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !(~e <= -128); {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:17,912 INFO L290 TraceCheckUtils]: 25: Hoare triple {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume ~e - 1 <= 2147483647; {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:17,913 INFO L290 TraceCheckUtils]: 26: Hoare triple {24772#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,913 INFO L290 TraceCheckUtils]: 27: Hoare triple {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,913 INFO L290 TraceCheckUtils]: 28: Hoare triple {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume !false; {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,914 INFO L290 TraceCheckUtils]: 29: Hoare triple {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,914 INFO L290 TraceCheckUtils]: 30: Hoare triple {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,914 INFO L290 TraceCheckUtils]: 31: Hoare triple {24788#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,915 INFO L290 TraceCheckUtils]: 32: Hoare triple {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,915 INFO L290 TraceCheckUtils]: 33: Hoare triple {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume !false; {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,927 INFO L290 TraceCheckUtils]: 34: Hoare triple {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,928 INFO L290 TraceCheckUtils]: 35: Hoare triple {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,928 INFO L290 TraceCheckUtils]: 36: Hoare triple {24804#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,929 INFO L290 TraceCheckUtils]: 37: Hoare triple {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,929 INFO L290 TraceCheckUtils]: 38: Hoare triple {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume !false; {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,929 INFO L290 TraceCheckUtils]: 39: Hoare triple {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,930 INFO L290 TraceCheckUtils]: 40: Hoare triple {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,930 INFO L290 TraceCheckUtils]: 41: Hoare triple {24820#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24836#(= (* 64 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,931 INFO L290 TraceCheckUtils]: 42: Hoare triple {24836#(= (* 64 |base2flt_#in~m|) base2flt_~m)} assume !(~m % 4294967296 < 16777216); {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,931 INFO L290 TraceCheckUtils]: 43: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,932 INFO L290 TraceCheckUtils]: 44: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,932 INFO L290 TraceCheckUtils]: 45: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,932 INFO L290 TraceCheckUtils]: 46: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 16777216 * (128 + ~e) <= 2147483647; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,933 INFO L290 TraceCheckUtils]: 47: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 16777216 * (128 + ~e) >= -2147483648; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,933 INFO L290 TraceCheckUtils]: 48: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,933 INFO L290 TraceCheckUtils]: 49: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,934 INFO L290 TraceCheckUtils]: 50: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 16777216 * (128 + ~e) <= 2147483647; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,934 INFO L290 TraceCheckUtils]: 51: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 16777216 * (128 + ~e) >= -2147483648; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,934 INFO L290 TraceCheckUtils]: 52: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,935 INFO L290 TraceCheckUtils]: 53: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,935 INFO L290 TraceCheckUtils]: 54: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,935 INFO L290 TraceCheckUtils]: 55: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,935 INFO L290 TraceCheckUtils]: 56: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} ~__retres4~0 := ~res~0; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,936 INFO L290 TraceCheckUtils]: 57: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} #res := ~__retres4~0; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,936 INFO L290 TraceCheckUtils]: 58: Hoare triple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume true; {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,937 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24840#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} {24638#true} #395#return; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 60: Hoare triple {24639#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L272 TraceCheckUtils]: 61: Hoare triple {24639#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 62: Hoare triple {24639#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 63: Hoare triple {24639#false} assume !(0 == ~m % 4294967296); {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 64: Hoare triple {24639#false} assume !(~m % 4294967296 < 16777216); {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 65: Hoare triple {24639#false} assume !false; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 66: Hoare triple {24639#false} assume !(~m % 4294967296 >= 33554432); {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 67: Hoare triple {24639#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 68: Hoare triple {24639#false} assume 128 + ~e <= 2147483647; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 69: Hoare triple {24639#false} assume 128 + ~e >= -2147483648; {24639#false} is VALID [2022-02-21 03:10:17,937 INFO L290 TraceCheckUtils]: 70: Hoare triple {24639#false} assume !(16777216 * (128 + ~e) <= 2147483647); {24639#false} is VALID [2022-02-21 03:10:17,938 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 13 proven. 75 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:17,938 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:18,424 INFO L290 TraceCheckUtils]: 70: Hoare triple {24639#false} assume !(16777216 * (128 + ~e) <= 2147483647); {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 69: Hoare triple {24639#false} assume 128 + ~e >= -2147483648; {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 68: Hoare triple {24639#false} assume 128 + ~e <= 2147483647; {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 67: Hoare triple {24639#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 66: Hoare triple {24639#false} assume !(~m % 4294967296 >= 33554432); {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 65: Hoare triple {24639#false} assume !false; {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 64: Hoare triple {24639#false} assume !(~m % 4294967296 < 16777216); {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 63: Hoare triple {24639#false} assume !(0 == ~m % 4294967296); {24639#false} is VALID [2022-02-21 03:10:18,425 INFO L290 TraceCheckUtils]: 62: Hoare triple {24639#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24639#false} is VALID [2022-02-21 03:10:18,426 INFO L272 TraceCheckUtils]: 61: Hoare triple {24639#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {24639#false} is VALID [2022-02-21 03:10:18,426 INFO L290 TraceCheckUtils]: 60: Hoare triple {24639#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {24639#false} is VALID [2022-02-21 03:10:18,426 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24703#(not (= |base2flt_#in~m| 1))} {24638#true} #395#return; {24639#false} is VALID [2022-02-21 03:10:18,426 INFO L290 TraceCheckUtils]: 58: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume true; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,427 INFO L290 TraceCheckUtils]: 57: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,427 INFO L290 TraceCheckUtils]: 56: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,427 INFO L290 TraceCheckUtils]: 55: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,427 INFO L290 TraceCheckUtils]: 54: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,428 INFO L290 TraceCheckUtils]: 53: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,428 INFO L290 TraceCheckUtils]: 52: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,428 INFO L290 TraceCheckUtils]: 51: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,428 INFO L290 TraceCheckUtils]: 50: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,429 INFO L290 TraceCheckUtils]: 49: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,429 INFO L290 TraceCheckUtils]: 48: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,429 INFO L290 TraceCheckUtils]: 47: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,429 INFO L290 TraceCheckUtils]: 46: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 16777216 * (128 + ~e) <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,430 INFO L290 TraceCheckUtils]: 45: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,430 INFO L290 TraceCheckUtils]: 44: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,430 INFO L290 TraceCheckUtils]: 43: Hoare triple {24703#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,431 INFO L290 TraceCheckUtils]: 42: Hoare triple {25012#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {24703#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,432 INFO L290 TraceCheckUtils]: 41: Hoare triple {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25012#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,432 INFO L290 TraceCheckUtils]: 40: Hoare triple {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,433 INFO L290 TraceCheckUtils]: 39: Hoare triple {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,433 INFO L290 TraceCheckUtils]: 38: Hoare triple {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,433 INFO L290 TraceCheckUtils]: 37: Hoare triple {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,434 INFO L290 TraceCheckUtils]: 36: Hoare triple {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25016#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,435 INFO L290 TraceCheckUtils]: 35: Hoare triple {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,435 INFO L290 TraceCheckUtils]: 34: Hoare triple {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,435 INFO L290 TraceCheckUtils]: 33: Hoare triple {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,435 INFO L290 TraceCheckUtils]: 32: Hoare triple {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,436 INFO L290 TraceCheckUtils]: 31: Hoare triple {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25032#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,437 INFO L290 TraceCheckUtils]: 30: Hoare triple {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,437 INFO L290 TraceCheckUtils]: 29: Hoare triple {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,437 INFO L290 TraceCheckUtils]: 28: Hoare triple {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,438 INFO L290 TraceCheckUtils]: 27: Hoare triple {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,438 INFO L290 TraceCheckUtils]: 26: Hoare triple {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25048#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,439 INFO L290 TraceCheckUtils]: 25: Hoare triple {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,439 INFO L290 TraceCheckUtils]: 24: Hoare triple {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,440 INFO L290 TraceCheckUtils]: 23: Hoare triple {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,441 INFO L290 TraceCheckUtils]: 21: Hoare triple {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25064#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,441 INFO L290 TraceCheckUtils]: 20: Hoare triple {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,442 INFO L290 TraceCheckUtils]: 19: Hoare triple {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,442 INFO L290 TraceCheckUtils]: 18: Hoare triple {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,442 INFO L290 TraceCheckUtils]: 17: Hoare triple {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,443 INFO L290 TraceCheckUtils]: 16: Hoare triple {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25080#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,444 INFO L290 TraceCheckUtils]: 15: Hoare triple {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,444 INFO L290 TraceCheckUtils]: 14: Hoare triple {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,444 INFO L290 TraceCheckUtils]: 13: Hoare triple {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,444 INFO L290 TraceCheckUtils]: 12: Hoare triple {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,445 INFO L290 TraceCheckUtils]: 11: Hoare triple {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(0 == ~m % 4294967296); {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,445 INFO L290 TraceCheckUtils]: 10: Hoare triple {24638#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25096#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,445 INFO L272 TraceCheckUtils]: 9: Hoare triple {24638#true} call main_#t~ret23#1 := base2flt(1, 0); {24638#true} is VALID [2022-02-21 03:10:18,445 INFO L290 TraceCheckUtils]: 8: Hoare triple {24638#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {24638#true} is VALID [2022-02-21 03:10:18,445 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {24638#true} {24638#true} #393#return; {24638#true} is VALID [2022-02-21 03:10:18,445 INFO L290 TraceCheckUtils]: 6: Hoare triple {24638#true} assume true; {24638#true} is VALID [2022-02-21 03:10:18,445 INFO L290 TraceCheckUtils]: 5: Hoare triple {24638#true} #res := ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:18,445 INFO L290 TraceCheckUtils]: 4: Hoare triple {24638#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {24638#true} is VALID [2022-02-21 03:10:18,446 INFO L290 TraceCheckUtils]: 3: Hoare triple {24638#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24638#true} is VALID [2022-02-21 03:10:18,446 INFO L272 TraceCheckUtils]: 2: Hoare triple {24638#true} call main_#t~ret22#1 := base2flt(0, 0); {24638#true} is VALID [2022-02-21 03:10:18,446 INFO L290 TraceCheckUtils]: 1: Hoare triple {24638#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {24638#true} is VALID [2022-02-21 03:10:18,446 INFO L290 TraceCheckUtils]: 0: Hoare triple {24638#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(21, 2);call #Ultimate.allocInit(12, 3); {24638#true} is VALID [2022-02-21 03:10:18,446 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 13 proven. 75 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:18,446 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [256205916] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:18,446 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:18,446 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 26 [2022-02-21 03:10:18,447 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [832517991] [2022-02-21 03:10:18,447 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:18,448 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 71 [2022-02-21 03:10:18,448 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:18,448 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:18,562 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:18,562 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-02-21 03:10:18,562 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:18,563 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-02-21 03:10:18,563 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=193, Invalid=457, Unknown=0, NotChecked=0, Total=650 [2022-02-21 03:10:18,563 INFO L87 Difference]: Start difference. First operand 360 states and 467 transitions. Second operand has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:51,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:51,199 INFO L93 Difference]: Finished difference Result 1636 states and 2073 transitions. [2022-02-21 03:10:51,199 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2022-02-21 03:10:51,200 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 71 [2022-02-21 03:10:51,200 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:51,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:51,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 874 transitions. [2022-02-21 03:10:51,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:51,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 874 transitions. [2022-02-21 03:10:51,223 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 44 states and 874 transitions. [2022-02-21 03:10:52,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 874 edges. 874 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:52,719 INFO L225 Difference]: With dead ends: 1636 [2022-02-21 03:10:52,719 INFO L226 Difference]: Without dead ends: 1250 [2022-02-21 03:10:52,720 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 983 ImplicationChecksByTransitivity, 18.4s TimeCoverageRelationStatistics Valid=994, Invalid=2909, Unknown=3, NotChecked=0, Total=3906 [2022-02-21 03:10:52,720 INFO L933 BasicCegarLoop]: 199 mSDtfsCounter, 1328 mSDsluCounter, 2517 mSDsCounter, 0 mSdLazyCounter, 1475 mSolverCounterSat, 248 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1328 SdHoareTripleChecker+Valid, 2716 SdHoareTripleChecker+Invalid, 1723 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 248 IncrementalHoareTripleChecker+Valid, 1475 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:52,721 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1328 Valid, 2716 Invalid, 1723 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [248 Valid, 1475 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-02-21 03:10:52,722 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1250 states. [2022-02-21 03:10:53,012 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1250 to 403. [2022-02-21 03:10:53,012 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:53,013 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1250 states. Second operand has 403 states, 371 states have (on average 1.3935309973045822) internal successors, (517), 394 states have internal predecessors, (517), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:53,013 INFO L74 IsIncluded]: Start isIncluded. First operand 1250 states. Second operand has 403 states, 371 states have (on average 1.3935309973045822) internal successors, (517), 394 states have internal predecessors, (517), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:53,014 INFO L87 Difference]: Start difference. First operand 1250 states. Second operand has 403 states, 371 states have (on average 1.3935309973045822) internal successors, (517), 394 states have internal predecessors, (517), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:53,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:53,072 INFO L93 Difference]: Finished difference Result 1250 states and 1541 transitions. [2022-02-21 03:10:53,072 INFO L276 IsEmpty]: Start isEmpty. Operand 1250 states and 1541 transitions. [2022-02-21 03:10:53,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:53,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:53,074 INFO L74 IsIncluded]: Start isIncluded. First operand has 403 states, 371 states have (on average 1.3935309973045822) internal successors, (517), 394 states have internal predecessors, (517), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 1250 states. [2022-02-21 03:10:53,074 INFO L87 Difference]: Start difference. First operand has 403 states, 371 states have (on average 1.3935309973045822) internal successors, (517), 394 states have internal predecessors, (517), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 1250 states. [2022-02-21 03:10:53,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:53,132 INFO L93 Difference]: Finished difference Result 1250 states and 1541 transitions. [2022-02-21 03:10:53,132 INFO L276 IsEmpty]: Start isEmpty. Operand 1250 states and 1541 transitions. [2022-02-21 03:10:53,134 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:53,134 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:53,134 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:53,134 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:53,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 403 states, 371 states have (on average 1.3935309973045822) internal successors, (517), 394 states have internal predecessors, (517), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:53,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 403 states to 403 states and 525 transitions. [2022-02-21 03:10:53,143 INFO L78 Accepts]: Start accepts. Automaton has 403 states and 525 transitions. Word has length 71 [2022-02-21 03:10:53,143 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:53,143 INFO L470 AbstractCegarLoop]: Abstraction has 403 states and 525 transitions. [2022-02-21 03:10:53,144 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 5.730769230769231) internal successors, (149), 25 states have internal predecessors, (149), 2 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:53,144 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 525 transitions. [2022-02-21 03:10:53,144 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-02-21 03:10:53,144 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:53,144 INFO L514 BasicCegarLoop]: trace histogram [11, 10, 10, 10, 10, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:53,163 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:53,347 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-02-21 03:10:53,347 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting base2fltErr6ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 27 more)] === [2022-02-21 03:10:53,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:53,348 INFO L85 PathProgramCache]: Analyzing trace with hash -867235089, now seen corresponding path program 2 times [2022-02-21 03:10:53,348 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:53,348 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1017435349] [2022-02-21 03:10:53,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:53,348 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:53,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:53,395 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:53,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:53,399 INFO L290 TraceCheckUtils]: 0: Hoare triple {30100#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:53,399 INFO L290 TraceCheckUtils]: 1: Hoare triple {30035#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {30035#true} is VALID [2022-02-21 03:10:53,399 INFO L290 TraceCheckUtils]: 2: Hoare triple {30035#true} #res := ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:53,399 INFO L290 TraceCheckUtils]: 3: Hoare triple {30035#true} assume true; {30035#true} is VALID [2022-02-21 03:10:53,400 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {30035#true} {30035#true} #393#return; {30035#true} is VALID [2022-02-21 03:10:53,400 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:53,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:53,567 INFO L290 TraceCheckUtils]: 0: Hoare triple {30100#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,568 INFO L290 TraceCheckUtils]: 3: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,569 INFO L290 TraceCheckUtils]: 4: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,570 INFO L290 TraceCheckUtils]: 6: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,570 INFO L290 TraceCheckUtils]: 8: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,571 INFO L290 TraceCheckUtils]: 10: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,571 INFO L290 TraceCheckUtils]: 11: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,572 INFO L290 TraceCheckUtils]: 12: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,572 INFO L290 TraceCheckUtils]: 14: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,573 INFO L290 TraceCheckUtils]: 15: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,573 INFO L290 TraceCheckUtils]: 16: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,574 INFO L290 TraceCheckUtils]: 17: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,574 INFO L290 TraceCheckUtils]: 18: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,574 INFO L290 TraceCheckUtils]: 19: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,574 INFO L290 TraceCheckUtils]: 20: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,575 INFO L290 TraceCheckUtils]: 21: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,575 INFO L290 TraceCheckUtils]: 22: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,576 INFO L290 TraceCheckUtils]: 23: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,576 INFO L290 TraceCheckUtils]: 24: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,576 INFO L290 TraceCheckUtils]: 25: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,577 INFO L290 TraceCheckUtils]: 26: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,577 INFO L290 TraceCheckUtils]: 27: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,577 INFO L290 TraceCheckUtils]: 28: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,578 INFO L290 TraceCheckUtils]: 29: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,578 INFO L290 TraceCheckUtils]: 30: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,579 INFO L290 TraceCheckUtils]: 31: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,579 INFO L290 TraceCheckUtils]: 32: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,580 INFO L290 TraceCheckUtils]: 33: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,580 INFO L290 TraceCheckUtils]: 34: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,580 INFO L290 TraceCheckUtils]: 35: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,581 INFO L290 TraceCheckUtils]: 36: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,581 INFO L290 TraceCheckUtils]: 37: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,581 INFO L290 TraceCheckUtils]: 38: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume !false; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,581 INFO L290 TraceCheckUtils]: 39: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume !(~e <= -128); {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,582 INFO L290 TraceCheckUtils]: 40: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,582 INFO L290 TraceCheckUtils]: 41: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,583 INFO L290 TraceCheckUtils]: 42: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,583 INFO L290 TraceCheckUtils]: 43: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume !false; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,583 INFO L290 TraceCheckUtils]: 44: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,584 INFO L290 TraceCheckUtils]: 45: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,584 INFO L290 TraceCheckUtils]: 46: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,584 INFO L290 TraceCheckUtils]: 47: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,585 INFO L290 TraceCheckUtils]: 48: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume !false; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,585 INFO L290 TraceCheckUtils]: 49: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume !(~e <= -128); {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,585 INFO L290 TraceCheckUtils]: 50: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,586 INFO L290 TraceCheckUtils]: 51: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,586 INFO L290 TraceCheckUtils]: 52: Hoare triple {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,586 INFO L290 TraceCheckUtils]: 53: Hoare triple {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} assume !false; {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,587 INFO L290 TraceCheckUtils]: 54: Hoare triple {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {30112#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:53,587 INFO L290 TraceCheckUtils]: 55: Hoare triple {30112#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {30112#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:53,587 INFO L290 TraceCheckUtils]: 56: Hoare triple {30112#(not (= |base2flt_#in~e| 0))} assume true; {30112#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:53,588 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30112#(not (= |base2flt_#in~e| 0))} {30035#true} #395#return; {30036#false} is VALID [2022-02-21 03:10:53,588 INFO L290 TraceCheckUtils]: 0: Hoare triple {30035#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(21, 2);call #Ultimate.allocInit(12, 3); {30035#true} is VALID [2022-02-21 03:10:53,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {30035#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {30035#true} is VALID [2022-02-21 03:10:53,589 INFO L272 TraceCheckUtils]: 2: Hoare triple {30035#true} call main_#t~ret22#1 := base2flt(0, 0); {30100#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:53,589 INFO L290 TraceCheckUtils]: 3: Hoare triple {30100#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:53,589 INFO L290 TraceCheckUtils]: 4: Hoare triple {30035#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {30035#true} is VALID [2022-02-21 03:10:53,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {30035#true} #res := ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:53,589 INFO L290 TraceCheckUtils]: 6: Hoare triple {30035#true} assume true; {30035#true} is VALID [2022-02-21 03:10:53,589 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {30035#true} {30035#true} #393#return; {30035#true} is VALID [2022-02-21 03:10:53,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {30035#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {30035#true} is VALID [2022-02-21 03:10:53,590 INFO L272 TraceCheckUtils]: 9: Hoare triple {30035#true} call main_#t~ret23#1 := base2flt(1, 0); {30100#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:53,590 INFO L290 TraceCheckUtils]: 10: Hoare triple {30100#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,590 INFO L290 TraceCheckUtils]: 11: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,591 INFO L290 TraceCheckUtils]: 12: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,591 INFO L290 TraceCheckUtils]: 13: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,591 INFO L290 TraceCheckUtils]: 14: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,591 INFO L290 TraceCheckUtils]: 15: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:53,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {30101#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:53,594 INFO L290 TraceCheckUtils]: 21: Hoare triple {30102#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,594 INFO L290 TraceCheckUtils]: 22: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,595 INFO L290 TraceCheckUtils]: 25: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,595 INFO L290 TraceCheckUtils]: 26: Hoare triple {30103#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,596 INFO L290 TraceCheckUtils]: 27: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,596 INFO L290 TraceCheckUtils]: 28: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,596 INFO L290 TraceCheckUtils]: 29: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,596 INFO L290 TraceCheckUtils]: 30: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:53,597 INFO L290 TraceCheckUtils]: 31: Hoare triple {30104#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,597 INFO L290 TraceCheckUtils]: 32: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,598 INFO L290 TraceCheckUtils]: 33: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,599 INFO L290 TraceCheckUtils]: 36: Hoare triple {30105#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,599 INFO L290 TraceCheckUtils]: 37: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,599 INFO L290 TraceCheckUtils]: 38: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,600 INFO L290 TraceCheckUtils]: 39: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,600 INFO L290 TraceCheckUtils]: 40: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,601 INFO L290 TraceCheckUtils]: 41: Hoare triple {30106#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,601 INFO L290 TraceCheckUtils]: 42: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,601 INFO L290 TraceCheckUtils]: 43: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,601 INFO L290 TraceCheckUtils]: 44: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,602 INFO L290 TraceCheckUtils]: 45: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,602 INFO L290 TraceCheckUtils]: 46: Hoare triple {30107#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,602 INFO L290 TraceCheckUtils]: 47: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,603 INFO L290 TraceCheckUtils]: 48: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume !false; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,603 INFO L290 TraceCheckUtils]: 49: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume !(~e <= -128); {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,603 INFO L290 TraceCheckUtils]: 50: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} is VALID [2022-02-21 03:10:53,604 INFO L290 TraceCheckUtils]: 51: Hoare triple {30108#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 7 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,604 INFO L290 TraceCheckUtils]: 52: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,604 INFO L290 TraceCheckUtils]: 53: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume !false; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,605 INFO L290 TraceCheckUtils]: 54: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,605 INFO L290 TraceCheckUtils]: 55: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,605 INFO L290 TraceCheckUtils]: 56: Hoare triple {30109#(or (<= 0 (+ base2flt_~e 8)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,606 INFO L290 TraceCheckUtils]: 57: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,606 INFO L290 TraceCheckUtils]: 58: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume !false; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,606 INFO L290 TraceCheckUtils]: 59: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume !(~e <= -128); {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,606 INFO L290 TraceCheckUtils]: 60: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} is VALID [2022-02-21 03:10:53,607 INFO L290 TraceCheckUtils]: 61: Hoare triple {30110#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 9 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,607 INFO L290 TraceCheckUtils]: 62: Hoare triple {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,608 INFO L290 TraceCheckUtils]: 63: Hoare triple {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} assume !false; {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:53,608 INFO L290 TraceCheckUtils]: 64: Hoare triple {30111#(or (<= 0 (+ base2flt_~e 10)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {30112#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:53,608 INFO L290 TraceCheckUtils]: 65: Hoare triple {30112#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {30112#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:53,609 INFO L290 TraceCheckUtils]: 66: Hoare triple {30112#(not (= |base2flt_#in~e| 0))} assume true; {30112#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:53,609 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {30112#(not (= |base2flt_#in~e| 0))} {30035#true} #395#return; {30036#false} is VALID [2022-02-21 03:10:53,609 INFO L290 TraceCheckUtils]: 68: Hoare triple {30036#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {30036#false} is VALID [2022-02-21 03:10:53,609 INFO L272 TraceCheckUtils]: 69: Hoare triple {30036#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {30036#false} is VALID [2022-02-21 03:10:53,609 INFO L290 TraceCheckUtils]: 70: Hoare triple {30036#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30036#false} is VALID [2022-02-21 03:10:53,609 INFO L290 TraceCheckUtils]: 71: Hoare triple {30036#false} assume !(0 == ~m % 4294967296); {30036#false} is VALID [2022-02-21 03:10:53,609 INFO L290 TraceCheckUtils]: 72: Hoare triple {30036#false} assume !(~m % 4294967296 < 16777216); {30036#false} is VALID [2022-02-21 03:10:53,609 INFO L290 TraceCheckUtils]: 73: Hoare triple {30036#false} assume !false; {30036#false} is VALID [2022-02-21 03:10:53,610 INFO L290 TraceCheckUtils]: 74: Hoare triple {30036#false} assume !(~m % 4294967296 >= 33554432); {30036#false} is VALID [2022-02-21 03:10:53,610 INFO L290 TraceCheckUtils]: 75: Hoare triple {30036#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {30036#false} is VALID [2022-02-21 03:10:53,610 INFO L290 TraceCheckUtils]: 76: Hoare triple {30036#false} assume 128 + ~e <= 2147483647; {30036#false} is VALID [2022-02-21 03:10:53,610 INFO L290 TraceCheckUtils]: 77: Hoare triple {30036#false} assume 128 + ~e >= -2147483648; {30036#false} is VALID [2022-02-21 03:10:53,610 INFO L290 TraceCheckUtils]: 78: Hoare triple {30036#false} assume !(16777216 * (128 + ~e) <= 2147483647); {30036#false} is VALID [2022-02-21 03:10:53,610 INFO L134 CoverageAnalysis]: Checked inductivity of 255 backedges. 9 proven. 245 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:53,610 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:53,610 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1017435349] [2022-02-21 03:10:53,610 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1017435349] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:53,610 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1591273297] [2022-02-21 03:10:53,610 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:10:53,611 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:53,611 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:53,612 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:53,612 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-02-21 03:10:53,687 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-21 03:10:53,687 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:10:53,688 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-21 03:10:53,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:53,706 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:54,180 INFO L290 TraceCheckUtils]: 0: Hoare triple {30035#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(21, 2);call #Ultimate.allocInit(12, 3); {30035#true} is VALID [2022-02-21 03:10:54,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {30035#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {30035#true} is VALID [2022-02-21 03:10:54,180 INFO L272 TraceCheckUtils]: 2: Hoare triple {30035#true} call main_#t~ret22#1 := base2flt(0, 0); {30035#true} is VALID [2022-02-21 03:10:54,180 INFO L290 TraceCheckUtils]: 3: Hoare triple {30035#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:54,180 INFO L290 TraceCheckUtils]: 4: Hoare triple {30035#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {30035#true} is VALID [2022-02-21 03:10:54,180 INFO L290 TraceCheckUtils]: 5: Hoare triple {30035#true} #res := ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:54,180 INFO L290 TraceCheckUtils]: 6: Hoare triple {30035#true} assume true; {30035#true} is VALID [2022-02-21 03:10:54,181 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {30035#true} {30035#true} #393#return; {30035#true} is VALID [2022-02-21 03:10:54,181 INFO L290 TraceCheckUtils]: 8: Hoare triple {30035#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {30035#true} is VALID [2022-02-21 03:10:54,181 INFO L272 TraceCheckUtils]: 9: Hoare triple {30035#true} call main_#t~ret23#1 := base2flt(1, 0); {30035#true} is VALID [2022-02-21 03:10:54,181 INFO L290 TraceCheckUtils]: 10: Hoare triple {30035#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30146#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:54,181 INFO L290 TraceCheckUtils]: 11: Hoare triple {30146#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {30146#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:54,182 INFO L290 TraceCheckUtils]: 12: Hoare triple {30146#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {30146#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:54,182 INFO L290 TraceCheckUtils]: 13: Hoare triple {30146#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {30146#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:54,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {30146#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {30146#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:54,183 INFO L290 TraceCheckUtils]: 15: Hoare triple {30146#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {30146#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:54,184 INFO L290 TraceCheckUtils]: 16: Hoare triple {30146#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:54,184 INFO L290 TraceCheckUtils]: 17: Hoare triple {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:54,184 INFO L290 TraceCheckUtils]: 18: Hoare triple {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:54,184 INFO L290 TraceCheckUtils]: 19: Hoare triple {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !(~e <= -128); {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:54,185 INFO L290 TraceCheckUtils]: 20: Hoare triple {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 <= 2147483647; {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:54,185 INFO L290 TraceCheckUtils]: 21: Hoare triple {30165#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:54,186 INFO L290 TraceCheckUtils]: 22: Hoare triple {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~m % 4294967296 < 16777216; {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:54,186 INFO L290 TraceCheckUtils]: 23: Hoare triple {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !false; {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:54,191 INFO L290 TraceCheckUtils]: 24: Hoare triple {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !(~e <= -128); {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:54,192 INFO L290 TraceCheckUtils]: 25: Hoare triple {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 <= 2147483647; {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:54,193 INFO L290 TraceCheckUtils]: 26: Hoare triple {30181#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:54,193 INFO L290 TraceCheckUtils]: 27: Hoare triple {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~m % 4294967296 < 16777216; {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:54,193 INFO L290 TraceCheckUtils]: 28: Hoare triple {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !false; {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:54,194 INFO L290 TraceCheckUtils]: 29: Hoare triple {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !(~e <= -128); {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:54,194 INFO L290 TraceCheckUtils]: 30: Hoare triple {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 <= 2147483647; {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:54,195 INFO L290 TraceCheckUtils]: 31: Hoare triple {30197#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:54,196 INFO L290 TraceCheckUtils]: 32: Hoare triple {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~m % 4294967296 < 16777216; {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:54,196 INFO L290 TraceCheckUtils]: 33: Hoare triple {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !false; {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:54,196 INFO L290 TraceCheckUtils]: 34: Hoare triple {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !(~e <= -128); {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:54,197 INFO L290 TraceCheckUtils]: 35: Hoare triple {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e - 1 <= 2147483647; {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:54,197 INFO L290 TraceCheckUtils]: 36: Hoare triple {30213#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:54,198 INFO L290 TraceCheckUtils]: 37: Hoare triple {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~m % 4294967296 < 16777216; {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:54,198 INFO L290 TraceCheckUtils]: 38: Hoare triple {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume !false; {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:54,198 INFO L290 TraceCheckUtils]: 39: Hoare triple {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume !(~e <= -128); {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:54,199 INFO L290 TraceCheckUtils]: 40: Hoare triple {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~e - 1 <= 2147483647; {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:54,199 INFO L290 TraceCheckUtils]: 41: Hoare triple {30229#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:54,200 INFO L290 TraceCheckUtils]: 42: Hoare triple {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~m % 4294967296 < 16777216; {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:54,200 INFO L290 TraceCheckUtils]: 43: Hoare triple {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume !false; {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:54,200 INFO L290 TraceCheckUtils]: 44: Hoare triple {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume !(~e <= -128); {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:54,200 INFO L290 TraceCheckUtils]: 45: Hoare triple {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~e - 1 <= 2147483647; {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:54,201 INFO L290 TraceCheckUtils]: 46: Hoare triple {30245#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} is VALID [2022-02-21 03:10:54,201 INFO L290 TraceCheckUtils]: 47: Hoare triple {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} assume ~m % 4294967296 < 16777216; {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} is VALID [2022-02-21 03:10:54,202 INFO L290 TraceCheckUtils]: 48: Hoare triple {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} assume !false; {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} is VALID [2022-02-21 03:10:54,202 INFO L290 TraceCheckUtils]: 49: Hoare triple {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} assume !(~e <= -128); {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} is VALID [2022-02-21 03:10:54,202 INFO L290 TraceCheckUtils]: 50: Hoare triple {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} assume ~e - 1 <= 2147483647; {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} is VALID [2022-02-21 03:10:54,203 INFO L290 TraceCheckUtils]: 51: Hoare triple {30261#(<= |base2flt_#in~e| (+ 7 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} is VALID [2022-02-21 03:10:54,203 INFO L290 TraceCheckUtils]: 52: Hoare triple {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} assume ~m % 4294967296 < 16777216; {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} is VALID [2022-02-21 03:10:54,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} assume !false; {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} is VALID [2022-02-21 03:10:54,204 INFO L290 TraceCheckUtils]: 54: Hoare triple {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} assume !(~e <= -128); {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} is VALID [2022-02-21 03:10:54,204 INFO L290 TraceCheckUtils]: 55: Hoare triple {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} assume ~e - 1 <= 2147483647; {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} is VALID [2022-02-21 03:10:54,205 INFO L290 TraceCheckUtils]: 56: Hoare triple {30277#(<= |base2flt_#in~e| (+ base2flt_~e 8))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} is VALID [2022-02-21 03:10:54,205 INFO L290 TraceCheckUtils]: 57: Hoare triple {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} assume ~m % 4294967296 < 16777216; {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} is VALID [2022-02-21 03:10:54,205 INFO L290 TraceCheckUtils]: 58: Hoare triple {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} assume !false; {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} is VALID [2022-02-21 03:10:54,206 INFO L290 TraceCheckUtils]: 59: Hoare triple {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} assume !(~e <= -128); {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} is VALID [2022-02-21 03:10:54,206 INFO L290 TraceCheckUtils]: 60: Hoare triple {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} assume ~e - 1 <= 2147483647; {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} is VALID [2022-02-21 03:10:54,207 INFO L290 TraceCheckUtils]: 61: Hoare triple {30293#(<= |base2flt_#in~e| (+ 9 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30309#(<= |base2flt_#in~e| (+ base2flt_~e 10))} is VALID [2022-02-21 03:10:54,208 INFO L290 TraceCheckUtils]: 62: Hoare triple {30309#(<= |base2flt_#in~e| (+ base2flt_~e 10))} assume ~m % 4294967296 < 16777216; {30309#(<= |base2flt_#in~e| (+ base2flt_~e 10))} is VALID [2022-02-21 03:10:54,208 INFO L290 TraceCheckUtils]: 63: Hoare triple {30309#(<= |base2flt_#in~e| (+ base2flt_~e 10))} assume !false; {30309#(<= |base2flt_#in~e| (+ base2flt_~e 10))} is VALID [2022-02-21 03:10:54,209 INFO L290 TraceCheckUtils]: 64: Hoare triple {30309#(<= |base2flt_#in~e| (+ base2flt_~e 10))} assume ~e <= -128;~__retres4~0 := 0; {30319#(<= (+ 118 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:54,209 INFO L290 TraceCheckUtils]: 65: Hoare triple {30319#(<= (+ 118 |base2flt_#in~e|) 0)} #res := ~__retres4~0; {30319#(<= (+ 118 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:54,209 INFO L290 TraceCheckUtils]: 66: Hoare triple {30319#(<= (+ 118 |base2flt_#in~e|) 0)} assume true; {30319#(<= (+ 118 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:54,210 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {30319#(<= (+ 118 |base2flt_#in~e|) 0)} {30035#true} #395#return; {30036#false} is VALID [2022-02-21 03:10:54,210 INFO L290 TraceCheckUtils]: 68: Hoare triple {30036#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {30036#false} is VALID [2022-02-21 03:10:54,210 INFO L272 TraceCheckUtils]: 69: Hoare triple {30036#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {30036#false} is VALID [2022-02-21 03:10:54,210 INFO L290 TraceCheckUtils]: 70: Hoare triple {30036#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30036#false} is VALID [2022-02-21 03:10:54,210 INFO L290 TraceCheckUtils]: 71: Hoare triple {30036#false} assume !(0 == ~m % 4294967296); {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 72: Hoare triple {30036#false} assume !(~m % 4294967296 < 16777216); {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 73: Hoare triple {30036#false} assume !false; {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 74: Hoare triple {30036#false} assume !(~m % 4294967296 >= 33554432); {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 75: Hoare triple {30036#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 76: Hoare triple {30036#false} assume 128 + ~e <= 2147483647; {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 77: Hoare triple {30036#false} assume 128 + ~e >= -2147483648; {30036#false} is VALID [2022-02-21 03:10:54,211 INFO L290 TraceCheckUtils]: 78: Hoare triple {30036#false} assume !(16777216 * (128 + ~e) <= 2147483647); {30036#false} is VALID [2022-02-21 03:10:54,212 INFO L134 CoverageAnalysis]: Checked inductivity of 255 backedges. 9 proven. 245 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:54,212 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:55,196 INFO L290 TraceCheckUtils]: 78: Hoare triple {30036#false} assume !(16777216 * (128 + ~e) <= 2147483647); {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 77: Hoare triple {30036#false} assume 128 + ~e >= -2147483648; {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 76: Hoare triple {30036#false} assume 128 + ~e <= 2147483647; {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 75: Hoare triple {30036#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 74: Hoare triple {30036#false} assume !(~m % 4294967296 >= 33554432); {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 73: Hoare triple {30036#false} assume !false; {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 72: Hoare triple {30036#false} assume !(~m % 4294967296 < 16777216); {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 71: Hoare triple {30036#false} assume !(0 == ~m % 4294967296); {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 70: Hoare triple {30036#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L272 TraceCheckUtils]: 69: Hoare triple {30036#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {30036#false} is VALID [2022-02-21 03:10:55,197 INFO L290 TraceCheckUtils]: 68: Hoare triple {30036#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {30036#false} is VALID [2022-02-21 03:10:55,198 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {30398#(not (<= 0 |base2flt_#in~e|))} {30035#true} #395#return; {30036#false} is VALID [2022-02-21 03:10:55,198 INFO L290 TraceCheckUtils]: 66: Hoare triple {30398#(not (<= 0 |base2flt_#in~e|))} assume true; {30398#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:55,198 INFO L290 TraceCheckUtils]: 65: Hoare triple {30398#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {30398#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:55,199 INFO L290 TraceCheckUtils]: 64: Hoare triple {30408#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {30398#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:55,199 INFO L290 TraceCheckUtils]: 63: Hoare triple {30408#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30408#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,199 INFO L290 TraceCheckUtils]: 62: Hoare triple {30408#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30408#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,200 INFO L290 TraceCheckUtils]: 61: Hoare triple {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30408#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,201 INFO L290 TraceCheckUtils]: 60: Hoare triple {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,201 INFO L290 TraceCheckUtils]: 59: Hoare triple {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,201 INFO L290 TraceCheckUtils]: 58: Hoare triple {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,202 INFO L290 TraceCheckUtils]: 57: Hoare triple {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,202 INFO L290 TraceCheckUtils]: 56: Hoare triple {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30418#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,203 INFO L290 TraceCheckUtils]: 55: Hoare triple {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,203 INFO L290 TraceCheckUtils]: 54: Hoare triple {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,203 INFO L290 TraceCheckUtils]: 52: Hoare triple {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,204 INFO L290 TraceCheckUtils]: 51: Hoare triple {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30434#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,204 INFO L290 TraceCheckUtils]: 50: Hoare triple {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,204 INFO L290 TraceCheckUtils]: 49: Hoare triple {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,205 INFO L290 TraceCheckUtils]: 48: Hoare triple {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,205 INFO L290 TraceCheckUtils]: 47: Hoare triple {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,206 INFO L290 TraceCheckUtils]: 46: Hoare triple {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30450#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,206 INFO L290 TraceCheckUtils]: 45: Hoare triple {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,206 INFO L290 TraceCheckUtils]: 44: Hoare triple {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,206 INFO L290 TraceCheckUtils]: 43: Hoare triple {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,207 INFO L290 TraceCheckUtils]: 42: Hoare triple {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,207 INFO L290 TraceCheckUtils]: 41: Hoare triple {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30466#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,208 INFO L290 TraceCheckUtils]: 40: Hoare triple {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,208 INFO L290 TraceCheckUtils]: 39: Hoare triple {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,208 INFO L290 TraceCheckUtils]: 38: Hoare triple {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,209 INFO L290 TraceCheckUtils]: 37: Hoare triple {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,209 INFO L290 TraceCheckUtils]: 36: Hoare triple {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30482#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,210 INFO L290 TraceCheckUtils]: 35: Hoare triple {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,210 INFO L290 TraceCheckUtils]: 34: Hoare triple {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,210 INFO L290 TraceCheckUtils]: 33: Hoare triple {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,211 INFO L290 TraceCheckUtils]: 32: Hoare triple {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,211 INFO L290 TraceCheckUtils]: 31: Hoare triple {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30498#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,212 INFO L290 TraceCheckUtils]: 30: Hoare triple {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,212 INFO L290 TraceCheckUtils]: 29: Hoare triple {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,212 INFO L290 TraceCheckUtils]: 28: Hoare triple {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,212 INFO L290 TraceCheckUtils]: 27: Hoare triple {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30514#(or (< 0 (+ base2flt_~e 121)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,213 INFO L290 TraceCheckUtils]: 25: Hoare triple {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,214 INFO L290 TraceCheckUtils]: 24: Hoare triple {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,214 INFO L290 TraceCheckUtils]: 23: Hoare triple {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,215 INFO L290 TraceCheckUtils]: 21: Hoare triple {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30530#(or (< 0 (+ base2flt_~e 120)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,215 INFO L290 TraceCheckUtils]: 20: Hoare triple {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} assume ~e - 1 <= 2147483647; {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} is VALID [2022-02-21 03:10:55,216 INFO L290 TraceCheckUtils]: 19: Hoare triple {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} assume !(~e <= -128); {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} is VALID [2022-02-21 03:10:55,216 INFO L290 TraceCheckUtils]: 18: Hoare triple {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} assume !false; {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} is VALID [2022-02-21 03:10:55,216 INFO L290 TraceCheckUtils]: 17: Hoare triple {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} is VALID [2022-02-21 03:10:55,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {30546#(or (not (<= 0 |base2flt_#in~e|)) (< 0 (+ 119 base2flt_~e)))} is VALID [2022-02-21 03:10:55,217 INFO L290 TraceCheckUtils]: 15: Hoare triple {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,218 INFO L290 TraceCheckUtils]: 14: Hoare triple {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,219 INFO L290 TraceCheckUtils]: 11: Hoare triple {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,219 INFO L290 TraceCheckUtils]: 10: Hoare triple {30035#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30562#(or (< 0 (+ 118 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:55,219 INFO L272 TraceCheckUtils]: 9: Hoare triple {30035#true} call main_#t~ret23#1 := base2flt(1, 0); {30035#true} is VALID [2022-02-21 03:10:55,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {30035#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {30035#true} is VALID [2022-02-21 03:10:55,219 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {30035#true} {30035#true} #393#return; {30035#true} is VALID [2022-02-21 03:10:55,219 INFO L290 TraceCheckUtils]: 6: Hoare triple {30035#true} assume true; {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L290 TraceCheckUtils]: 5: Hoare triple {30035#true} #res := ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L290 TraceCheckUtils]: 4: Hoare triple {30035#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L290 TraceCheckUtils]: 3: Hoare triple {30035#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L272 TraceCheckUtils]: 2: Hoare triple {30035#true} call main_#t~ret22#1 := base2flt(0, 0); {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {30035#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~ret22#1, main_#t~ret23#1, main_#t~ret24#1, main_#t~ret25#1, main_#t~ret26#1, main_~a~0#1, main_~ma~2#1, main_~ea~2#1, main_~b~0#1, main_~mb~2#1, main_~eb~2#1, main_~r_mul~0#1, main_~zero~0#1, main_~one~0#1, main_~sb~0#1, main_~tmp~2#1, main_~tmp___0~0#1, main_~tmp___1~0#1, main_~__retres16~0#1;havoc main_~a~0#1;main_~ma~2#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;assume -128 <= main_#t~nondet19#1 && main_#t~nondet19#1 <= 127;main_~ea~2#1 := main_#t~nondet19#1;havoc main_#t~nondet19#1;havoc main_~b~0#1;main_~mb~2#1 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;main_~eb~2#1 := main_#t~nondet21#1;havoc main_#t~nondet21#1;havoc main_~r_mul~0#1;havoc main_~zero~0#1;havoc main_~one~0#1;havoc main_~sb~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L290 TraceCheckUtils]: 0: Hoare triple {30035#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(21, 2);call #Ultimate.allocInit(12, 3); {30035#true} is VALID [2022-02-21 03:10:55,220 INFO L134 CoverageAnalysis]: Checked inductivity of 255 backedges. 9 proven. 245 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-21 03:10:55,220 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1591273297] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:55,221 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:55,221 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 39 [2022-02-21 03:10:55,221 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1581263272] [2022-02-21 03:10:55,221 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:55,221 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 4.846153846153846) internal successors, (189), 38 states have internal predecessors, (189), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 79 [2022-02-21 03:10:55,222 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:55,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 39 states, 39 states have (on average 4.846153846153846) internal successors, (189), 38 states have internal predecessors, (189), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:55,362 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 198 edges. 198 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:55,363 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-02-21 03:10:55,363 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:55,363 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-02-21 03:10:55,363 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=492, Invalid=990, Unknown=0, NotChecked=0, Total=1482 [2022-02-21 03:10:55,364 INFO L87 Difference]: Start difference. First operand 403 states and 525 transitions. Second operand has 39 states, 39 states have (on average 4.846153846153846) internal successors, (189), 38 states have internal predecessors, (189), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4)