./Ultimate.py --spec ../sv-benchmarks/c/properties/no-overflow.prp --file ../sv-benchmarks/c/bitvector/soft_float_3a.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_3a.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 95f89ee6bcff8f17eb3e93b344abecdfb8ddea0894d1b25afafccf6235d7ced6 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-21 03:09:55,379 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-21 03:09:55,381 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-21 03:09:55,419 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-21 03:09:55,419 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-21 03:09:55,425 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-21 03:09:55,427 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-21 03:09:55,431 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-21 03:09:55,433 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-21 03:09:55,436 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-21 03:09:55,437 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-21 03:09:55,438 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-21 03:09:55,438 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-21 03:09:55,440 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-21 03:09:55,441 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-21 03:09:55,442 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-21 03:09:55,443 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-21 03:09:55,443 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-21 03:09:55,446 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-21 03:09:55,451 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-21 03:09:55,452 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-21 03:09:55,454 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-21 03:09:55,456 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-21 03:09:55,456 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-21 03:09:55,461 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-21 03:09:55,462 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-21 03:09:55,462 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-21 03:09:55,463 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-21 03:09:55,463 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-21 03:09:55,464 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-21 03:09:55,464 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-21 03:09:55,465 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-21 03:09:55,466 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-21 03:09:55,467 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-21 03:09:55,468 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-21 03:09:55,468 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-21 03:09:55,468 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-21 03:09:55,468 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-21 03:09:55,469 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-21 03:09:55,469 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-21 03:09:55,470 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-21 03:09:55,470 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:55,497 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-21 03:09:55,497 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-21 03:09:55,498 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-21 03:09:55,498 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-21 03:09:55,499 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-21 03:09:55,499 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-21 03:09:55,499 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-21 03:09:55,500 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-21 03:09:55,500 INFO L138 SettingsManager]: * Use SBE=true [2022-02-21 03:09:55,500 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-21 03:09:55,500 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-21 03:09:55,501 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-21 03:09:55,501 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-21 03:09:55,501 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-21 03:09:55,501 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-21 03:09:55,501 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-21 03:09:55,501 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-21 03:09:55,502 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-21 03:09:55,502 INFO L138 SettingsManager]: * Check absence of signed integer overflows=true [2022-02-21 03:09:55,502 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-21 03:09:55,502 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-21 03:09:55,502 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-21 03:09:55,503 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-21 03:09:55,503 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-21 03:09:55,503 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-21 03:09:55,503 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-21 03:09:55,503 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:09:55,504 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-21 03:09:55,504 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-21 03:09:55,504 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-21 03:09:55,504 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-21 03:09:55,504 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-21 03:09:55,505 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-21 03:09:55,505 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 -> 95f89ee6bcff8f17eb3e93b344abecdfb8ddea0894d1b25afafccf6235d7ced6 [2022-02-21 03:09:55,727 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-21 03:09:55,742 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-21 03:09:55,744 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-21 03:09:55,744 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-21 03:09:55,745 INFO L275 PluginConnector]: CDTParser initialized [2022-02-21 03:09:55,746 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/bitvector/soft_float_3a.c.cil.c [2022-02-21 03:09:55,804 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b1f298b01/08d0bbc4d3cf45b3a5b08226032a7552/FLAGe43392327 [2022-02-21 03:09:56,102 INFO L306 CDTParser]: Found 1 translation units. [2022-02-21 03:09:56,103 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/bitvector/soft_float_3a.c.cil.c [2022-02-21 03:09:56,109 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b1f298b01/08d0bbc4d3cf45b3a5b08226032a7552/FLAGe43392327 [2022-02-21 03:09:56,529 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b1f298b01/08d0bbc4d3cf45b3a5b08226032a7552 [2022-02-21 03:09:56,531 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-21 03:09:56,532 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-21 03:09:56,533 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-21 03:09:56,533 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-21 03:09:56,537 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-21 03:09:56,538 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:09:56" (1/1) ... [2022-02-21 03:09:56,541 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@49420666 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:56, skipping insertion in model container [2022-02-21 03:09:56,541 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:09:56" (1/1) ... [2022-02-21 03:09:56,546 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-21 03:09:56,578 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-21 03:09:56,730 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_3a.c.cil.c[728,741] [2022-02-21 03:09:56,778 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:09:56,785 INFO L203 MainTranslator]: Completed pre-run [2022-02-21 03:09:56,796 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_3a.c.cil.c[728,741] [2022-02-21 03:09:56,850 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:09:56,870 INFO L208 MainTranslator]: Completed translation [2022-02-21 03:09:56,872 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:56 WrapperNode [2022-02-21 03:09:56,872 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-21 03:09:56,873 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-21 03:09:56,873 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-21 03:09:56,873 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-21 03:09:56,878 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:56" (1/1) ... [2022-02-21 03:09:56,894 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:56" (1/1) ... [2022-02-21 03:09:56,935 INFO L137 Inliner]: procedures = 17, calls = 15, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 192 [2022-02-21 03:09:56,937 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-21 03:09:56,938 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-21 03:09:56,938 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-21 03:09:56,939 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-21 03:09:56,944 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:56" (1/1) ... [2022-02-21 03:09:56,944 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:56" (1/1) ... [2022-02-21 03:09:56,949 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:56" (1/1) ... [2022-02-21 03:09:56,950 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:56" (1/1) ... [2022-02-21 03:09:56,963 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:56" (1/1) ... [2022-02-21 03:09:56,969 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:56" (1/1) ... [2022-02-21 03:09:56,973 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:56" (1/1) ... [2022-02-21 03:09:56,975 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-21 03:09:56,976 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-21 03:09:56,976 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-21 03:09:56,976 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-21 03:09:56,980 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:56" (1/1) ... [2022-02-21 03:09:56,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:09:56,992 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:57,005 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:57,023 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:57,041 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-21 03:09:57,041 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-21 03:09:57,042 INFO L130 BoogieDeclarations]: Found specification of procedure base2flt [2022-02-21 03:09:57,042 INFO L138 BoogieDeclarations]: Found implementation of procedure base2flt [2022-02-21 03:09:57,042 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-21 03:09:57,042 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-21 03:09:57,042 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-21 03:09:57,042 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-21 03:09:57,128 INFO L234 CfgBuilder]: Building ICFG [2022-02-21 03:09:57,130 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-21 03:09:57,575 INFO L275 CfgBuilder]: Performing block encoding [2022-02-21 03:09:57,596 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-21 03:09:57,596 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-21 03:09:57,598 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:09:57 BoogieIcfgContainer [2022-02-21 03:09:57,598 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-21 03:09:57,600 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-21 03:09:57,600 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-21 03:09:57,603 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-21 03:09:57,603 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 21.02 03:09:56" (1/3) ... [2022-02-21 03:09:57,604 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6560c4f8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:09:57, skipping insertion in model container [2022-02-21 03:09:57,604 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:56" (2/3) ... [2022-02-21 03:09:57,604 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6560c4f8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:09:57, skipping insertion in model container [2022-02-21 03:09:57,605 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:09:57" (3/3) ... [2022-02-21 03:09:57,606 INFO L111 eAbstractionObserver]: Analyzing ICFG soft_float_3a.c.cil.c [2022-02-21 03:09:57,610 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-21 03:09:57,610 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 22 error locations. [2022-02-21 03:09:57,653 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-21 03:09:57,659 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:57,659 INFO L340 AbstractCegarLoop]: Starting to check reachability of 22 error locations. [2022-02-21 03:09:57,683 INFO L276 IsEmpty]: Start isEmpty. Operand has 127 states, 97 states have (on average 1.7938144329896908) internal successors, (174), 120 states have internal predecessors, (174), 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:57,687 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:09:57,687 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:57,688 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:57,688 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting base2fltErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:09:57,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:57,697 INFO L85 PathProgramCache]: Analyzing trace with hash -1538115704, now seen corresponding path program 1 times [2022-02-21 03:09:57,703 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:57,704 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [727323653] [2022-02-21 03:09:57,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:57,705 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:57,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:57,858 INFO L290 TraceCheckUtils]: 0: Hoare triple {130#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(22, 2);call #Ultimate.allocInit(12, 3); {130#true} is VALID [2022-02-21 03:09:57,858 INFO L290 TraceCheckUtils]: 1: Hoare triple {130#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; {130#true} is VALID [2022-02-21 03:09:57,859 INFO L272 TraceCheckUtils]: 2: Hoare triple {130#true} call main_#t~ret22#1 := base2flt(0, 0); {130#true} is VALID [2022-02-21 03:09:57,859 INFO L290 TraceCheckUtils]: 3: Hoare triple {130#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {130#true} is VALID [2022-02-21 03:09:57,859 INFO L290 TraceCheckUtils]: 4: Hoare triple {130#true} assume !(0 == ~m % 4294967296); {130#true} is VALID [2022-02-21 03:09:57,859 INFO L290 TraceCheckUtils]: 5: Hoare triple {130#true} assume !(~m % 4294967296 < 16777216); {130#true} is VALID [2022-02-21 03:09:57,860 INFO L290 TraceCheckUtils]: 6: Hoare triple {130#true} assume !true; {131#false} is VALID [2022-02-21 03:09:57,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {131#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {131#false} is VALID [2022-02-21 03:09:57,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {131#false} assume !(128 + ~e <= 2147483647); {131#false} is VALID [2022-02-21 03:09:57,861 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,862 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:57,862 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [727323653] [2022-02-21 03:09:57,862 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [727323653] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:57,862 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:57,863 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-21 03:09:57,866 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [734321780] [2022-02-21 03:09:57,866 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:57,871 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:57,873 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:57,876 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:57,892 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:57,892 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-21 03:09:57,892 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:57,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-21 03:09:57,914 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-21 03:09:57,919 INFO L87 Difference]: Start difference. First operand has 127 states, 97 states have (on average 1.7938144329896908) internal successors, (174), 120 states have internal predecessors, (174), 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:58,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,106 INFO L93 Difference]: Finished difference Result 249 states and 369 transitions. [2022-02-21 03:09:58,106 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-21 03:09:58,106 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:58,107 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:58,108 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:58,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 369 transitions. [2022-02-21 03:09:58,126 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:58,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 369 transitions. [2022-02-21 03:09:58,132 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 369 transitions. [2022-02-21 03:09:58,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 369 edges. 369 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:58,430 INFO L225 Difference]: With dead ends: 249 [2022-02-21 03:09:58,431 INFO L226 Difference]: Without dead ends: 101 [2022-02-21 03:09:58,434 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:58,436 INFO L933 BasicCegarLoop]: 167 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, 167 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:58,437 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 167 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:58,448 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-02-21 03:09:58,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 101. [2022-02-21 03:09:58,461 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:58,462 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 101 states, 76 states have (on average 1.5921052631578947) internal successors, (121), 95 states have internal predecessors, (121), 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:58,463 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 101 states, 76 states have (on average 1.5921052631578947) internal successors, (121), 95 states have internal predecessors, (121), 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:58,463 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 101 states, 76 states have (on average 1.5921052631578947) internal successors, (121), 95 states have internal predecessors, (121), 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:58,468 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,468 INFO L93 Difference]: Finished difference Result 101 states and 129 transitions. [2022-02-21 03:09:58,469 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 129 transitions. [2022-02-21 03:09:58,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:58,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:58,470 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 76 states have (on average 1.5921052631578947) internal successors, (121), 95 states have internal predecessors, (121), 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 101 states. [2022-02-21 03:09:58,471 INFO L87 Difference]: Start difference. First operand has 101 states, 76 states have (on average 1.5921052631578947) internal successors, (121), 95 states have internal predecessors, (121), 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 101 states. [2022-02-21 03:09:58,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,475 INFO L93 Difference]: Finished difference Result 101 states and 129 transitions. [2022-02-21 03:09:58,475 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 129 transitions. [2022-02-21 03:09:58,477 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:58,477 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:58,477 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:58,477 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:58,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 76 states have (on average 1.5921052631578947) internal successors, (121), 95 states have internal predecessors, (121), 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:58,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 129 transitions. [2022-02-21 03:09:58,484 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 129 transitions. Word has length 9 [2022-02-21 03:09:58,485 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:58,485 INFO L470 AbstractCegarLoop]: Abstraction has 101 states and 129 transitions. [2022-02-21 03:09:58,485 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:58,485 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 129 transitions. [2022-02-21 03:09:58,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:09:58,486 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:58,486 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:58,486 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-21 03:09:58,487 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:09:58,488 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:58,491 INFO L85 PathProgramCache]: Analyzing trace with hash -1539057052, now seen corresponding path program 1 times [2022-02-21 03:09:58,492 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:58,492 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [550100097] [2022-02-21 03:09:58,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:58,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:58,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,557 INFO L290 TraceCheckUtils]: 0: Hoare triple {722#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(22, 2);call #Ultimate.allocInit(12, 3); {722#true} is VALID [2022-02-21 03:09:58,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {722#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; {722#true} is VALID [2022-02-21 03:09:58,558 INFO L272 TraceCheckUtils]: 2: Hoare triple {722#true} call main_#t~ret22#1 := base2flt(0, 0); {724#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:58,559 INFO L290 TraceCheckUtils]: 3: Hoare triple {724#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {725#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,559 INFO L290 TraceCheckUtils]: 4: Hoare triple {725#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {725#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {725#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {725#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,560 INFO L290 TraceCheckUtils]: 6: Hoare triple {725#(= base2flt_~e 0)} assume !false; {725#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,560 INFO L290 TraceCheckUtils]: 7: Hoare triple {725#(= base2flt_~e 0)} assume !(~e <= -128); {725#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:58,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {725#(= base2flt_~e 0)} assume !(~e - 1 <= 2147483647); {723#false} is VALID [2022-02-21 03:09:58,561 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:58,561 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:58,561 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [550100097] [2022-02-21 03:09:58,561 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [550100097] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:58,561 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:58,561 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-21 03:09:58,562 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1669451238] [2022-02-21 03:09:58,562 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:58,563 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:58,563 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:58,563 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:58,569 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:58,569 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:58,570 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:58,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:58,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:09:58,571 INFO L87 Difference]: Start difference. First operand 101 states and 129 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:58,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,901 INFO L93 Difference]: Finished difference Result 261 states and 351 transitions. [2022-02-21 03:09:58,902 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:09:58,902 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:58,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:58,902 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:58,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 351 transitions. [2022-02-21 03:09:58,906 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:58,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 351 transitions. [2022-02-21 03:09:58,909 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 351 transitions. [2022-02-21 03:09:59,163 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 351 edges. 351 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,167 INFO L225 Difference]: With dead ends: 261 [2022-02-21 03:09:59,167 INFO L226 Difference]: Without dead ends: 163 [2022-02-21 03:09:59,167 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:59,168 INFO L933 BasicCegarLoop]: 111 mSDtfsCounter, 106 mSDsluCounter, 220 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 106 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:59,169 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [106 Valid, 331 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:09:59,169 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 163 states. [2022-02-21 03:09:59,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 163 to 150. [2022-02-21 03:09:59,181 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:59,181 INFO L82 GeneralOperation]: Start isEquivalent. First operand 163 states. Second operand has 150 states, 124 states have (on average 1.5806451612903225) internal successors, (196), 143 states have internal predecessors, (196), 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:59,182 INFO L74 IsIncluded]: Start isIncluded. First operand 163 states. Second operand has 150 states, 124 states have (on average 1.5806451612903225) internal successors, (196), 143 states have internal predecessors, (196), 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:59,182 INFO L87 Difference]: Start difference. First operand 163 states. Second operand has 150 states, 124 states have (on average 1.5806451612903225) internal successors, (196), 143 states have internal predecessors, (196), 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:59,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,189 INFO L93 Difference]: Finished difference Result 163 states and 211 transitions. [2022-02-21 03:09:59,189 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 211 transitions. [2022-02-21 03:09:59,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,195 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,196 INFO L74 IsIncluded]: Start isIncluded. First operand has 150 states, 124 states have (on average 1.5806451612903225) internal successors, (196), 143 states have internal predecessors, (196), 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 163 states. [2022-02-21 03:09:59,196 INFO L87 Difference]: Start difference. First operand has 150 states, 124 states have (on average 1.5806451612903225) internal successors, (196), 143 states have internal predecessors, (196), 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 163 states. [2022-02-21 03:09:59,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,203 INFO L93 Difference]: Finished difference Result 163 states and 211 transitions. [2022-02-21 03:09:59,203 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 211 transitions. [2022-02-21 03:09:59,203 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,204 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,204 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:59,204 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:59,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 150 states, 124 states have (on average 1.5806451612903225) internal successors, (196), 143 states have internal predecessors, (196), 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:59,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 204 transitions. [2022-02-21 03:09:59,209 INFO L78 Accepts]: Start accepts. Automaton has 150 states and 204 transitions. Word has length 9 [2022-02-21 03:09:59,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:59,210 INFO L470 AbstractCegarLoop]: Abstraction has 150 states and 204 transitions. [2022-02-21 03:09:59,210 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:59,211 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 204 transitions. [2022-02-21 03:09:59,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-21 03:09:59,212 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:59,212 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:59,212 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-21 03:09:59,212 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting base2fltErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:09:59,213 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:59,213 INFO L85 PathProgramCache]: Analyzing trace with hash -798824771, now seen corresponding path program 1 times [2022-02-21 03:09:59,213 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:59,213 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1912129919] [2022-02-21 03:09:59,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:59,214 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:59,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,265 INFO L290 TraceCheckUtils]: 0: Hoare triple {1510#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(22, 2);call #Ultimate.allocInit(12, 3); {1510#true} is VALID [2022-02-21 03:09:59,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {1510#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; {1510#true} is VALID [2022-02-21 03:09:59,266 INFO L272 TraceCheckUtils]: 2: Hoare triple {1510#true} call main_#t~ret22#1 := base2flt(0, 0); {1512#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:59,267 INFO L290 TraceCheckUtils]: 3: Hoare triple {1512#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {1513#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,267 INFO L290 TraceCheckUtils]: 4: Hoare triple {1513#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {1513#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {1513#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {1513#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,268 INFO L290 TraceCheckUtils]: 6: Hoare triple {1513#(= base2flt_~e 0)} assume !false; {1513#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,268 INFO L290 TraceCheckUtils]: 7: Hoare triple {1513#(= base2flt_~e 0)} assume !(~e <= -128); {1513#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,268 INFO L290 TraceCheckUtils]: 8: Hoare triple {1513#(= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {1513#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,269 INFO L290 TraceCheckUtils]: 9: Hoare triple {1513#(= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {1514#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:59,269 INFO L290 TraceCheckUtils]: 10: Hoare triple {1514#(<= (+ base2flt_~e 1) 0)} assume !(~m % 4294967296 < 16777216); {1514#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:59,270 INFO L290 TraceCheckUtils]: 11: Hoare triple {1514#(<= (+ base2flt_~e 1) 0)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {1514#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:59,270 INFO L290 TraceCheckUtils]: 12: Hoare triple {1514#(<= (+ base2flt_~e 1) 0)} assume !(128 + ~e <= 2147483647); {1511#false} is VALID [2022-02-21 03:09:59,270 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:59,271 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:59,271 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1912129919] [2022-02-21 03:09:59,271 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1912129919] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:59,271 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:59,271 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-21 03:09:59,272 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1332447614] [2022-02-21 03:09:59,272 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:59,272 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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 13 [2022-02-21 03:09:59,272 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:59,272 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,280 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,280 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:59,280 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:59,281 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:59,282 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-21 03:09:59,282 INFO L87 Difference]: Start difference. First operand 150 states and 204 transitions. Second operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,642 INFO L93 Difference]: Finished difference Result 185 states and 245 transitions. [2022-02-21 03:09:59,642 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:09:59,642 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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 13 [2022-02-21 03:09:59,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:59,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,648 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 245 transitions. [2022-02-21 03:09:59,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 245 transitions. [2022-02-21 03:09:59,653 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 245 transitions. [2022-02-21 03:09:59,794 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,797 INFO L225 Difference]: With dead ends: 185 [2022-02-21 03:09:59,797 INFO L226 Difference]: Without dead ends: 182 [2022-02-21 03:09:59,798 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:09:59,798 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 161 mSDsluCounter, 326 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 161 SdHoareTripleChecker+Valid, 444 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:59,799 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [161 Valid, 444 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:09:59,799 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 182 states. [2022-02-21 03:09:59,826 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 182 to 157. [2022-02-21 03:09:59,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:59,828 INFO L82 GeneralOperation]: Start isEquivalent. First operand 182 states. Second operand has 157 states, 131 states have (on average 1.5801526717557253) internal successors, (207), 150 states have internal predecessors, (207), 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:59,829 INFO L74 IsIncluded]: Start isIncluded. First operand 182 states. Second operand has 157 states, 131 states have (on average 1.5801526717557253) internal successors, (207), 150 states have internal predecessors, (207), 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:59,830 INFO L87 Difference]: Start difference. First operand 182 states. Second operand has 157 states, 131 states have (on average 1.5801526717557253) internal successors, (207), 150 states have internal predecessors, (207), 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:59,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,839 INFO L93 Difference]: Finished difference Result 182 states and 242 transitions. [2022-02-21 03:09:59,839 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 242 transitions. [2022-02-21 03:09:59,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,840 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 131 states have (on average 1.5801526717557253) internal successors, (207), 150 states have internal predecessors, (207), 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:59,841 INFO L87 Difference]: Start difference. First operand has 157 states, 131 states have (on average 1.5801526717557253) internal successors, (207), 150 states have internal predecessors, (207), 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:59,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,845 INFO L93 Difference]: Finished difference Result 182 states and 242 transitions. [2022-02-21 03:09:59,845 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 242 transitions. [2022-02-21 03:09:59,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,846 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:59,846 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:59,847 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 131 states have (on average 1.5801526717557253) internal successors, (207), 150 states have internal predecessors, (207), 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:59,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 215 transitions. [2022-02-21 03:09:59,850 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 215 transitions. Word has length 13 [2022-02-21 03:09:59,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:59,850 INFO L470 AbstractCegarLoop]: Abstraction has 157 states and 215 transitions. [2022-02-21 03:09:59,850 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,851 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 215 transitions. [2022-02-21 03:09:59,851 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-21 03:09:59,851 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:59,851 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:59,851 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-21 03:09:59,852 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting base2fltErr5ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:09:59,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:59,852 INFO L85 PathProgramCache]: Analyzing trace with hash 1006235996, now seen corresponding path program 1 times [2022-02-21 03:09:59,852 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:59,853 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1959209981] [2022-02-21 03:09:59,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:59,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:59,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,888 INFO L290 TraceCheckUtils]: 0: Hoare triple {2266#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(22, 2);call #Ultimate.allocInit(12, 3); {2266#true} is VALID [2022-02-21 03:09:59,888 INFO L290 TraceCheckUtils]: 1: Hoare triple {2266#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; {2266#true} is VALID [2022-02-21 03:09:59,889 INFO L272 TraceCheckUtils]: 2: Hoare triple {2266#true} call main_#t~ret22#1 := base2flt(0, 0); {2268#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:59,889 INFO L290 TraceCheckUtils]: 3: Hoare triple {2268#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2269#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,889 INFO L290 TraceCheckUtils]: 4: Hoare triple {2269#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {2269#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,890 INFO L290 TraceCheckUtils]: 5: Hoare triple {2269#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {2269#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,890 INFO L290 TraceCheckUtils]: 6: Hoare triple {2269#(= base2flt_~e 0)} assume !false; {2269#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {2269#(= base2flt_~e 0)} assume !(~e <= -128); {2269#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,891 INFO L290 TraceCheckUtils]: 8: Hoare triple {2269#(= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {2269#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:59,891 INFO L290 TraceCheckUtils]: 9: Hoare triple {2269#(= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {2270#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,891 INFO L290 TraceCheckUtils]: 10: Hoare triple {2270#(<= 0 (+ base2flt_~e 1))} assume !(~m % 4294967296 < 16777216); {2270#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,892 INFO L290 TraceCheckUtils]: 11: Hoare triple {2270#(<= 0 (+ base2flt_~e 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {2270#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,892 INFO L290 TraceCheckUtils]: 12: Hoare triple {2270#(<= 0 (+ base2flt_~e 1))} assume 128 + ~e <= 2147483647; {2270#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:59,892 INFO L290 TraceCheckUtils]: 13: Hoare triple {2270#(<= 0 (+ base2flt_~e 1))} assume !(128 + ~e >= -2147483648); {2267#false} is VALID [2022-02-21 03:09:59,893 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:59,893 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:59,893 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1959209981] [2022-02-21 03:09:59,893 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1959209981] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:59,893 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:59,894 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-21 03:09:59,894 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [993637549] [2022-02-21 03:09:59,894 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:59,894 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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 14 [2022-02-21 03:09:59,895 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:59,895 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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:59,903 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,903 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:59,903 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:59,904 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:59,904 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-21 03:09:59,904 INFO L87 Difference]: Start difference. First operand 157 states and 215 transitions. Second operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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:10:00,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,235 INFO L93 Difference]: Finished difference Result 346 states and 474 transitions. [2022-02-21 03:10:00,236 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:00,236 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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 14 [2022-02-21 03:10:00,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:00,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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:10:00,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 376 transitions. [2022-02-21 03:10:00,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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:10:00,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 376 transitions. [2022-02-21 03:10:00,243 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 376 transitions. [2022-02-21 03:10:00,481 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 376 edges. 376 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:00,484 INFO L225 Difference]: With dead ends: 346 [2022-02-21 03:10:00,484 INFO L226 Difference]: Without dead ends: 192 [2022-02-21 03:10:00,484 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:10:00,485 INFO L933 BasicCegarLoop]: 109 mSDtfsCounter, 165 mSDsluCounter, 326 mSDsCounter, 0 mSdLazyCounter, 84 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 165 SdHoareTripleChecker+Valid, 435 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 84 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:00,486 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [165 Valid, 435 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 84 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:00,486 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 192 states. [2022-02-21 03:10:00,496 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 192 to 161. [2022-02-21 03:10:00,497 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:00,497 INFO L82 GeneralOperation]: Start isEquivalent. First operand 192 states. Second operand has 161 states, 135 states have (on average 1.5555555555555556) internal successors, (210), 154 states have internal predecessors, (210), 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:10:00,498 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand has 161 states, 135 states have (on average 1.5555555555555556) internal successors, (210), 154 states have internal predecessors, (210), 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:10:00,498 INFO L87 Difference]: Start difference. First operand 192 states. Second operand has 161 states, 135 states have (on average 1.5555555555555556) internal successors, (210), 154 states have internal predecessors, (210), 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:10:00,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,502 INFO L93 Difference]: Finished difference Result 192 states and 252 transitions. [2022-02-21 03:10:00,502 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 252 transitions. [2022-02-21 03:10:00,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,503 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 135 states have (on average 1.5555555555555556) internal successors, (210), 154 states have internal predecessors, (210), 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 192 states. [2022-02-21 03:10:00,504 INFO L87 Difference]: Start difference. First operand has 161 states, 135 states have (on average 1.5555555555555556) internal successors, (210), 154 states have internal predecessors, (210), 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 192 states. [2022-02-21 03:10:00,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,508 INFO L93 Difference]: Finished difference Result 192 states and 252 transitions. [2022-02-21 03:10:00,508 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 252 transitions. [2022-02-21 03:10:00,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:00,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:00,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 135 states have (on average 1.5555555555555556) internal successors, (210), 154 states have internal predecessors, (210), 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:10:00,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 218 transitions. [2022-02-21 03:10:00,513 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 218 transitions. Word has length 14 [2022-02-21 03:10:00,513 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:00,513 INFO L470 AbstractCegarLoop]: Abstraction has 161 states and 218 transitions. [2022-02-21 03:10:00,513 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 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:10:00,514 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 218 transitions. [2022-02-21 03:10:00,514 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-21 03:10:00,514 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:00,514 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:00,514 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-21 03:10:00,515 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:00,515 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:00,515 INFO L85 PathProgramCache]: Analyzing trace with hash -490188718, now seen corresponding path program 1 times [2022-02-21 03:10:00,515 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:00,515 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1708019140] [2022-02-21 03:10:00,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:00,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,555 INFO L290 TraceCheckUtils]: 0: Hoare triple {3227#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(22, 2);call #Ultimate.allocInit(12, 3); {3227#true} is VALID [2022-02-21 03:10:00,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {3227#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; {3227#true} is VALID [2022-02-21 03:10:00,555 INFO L272 TraceCheckUtils]: 2: Hoare triple {3227#true} call main_#t~ret22#1 := base2flt(0, 0); {3227#true} is VALID [2022-02-21 03:10:00,556 INFO L290 TraceCheckUtils]: 3: Hoare triple {3227#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3227#true} is VALID [2022-02-21 03:10:00,556 INFO L290 TraceCheckUtils]: 4: Hoare triple {3227#true} assume !(0 == ~m % 4294967296); {3227#true} is VALID [2022-02-21 03:10:00,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {3227#true} assume !(~m % 4294967296 < 16777216); {3227#true} is VALID [2022-02-21 03:10:00,556 INFO L290 TraceCheckUtils]: 6: Hoare triple {3227#true} assume !false; {3227#true} is VALID [2022-02-21 03:10:00,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {3227#true} assume ~m % 4294967296 >= 33554432; {3227#true} is VALID [2022-02-21 03:10:00,556 INFO L290 TraceCheckUtils]: 8: Hoare triple {3227#true} assume !(~e >= 127); {3227#true} is VALID [2022-02-21 03:10:00,557 INFO L290 TraceCheckUtils]: 9: Hoare triple {3227#true} assume 1 + ~e <= 2147483647; {3227#true} is VALID [2022-02-21 03:10:00,557 INFO L290 TraceCheckUtils]: 10: Hoare triple {3227#true} assume 1 + ~e >= -2147483648;~e := 1 + ~e;~m := ~m / 2; {3227#true} is VALID [2022-02-21 03:10:00,557 INFO L290 TraceCheckUtils]: 11: Hoare triple {3227#true} assume !false; {3227#true} is VALID [2022-02-21 03:10:00,557 INFO L290 TraceCheckUtils]: 12: Hoare triple {3227#true} assume ~m % 4294967296 >= 33554432; {3227#true} is VALID [2022-02-21 03:10:00,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {3227#true} assume !(~e >= 127); {3229#(<= base2flt_~e 126)} is VALID [2022-02-21 03:10:00,559 INFO L290 TraceCheckUtils]: 14: Hoare triple {3229#(<= base2flt_~e 126)} assume !(1 + ~e <= 2147483647); {3228#false} is VALID [2022-02-21 03:10:00,559 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-21 03:10:00,559 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:00,559 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1708019140] [2022-02-21 03:10:00,560 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1708019140] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:00,560 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:00,560 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-21 03:10:00,560 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1835404052] [2022-02-21 03:10:00,560 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:00,560 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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 15 [2022-02-21 03:10:00,560 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:00,560 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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:10:00,567 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:00,568 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-21 03:10:00,568 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:00,568 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-21 03:10:00,568 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-21 03:10:00,568 INFO L87 Difference]: Start difference. First operand 161 states and 218 transitions. Second operand has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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:10:00,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,694 INFO L93 Difference]: Finished difference Result 169 states and 228 transitions. [2022-02-21 03:10:00,694 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-21 03:10:00,694 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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 15 [2022-02-21 03:10:00,694 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:00,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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:10:00,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 136 transitions. [2022-02-21 03:10:00,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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:10:00,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 136 transitions. [2022-02-21 03:10:00,697 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 136 transitions. [2022-02-21 03:10:00,781 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:00,783 INFO L225 Difference]: With dead ends: 169 [2022-02-21 03:10:00,783 INFO L226 Difference]: Without dead ends: 168 [2022-02-21 03:10:00,784 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-21 03:10:00,784 INFO L933 BasicCegarLoop]: 132 mSDtfsCounter, 5 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:00,785 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 236 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:10:00,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-02-21 03:10:00,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 159. [2022-02-21 03:10:00,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:00,795 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 159 states, 134 states have (on average 1.544776119402985) internal successors, (207), 152 states have internal predecessors, (207), 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:10:00,796 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 159 states, 134 states have (on average 1.544776119402985) internal successors, (207), 152 states have internal predecessors, (207), 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:10:00,796 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 159 states, 134 states have (on average 1.544776119402985) internal successors, (207), 152 states have internal predecessors, (207), 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:10:00,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,800 INFO L93 Difference]: Finished difference Result 168 states and 226 transitions. [2022-02-21 03:10:00,800 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 226 transitions. [2022-02-21 03:10:00,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,801 INFO L74 IsIncluded]: Start isIncluded. First operand has 159 states, 134 states have (on average 1.544776119402985) internal successors, (207), 152 states have internal predecessors, (207), 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 168 states. [2022-02-21 03:10:00,801 INFO L87 Difference]: Start difference. First operand has 159 states, 134 states have (on average 1.544776119402985) internal successors, (207), 152 states have internal predecessors, (207), 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 168 states. [2022-02-21 03:10:00,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,806 INFO L93 Difference]: Finished difference Result 168 states and 226 transitions. [2022-02-21 03:10:00,806 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 226 transitions. [2022-02-21 03:10:00,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,806 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,806 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:00,807 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:00,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 159 states, 134 states have (on average 1.544776119402985) internal successors, (207), 152 states have internal predecessors, (207), 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:10:00,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 159 states to 159 states and 215 transitions. [2022-02-21 03:10:00,820 INFO L78 Accepts]: Start accepts. Automaton has 159 states and 215 transitions. Word has length 15 [2022-02-21 03:10:00,821 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:00,821 INFO L470 AbstractCegarLoop]: Abstraction has 159 states and 215 transitions. [2022-02-21 03:10:00,821 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 6.0) internal successors, (12), 3 states have internal predecessors, (12), 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:10:00,821 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 215 transitions. [2022-02-21 03:10:00,822 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-21 03:10:00,822 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:00,822 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:00,822 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-21 03:10:00,822 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting base2fltErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:00,823 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:00,823 INFO L85 PathProgramCache]: Analyzing trace with hash -490186458, now seen corresponding path program 1 times [2022-02-21 03:10:00,823 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:00,824 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [321211083] [2022-02-21 03:10:00,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:00,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {3936#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(22, 2);call #Ultimate.allocInit(12, 3); {3936#true} is VALID [2022-02-21 03:10:00,872 INFO L290 TraceCheckUtils]: 1: Hoare triple {3936#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; {3936#true} is VALID [2022-02-21 03:10:00,872 INFO L272 TraceCheckUtils]: 2: Hoare triple {3936#true} call main_#t~ret22#1 := base2flt(0, 0); {3938#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 3: Hoare triple {3938#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 4: Hoare triple {3939#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,873 INFO L290 TraceCheckUtils]: 5: Hoare triple {3939#(= base2flt_~e 0)} assume !(~m % 4294967296 < 16777216); {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,874 INFO L290 TraceCheckUtils]: 6: Hoare triple {3939#(= base2flt_~e 0)} assume !false; {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,874 INFO L290 TraceCheckUtils]: 7: Hoare triple {3939#(= base2flt_~e 0)} assume ~m % 4294967296 >= 33554432; {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,874 INFO L290 TraceCheckUtils]: 8: Hoare triple {3939#(= base2flt_~e 0)} assume !(~e >= 127); {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,875 INFO L290 TraceCheckUtils]: 9: Hoare triple {3939#(= base2flt_~e 0)} assume 1 + ~e <= 2147483647; {3939#(= base2flt_~e 0)} is VALID [2022-02-21 03:10:00,875 INFO L290 TraceCheckUtils]: 10: Hoare triple {3939#(= base2flt_~e 0)} assume 1 + ~e >= -2147483648;~e := 1 + ~e;~m := ~m / 2; {3940#(<= base2flt_~e 1)} is VALID [2022-02-21 03:10:00,875 INFO L290 TraceCheckUtils]: 11: Hoare triple {3940#(<= base2flt_~e 1)} assume !false; {3940#(<= base2flt_~e 1)} is VALID [2022-02-21 03:10:00,876 INFO L290 TraceCheckUtils]: 12: Hoare triple {3940#(<= base2flt_~e 1)} assume !(~m % 4294967296 >= 33554432); {3940#(<= base2flt_~e 1)} is VALID [2022-02-21 03:10:00,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {3940#(<= base2flt_~e 1)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {3940#(<= base2flt_~e 1)} is VALID [2022-02-21 03:10:00,876 INFO L290 TraceCheckUtils]: 14: Hoare triple {3940#(<= base2flt_~e 1)} assume !(128 + ~e <= 2147483647); {3937#false} is VALID [2022-02-21 03:10:00,877 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:10:00,877 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:00,877 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [321211083] [2022-02-21 03:10:00,877 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [321211083] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:00,877 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1902287520] [2022-02-21 03:10:00,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,877 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:00,877 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:00,883 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:10:00,891 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:10:00,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,931 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-21 03:10:00,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,944 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:01,047 INFO L290 TraceCheckUtils]: 0: Hoare triple {3936#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(22, 2);call #Ultimate.allocInit(12, 3); {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L290 TraceCheckUtils]: 1: Hoare triple {3936#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; {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L272 TraceCheckUtils]: 2: Hoare triple {3936#true} call main_#t~ret22#1 := base2flt(0, 0); {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L290 TraceCheckUtils]: 3: Hoare triple {3936#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L290 TraceCheckUtils]: 4: Hoare triple {3936#true} assume !(0 == ~m % 4294967296); {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L290 TraceCheckUtils]: 5: Hoare triple {3936#true} assume !(~m % 4294967296 < 16777216); {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L290 TraceCheckUtils]: 6: Hoare triple {3936#true} assume !false; {3936#true} is VALID [2022-02-21 03:10:01,048 INFO L290 TraceCheckUtils]: 7: Hoare triple {3936#true} assume ~m % 4294967296 >= 33554432; {3936#true} is VALID [2022-02-21 03:10:01,049 INFO L290 TraceCheckUtils]: 8: Hoare triple {3936#true} assume !(~e >= 127); {3968#(not (<= 127 base2flt_~e))} is VALID [2022-02-21 03:10:01,049 INFO L290 TraceCheckUtils]: 9: Hoare triple {3968#(not (<= 127 base2flt_~e))} assume 1 + ~e <= 2147483647; {3968#(not (<= 127 base2flt_~e))} is VALID [2022-02-21 03:10:01,050 INFO L290 TraceCheckUtils]: 10: Hoare triple {3968#(not (<= 127 base2flt_~e))} assume 1 + ~e >= -2147483648;~e := 1 + ~e;~m := ~m / 2; {3975#(< base2flt_~e 128)} is VALID [2022-02-21 03:10:01,050 INFO L290 TraceCheckUtils]: 11: Hoare triple {3975#(< base2flt_~e 128)} assume !false; {3975#(< base2flt_~e 128)} is VALID [2022-02-21 03:10:01,051 INFO L290 TraceCheckUtils]: 12: Hoare triple {3975#(< base2flt_~e 128)} assume !(~m % 4294967296 >= 33554432); {3975#(< base2flt_~e 128)} is VALID [2022-02-21 03:10:01,051 INFO L290 TraceCheckUtils]: 13: Hoare triple {3975#(< base2flt_~e 128)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {3975#(< base2flt_~e 128)} is VALID [2022-02-21 03:10:01,052 INFO L290 TraceCheckUtils]: 14: Hoare triple {3975#(< base2flt_~e 128)} assume !(128 + ~e <= 2147483647); {3937#false} is VALID [2022-02-21 03:10:01,052 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:10:01,052 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:01,052 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1902287520] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:01,052 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:01,053 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [4] total 6 [2022-02-21 03:10:01,053 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1662333678] [2022-02-21 03:10:01,053 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:01,053 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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 15 [2022-02-21 03:10:01,054 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:01,054 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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:10:01,064 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:01,064 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:10:01,064 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:01,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:10:01,065 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:10:01,065 INFO L87 Difference]: Start difference. First operand 159 states and 215 transitions. Second operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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:10:01,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:01,330 INFO L93 Difference]: Finished difference Result 197 states and 270 transitions. [2022-02-21 03:10:01,330 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:10:01,331 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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 15 [2022-02-21 03:10:01,331 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:01,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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:10:01,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 171 transitions. [2022-02-21 03:10:01,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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:10:01,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 171 transitions. [2022-02-21 03:10:01,334 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 171 transitions. [2022-02-21 03:10:01,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 171 edges. 171 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:01,449 INFO L225 Difference]: With dead ends: 197 [2022-02-21 03:10:01,449 INFO L226 Difference]: Without dead ends: 195 [2022-02-21 03:10:01,450 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:10:01,450 INFO L933 BasicCegarLoop]: 147 mSDtfsCounter, 26 mSDsluCounter, 226 mSDsCounter, 0 mSdLazyCounter, 63 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 373 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 63 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:01,450 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 373 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 63 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:01,451 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-02-21 03:10:01,469 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 161. [2022-02-21 03:10:01,470 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:01,470 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand has 161 states, 136 states have (on average 1.536764705882353) internal successors, (209), 154 states have internal predecessors, (209), 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:10:01,471 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand has 161 states, 136 states have (on average 1.536764705882353) internal successors, (209), 154 states have internal predecessors, (209), 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:10:01,471 INFO L87 Difference]: Start difference. First operand 195 states. Second operand has 161 states, 136 states have (on average 1.536764705882353) internal successors, (209), 154 states have internal predecessors, (209), 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:10:01,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:01,474 INFO L93 Difference]: Finished difference Result 195 states and 266 transitions. [2022-02-21 03:10:01,475 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 266 transitions. [2022-02-21 03:10:01,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:01,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:01,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 136 states have (on average 1.536764705882353) internal successors, (209), 154 states have internal predecessors, (209), 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 195 states. [2022-02-21 03:10:01,476 INFO L87 Difference]: Start difference. First operand has 161 states, 136 states have (on average 1.536764705882353) internal successors, (209), 154 states have internal predecessors, (209), 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 195 states. [2022-02-21 03:10:01,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:01,479 INFO L93 Difference]: Finished difference Result 195 states and 266 transitions. [2022-02-21 03:10:01,480 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 266 transitions. [2022-02-21 03:10:01,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:01,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:01,480 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:01,480 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:01,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 136 states have (on average 1.536764705882353) internal successors, (209), 154 states have internal predecessors, (209), 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:10:01,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 217 transitions. [2022-02-21 03:10:01,483 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 217 transitions. Word has length 15 [2022-02-21 03:10:01,483 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:01,484 INFO L470 AbstractCegarLoop]: Abstraction has 161 states and 217 transitions. [2022-02-21 03:10:01,484 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 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:10:01,484 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 217 transitions. [2022-02-21 03:10:01,484 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-21 03:10:01,484 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:01,485 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:01,504 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:10:01,695 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable5 [2022-02-21 03:10:01,696 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting base2fltErr5ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:01,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:01,696 INFO L85 PathProgramCache]: Analyzing trace with hash -510502314, now seen corresponding path program 1 times [2022-02-21 03:10:01,696 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:01,696 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1069769123] [2022-02-21 03:10:01,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:01,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:01,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:01,738 INFO L290 TraceCheckUtils]: 0: Hoare triple {4780#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(22, 2);call #Ultimate.allocInit(12, 3); {4780#true} is VALID [2022-02-21 03:10:01,738 INFO L290 TraceCheckUtils]: 1: Hoare triple {4780#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; {4780#true} is VALID [2022-02-21 03:10:01,738 INFO L272 TraceCheckUtils]: 2: Hoare triple {4780#true} call main_#t~ret22#1 := base2flt(0, 0); {4780#true} is VALID [2022-02-21 03:10:01,738 INFO L290 TraceCheckUtils]: 3: Hoare triple {4780#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4780#true} is VALID [2022-02-21 03:10:01,739 INFO L290 TraceCheckUtils]: 4: Hoare triple {4780#true} assume !(0 == ~m % 4294967296); {4780#true} is VALID [2022-02-21 03:10:01,739 INFO L290 TraceCheckUtils]: 5: Hoare triple {4780#true} assume ~m % 4294967296 < 16777216; {4780#true} is VALID [2022-02-21 03:10:01,755 INFO L290 TraceCheckUtils]: 6: Hoare triple {4780#true} assume !false; {4780#true} is VALID [2022-02-21 03:10:01,755 INFO L290 TraceCheckUtils]: 7: Hoare triple {4780#true} assume !(~e <= -128); {4780#true} is VALID [2022-02-21 03:10:01,755 INFO L290 TraceCheckUtils]: 8: Hoare triple {4780#true} assume ~e - 1 <= 2147483647; {4780#true} is VALID [2022-02-21 03:10:01,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {4780#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {4780#true} is VALID [2022-02-21 03:10:01,756 INFO L290 TraceCheckUtils]: 10: Hoare triple {4780#true} assume ~m % 4294967296 < 16777216; {4780#true} is VALID [2022-02-21 03:10:01,756 INFO L290 TraceCheckUtils]: 11: Hoare triple {4780#true} assume !false; {4780#true} is VALID [2022-02-21 03:10:01,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {4780#true} assume !(~e <= -128); {4782#(<= 0 (+ base2flt_~e 127))} is VALID [2022-02-21 03:10:01,759 INFO L290 TraceCheckUtils]: 13: Hoare triple {4782#(<= 0 (+ base2flt_~e 127))} assume ~e - 1 <= 2147483647; {4782#(<= 0 (+ base2flt_~e 127))} is VALID [2022-02-21 03:10:01,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {4782#(<= 0 (+ base2flt_~e 127))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {4783#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,760 INFO L290 TraceCheckUtils]: 15: Hoare triple {4783#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {4783#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,761 INFO L290 TraceCheckUtils]: 16: Hoare triple {4783#(<= 0 (+ 128 base2flt_~e))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {4783#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,763 INFO L290 TraceCheckUtils]: 17: Hoare triple {4783#(<= 0 (+ 128 base2flt_~e))} assume 128 + ~e <= 2147483647; {4783#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {4783#(<= 0 (+ 128 base2flt_~e))} assume !(128 + ~e >= -2147483648); {4781#false} is VALID [2022-02-21 03:10:01,763 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-21 03:10:01,763 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:01,764 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1069769123] [2022-02-21 03:10:01,764 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1069769123] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:01,764 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:01,764 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-21 03:10:01,764 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [614454138] [2022-02-21 03:10:01,764 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:01,765 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, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-21 03:10:01,765 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:01,765 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, (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:10:01,775 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:01,775 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:10:01,775 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:01,775 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:10:01,776 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:10:01,776 INFO L87 Difference]: Start difference. First operand 161 states and 217 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, (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:10:02,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,049 INFO L93 Difference]: Finished difference Result 203 states and 279 transitions. [2022-02-21 03:10:02,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:10:02,050 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, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-21 03:10:02,050 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:02,050 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, (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:10:02,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 168 transitions. [2022-02-21 03:10:02,051 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, (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:10:02,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 168 transitions. [2022-02-21 03:10:02,052 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 168 transitions. [2022-02-21 03:10:02,161 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 168 edges. 168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:02,164 INFO L225 Difference]: With dead ends: 203 [2022-02-21 03:10:02,164 INFO L226 Difference]: Without dead ends: 200 [2022-02-21 03:10:02,165 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:10:02,165 INFO L933 BasicCegarLoop]: 135 mSDtfsCounter, 27 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 352 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:02,165 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 352 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:10:02,166 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-02-21 03:10:02,184 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 166. [2022-02-21 03:10:02,185 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:02,185 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 166 states, 142 states have (on average 1.528169014084507) internal successors, (217), 159 states have internal predecessors, (217), 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:10:02,186 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 166 states, 142 states have (on average 1.528169014084507) internal successors, (217), 159 states have internal predecessors, (217), 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:10:02,186 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 166 states, 142 states have (on average 1.528169014084507) internal successors, (217), 159 states have internal predecessors, (217), 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:10:02,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,191 INFO L93 Difference]: Finished difference Result 200 states and 273 transitions. [2022-02-21 03:10:02,191 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 273 transitions. [2022-02-21 03:10:02,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:02,193 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:02,194 INFO L74 IsIncluded]: Start isIncluded. First operand has 166 states, 142 states have (on average 1.528169014084507) internal successors, (217), 159 states have internal predecessors, (217), 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 200 states. [2022-02-21 03:10:02,195 INFO L87 Difference]: Start difference. First operand has 166 states, 142 states have (on average 1.528169014084507) internal successors, (217), 159 states have internal predecessors, (217), 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 200 states. [2022-02-21 03:10:02,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,201 INFO L93 Difference]: Finished difference Result 200 states and 273 transitions. [2022-02-21 03:10:02,201 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 273 transitions. [2022-02-21 03:10:02,201 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:02,201 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:02,201 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:02,202 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:02,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 166 states, 142 states have (on average 1.528169014084507) internal successors, (217), 159 states have internal predecessors, (217), 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:10:02,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 166 states to 166 states and 225 transitions. [2022-02-21 03:10:02,205 INFO L78 Accepts]: Start accepts. Automaton has 166 states and 225 transitions. Word has length 19 [2022-02-21 03:10:02,205 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:02,205 INFO L470 AbstractCegarLoop]: Abstraction has 166 states and 225 transitions. [2022-02-21 03:10:02,205 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, (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:10:02,206 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 225 transitions. [2022-02-21 03:10:02,206 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-21 03:10:02,206 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:02,206 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:02,206 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-21 03:10:02,207 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:02,207 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:02,207 INFO L85 PathProgramCache]: Analyzing trace with hash -1172644954, now seen corresponding path program 1 times [2022-02-21 03:10:02,207 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:02,207 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1048367341] [2022-02-21 03:10:02,207 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:02,208 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:02,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,256 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:02,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,265 INFO L290 TraceCheckUtils]: 0: Hoare triple {5618#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {5603#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5603#true} is VALID [2022-02-21 03:10:02,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {5603#true} #res := ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,266 INFO L290 TraceCheckUtils]: 3: Hoare triple {5603#true} assume true; {5603#true} is VALID [2022-02-21 03:10:02,266 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {5603#true} {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #377#return; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,267 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:02,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,280 INFO L290 TraceCheckUtils]: 0: Hoare triple {5618#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,280 INFO L290 TraceCheckUtils]: 1: Hoare triple {5603#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5603#true} is VALID [2022-02-21 03:10:02,280 INFO L290 TraceCheckUtils]: 2: Hoare triple {5603#true} #res := ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,281 INFO L290 TraceCheckUtils]: 3: Hoare triple {5603#true} assume true; {5603#true} is VALID [2022-02-21 03:10:02,282 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {5603#true} {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #379#return; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,282 INFO L290 TraceCheckUtils]: 0: Hoare triple {5603#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(22, 2);call #Ultimate.allocInit(12, 3); {5603#true} is VALID [2022-02-21 03:10:02,282 INFO L290 TraceCheckUtils]: 1: Hoare triple {5603#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; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,284 INFO L272 TraceCheckUtils]: 2: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {5618#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:02,284 INFO L290 TraceCheckUtils]: 3: Hoare triple {5618#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,299 INFO L290 TraceCheckUtils]: 4: Hoare triple {5603#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5603#true} is VALID [2022-02-21 03:10:02,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {5603#true} #res := ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,302 INFO L290 TraceCheckUtils]: 6: Hoare triple {5603#true} assume true; {5603#true} is VALID [2022-02-21 03:10:02,302 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5603#true} {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #377#return; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,303 INFO L290 TraceCheckUtils]: 8: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,303 INFO L272 TraceCheckUtils]: 9: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {5618#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:02,303 INFO L290 TraceCheckUtils]: 10: Hoare triple {5618#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,304 INFO L290 TraceCheckUtils]: 11: Hoare triple {5603#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5603#true} is VALID [2022-02-21 03:10:02,304 INFO L290 TraceCheckUtils]: 12: Hoare triple {5603#true} #res := ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,304 INFO L290 TraceCheckUtils]: 13: Hoare triple {5603#true} assume true; {5603#true} is VALID [2022-02-21 03:10:02,305 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5603#true} {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #379#return; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,306 INFO L290 TraceCheckUtils]: 15: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,306 INFO L272 TraceCheckUtils]: 16: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5616#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:02,307 INFO L290 TraceCheckUtils]: 17: Hoare triple {5616#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,307 INFO L290 TraceCheckUtils]: 18: Hoare triple {5617#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,308 INFO L290 TraceCheckUtils]: 19: Hoare triple {5617#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,308 INFO L290 TraceCheckUtils]: 20: Hoare triple {5617#(<= base2flt_~e 127)} assume !false; {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,308 INFO L290 TraceCheckUtils]: 21: Hoare triple {5617#(<= base2flt_~e 127)} assume !(~e <= -128); {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {5617#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {5604#false} is VALID [2022-02-21 03:10:02,309 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:02,310 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:02,310 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1048367341] [2022-02-21 03:10:02,310 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1048367341] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:02,310 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1304276142] [2022-02-21 03:10:02,310 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:02,310 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:02,310 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:02,311 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:10:02,313 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:10:02,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,364 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:02,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,382 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:02,477 INFO L290 TraceCheckUtils]: 0: Hoare triple {5603#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(22, 2);call #Ultimate.allocInit(12, 3); {5603#true} is VALID [2022-02-21 03:10:02,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {5603#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; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,478 INFO L272 TraceCheckUtils]: 2: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {5603#true} is VALID [2022-02-21 03:10:02,478 INFO L290 TraceCheckUtils]: 3: Hoare triple {5603#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,478 INFO L290 TraceCheckUtils]: 4: Hoare triple {5603#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5603#true} is VALID [2022-02-21 03:10:02,478 INFO L290 TraceCheckUtils]: 5: Hoare triple {5603#true} #res := ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,478 INFO L290 TraceCheckUtils]: 6: Hoare triple {5603#true} assume true; {5603#true} is VALID [2022-02-21 03:10:02,479 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5603#true} {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #377#return; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,479 INFO L290 TraceCheckUtils]: 8: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,479 INFO L272 TraceCheckUtils]: 9: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {5603#true} is VALID [2022-02-21 03:10:02,479 INFO L290 TraceCheckUtils]: 10: Hoare triple {5603#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,479 INFO L290 TraceCheckUtils]: 11: Hoare triple {5603#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5603#true} is VALID [2022-02-21 03:10:02,480 INFO L290 TraceCheckUtils]: 12: Hoare triple {5603#true} #res := ~__retres4~0; {5603#true} is VALID [2022-02-21 03:10:02,480 INFO L290 TraceCheckUtils]: 13: Hoare triple {5603#true} assume true; {5603#true} is VALID [2022-02-21 03:10:02,480 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5603#true} {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #379#return; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,481 INFO L290 TraceCheckUtils]: 15: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:10:02,481 INFO L272 TraceCheckUtils]: 16: Hoare triple {5605#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5616#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:02,481 INFO L290 TraceCheckUtils]: 17: Hoare triple {5616#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,482 INFO L290 TraceCheckUtils]: 18: Hoare triple {5617#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,482 INFO L290 TraceCheckUtils]: 19: Hoare triple {5617#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,482 INFO L290 TraceCheckUtils]: 20: Hoare triple {5617#(<= base2flt_~e 127)} assume !false; {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,483 INFO L290 TraceCheckUtils]: 21: Hoare triple {5617#(<= base2flt_~e 127)} assume !(~e <= -128); {5617#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:02,483 INFO L290 TraceCheckUtils]: 22: Hoare triple {5617#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {5604#false} is VALID [2022-02-21 03:10:02,483 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:02,483 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:02,484 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1304276142] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:02,484 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:02,484 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:02,484 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1540870711] [2022-02-21 03:10:02,484 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:02,485 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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 23 [2022-02-21 03:10:02,486 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:02,486 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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:02,497 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:10:02,497 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:02,497 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:02,497 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:02,498 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:02,498 INFO L87 Difference]: Start difference. First operand 166 states and 225 transitions. Second operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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:02,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,823 INFO L93 Difference]: Finished difference Result 248 states and 344 transitions. [2022-02-21 03:10:02,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:02,823 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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 23 [2022-02-21 03:10:02,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:02,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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:02,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 212 transitions. [2022-02-21 03:10:02,825 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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:02,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 212 transitions. [2022-02-21 03:10:02,826 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 212 transitions. [2022-02-21 03:10:02,965 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 212 edges. 212 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:02,968 INFO L225 Difference]: With dead ends: 248 [2022-02-21 03:10:02,968 INFO L226 Difference]: Without dead ends: 245 [2022-02-21 03:10:02,968 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 27 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:02,969 INFO L933 BasicCegarLoop]: 102 mSDtfsCounter, 182 mSDsluCounter, 247 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 185 SdHoareTripleChecker+Valid, 349 SdHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:02,969 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [185 Valid, 349 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:02,969 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 245 states. [2022-02-21 03:10:02,999 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 245 to 203. [2022-02-21 03:10:02,999 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:03,000 INFO L82 GeneralOperation]: Start isEquivalent. First operand 245 states. Second operand has 203 states, 178 states have (on average 1.5393258426966292) internal successors, (274), 195 states have internal predecessors, (274), 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,000 INFO L74 IsIncluded]: Start isIncluded. First operand 245 states. Second operand has 203 states, 178 states have (on average 1.5393258426966292) internal successors, (274), 195 states have internal predecessors, (274), 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,001 INFO L87 Difference]: Start difference. First operand 245 states. Second operand has 203 states, 178 states have (on average 1.5393258426966292) internal successors, (274), 195 states have internal predecessors, (274), 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,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:03,005 INFO L93 Difference]: Finished difference Result 245 states and 339 transitions. [2022-02-21 03:10:03,005 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 339 transitions. [2022-02-21 03:10:03,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:03,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:03,007 INFO L74 IsIncluded]: Start isIncluded. First operand has 203 states, 178 states have (on average 1.5393258426966292) internal successors, (274), 195 states have internal predecessors, (274), 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 245 states. [2022-02-21 03:10:03,007 INFO L87 Difference]: Start difference. First operand has 203 states, 178 states have (on average 1.5393258426966292) internal successors, (274), 195 states have internal predecessors, (274), 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 245 states. [2022-02-21 03:10:03,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:03,011 INFO L93 Difference]: Finished difference Result 245 states and 339 transitions. [2022-02-21 03:10:03,011 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 339 transitions. [2022-02-21 03:10:03,011 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:03,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:03,012 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:03,012 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:03,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 203 states, 178 states have (on average 1.5393258426966292) internal successors, (274), 195 states have internal predecessors, (274), 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,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 203 states to 203 states and 282 transitions. [2022-02-21 03:10:03,015 INFO L78 Accepts]: Start accepts. Automaton has 203 states and 282 transitions. Word has length 23 [2022-02-21 03:10:03,016 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:03,016 INFO L470 AbstractCegarLoop]: Abstraction has 203 states and 282 transitions. [2022-02-21 03:10:03,016 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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,016 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 282 transitions. [2022-02-21 03:10:03,016 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-21 03:10:03,017 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:03,017 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] [2022-02-21 03:10:03,042 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:10:03,230 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable7 [2022-02-21 03:10:03,230 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting base2fltErr3ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:03,231 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:03,231 INFO L85 PathProgramCache]: Analyzing trace with hash -742919346, now seen corresponding path program 1 times [2022-02-21 03:10:03,231 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:03,231 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2118856052] [2022-02-21 03:10:03,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:03,231 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:03,240 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,272 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:03,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,285 INFO L290 TraceCheckUtils]: 0: Hoare triple {6706#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,285 INFO L290 TraceCheckUtils]: 1: Hoare triple {6691#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6691#true} is VALID [2022-02-21 03:10:03,286 INFO L290 TraceCheckUtils]: 2: Hoare triple {6691#true} #res := ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,286 INFO L290 TraceCheckUtils]: 3: Hoare triple {6691#true} assume true; {6691#true} is VALID [2022-02-21 03:10:03,286 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {6691#true} {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #377#return; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,287 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:03,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,295 INFO L290 TraceCheckUtils]: 0: Hoare triple {6706#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {6691#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6691#true} is VALID [2022-02-21 03:10:03,295 INFO L290 TraceCheckUtils]: 2: Hoare triple {6691#true} #res := ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,295 INFO L290 TraceCheckUtils]: 3: Hoare triple {6691#true} assume true; {6691#true} is VALID [2022-02-21 03:10:03,296 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {6691#true} {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #379#return; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,296 INFO L290 TraceCheckUtils]: 0: Hoare triple {6691#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(22, 2);call #Ultimate.allocInit(12, 3); {6691#true} is VALID [2022-02-21 03:10:03,296 INFO L290 TraceCheckUtils]: 1: Hoare triple {6691#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; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,297 INFO L272 TraceCheckUtils]: 2: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {6706#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,297 INFO L290 TraceCheckUtils]: 3: Hoare triple {6706#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,297 INFO L290 TraceCheckUtils]: 4: Hoare triple {6691#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6691#true} is VALID [2022-02-21 03:10:03,297 INFO L290 TraceCheckUtils]: 5: Hoare triple {6691#true} #res := ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,297 INFO L290 TraceCheckUtils]: 6: Hoare triple {6691#true} assume true; {6691#true} is VALID [2022-02-21 03:10:03,298 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {6691#true} {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #377#return; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,298 INFO L290 TraceCheckUtils]: 8: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,299 INFO L272 TraceCheckUtils]: 9: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {6706#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,299 INFO L290 TraceCheckUtils]: 10: Hoare triple {6706#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {6691#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6691#true} is VALID [2022-02-21 03:10:03,299 INFO L290 TraceCheckUtils]: 12: Hoare triple {6691#true} #res := ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,300 INFO L290 TraceCheckUtils]: 13: Hoare triple {6691#true} assume true; {6691#true} is VALID [2022-02-21 03:10:03,300 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {6691#true} {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #379#return; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,301 INFO L290 TraceCheckUtils]: 15: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,301 INFO L272 TraceCheckUtils]: 16: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {6704#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:03,302 INFO L290 TraceCheckUtils]: 17: Hoare triple {6704#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,302 INFO L290 TraceCheckUtils]: 18: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,302 INFO L290 TraceCheckUtils]: 19: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,303 INFO L290 TraceCheckUtils]: 20: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !false; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,303 INFO L290 TraceCheckUtils]: 22: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,304 INFO L290 TraceCheckUtils]: 23: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,304 INFO L290 TraceCheckUtils]: 24: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {6692#false} is VALID [2022-02-21 03:10:03,304 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:03,304 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:03,304 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2118856052] [2022-02-21 03:10:03,305 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2118856052] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:03,305 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [561724515] [2022-02-21 03:10:03,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:03,305 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:03,306 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:03,307 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:10:03,308 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:10:03,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,347 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:03,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,356 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:03,486 INFO L290 TraceCheckUtils]: 0: Hoare triple {6691#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(22, 2);call #Ultimate.allocInit(12, 3); {6691#true} is VALID [2022-02-21 03:10:03,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {6691#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; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,491 INFO L272 TraceCheckUtils]: 2: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {6691#true} is VALID [2022-02-21 03:10:03,491 INFO L290 TraceCheckUtils]: 3: Hoare triple {6691#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,492 INFO L290 TraceCheckUtils]: 4: Hoare triple {6691#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6691#true} is VALID [2022-02-21 03:10:03,492 INFO L290 TraceCheckUtils]: 5: Hoare triple {6691#true} #res := ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,492 INFO L290 TraceCheckUtils]: 6: Hoare triple {6691#true} assume true; {6691#true} is VALID [2022-02-21 03:10:03,493 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {6691#true} {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #377#return; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,493 INFO L290 TraceCheckUtils]: 8: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,493 INFO L272 TraceCheckUtils]: 9: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {6691#true} is VALID [2022-02-21 03:10:03,493 INFO L290 TraceCheckUtils]: 10: Hoare triple {6691#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,493 INFO L290 TraceCheckUtils]: 11: Hoare triple {6691#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6691#true} is VALID [2022-02-21 03:10:03,494 INFO L290 TraceCheckUtils]: 12: Hoare triple {6691#true} #res := ~__retres4~0; {6691#true} is VALID [2022-02-21 03:10:03,494 INFO L290 TraceCheckUtils]: 13: Hoare triple {6691#true} assume true; {6691#true} is VALID [2022-02-21 03:10:03,494 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {6691#true} {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #379#return; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,495 INFO L290 TraceCheckUtils]: 15: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:10:03,495 INFO L272 TraceCheckUtils]: 16: Hoare triple {6693#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {6704#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:03,496 INFO L290 TraceCheckUtils]: 17: Hoare triple {6704#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,496 INFO L290 TraceCheckUtils]: 18: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,497 INFO L290 TraceCheckUtils]: 19: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,497 INFO L290 TraceCheckUtils]: 20: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !false; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,497 INFO L290 TraceCheckUtils]: 21: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,498 INFO L290 TraceCheckUtils]: 23: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {6705#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:03,499 INFO L290 TraceCheckUtils]: 24: Hoare triple {6705#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {6692#false} is VALID [2022-02-21 03:10:03,500 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-21 03:10:03,500 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:03,500 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [561724515] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:03,500 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:03,500 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:03,500 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2144794507] [2022-02-21 03:10:03,501 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:03,501 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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 25 [2022-02-21 03:10:03,501 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:03,501 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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,516 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:03,516 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:03,516 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:03,516 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:03,517 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:03,517 INFO L87 Difference]: Start difference. First operand 203 states and 282 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:03,875 INFO L93 Difference]: Finished difference Result 236 states and 323 transitions. [2022-02-21 03:10:03,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:03,876 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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 25 [2022-02-21 03:10:03,876 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:03,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 205 transitions. [2022-02-21 03:10:03,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 205 transitions. [2022-02-21 03:10:03,880 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 205 transitions. [2022-02-21 03:10:04,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 205 edges. 205 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:04,015 INFO L225 Difference]: With dead ends: 236 [2022-02-21 03:10:04,015 INFO L226 Difference]: Without dead ends: 233 [2022-02-21 03:10:04,015 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 29 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,016 INFO L933 BasicCegarLoop]: 107 mSDtfsCounter, 162 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 165 SdHoareTripleChecker+Valid, 359 SdHoareTripleChecker+Invalid, 95 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 75 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:04,016 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [165 Valid, 359 Invalid, 95 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:04,016 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2022-02-21 03:10:04,059 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 195. [2022-02-21 03:10:04,060 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:04,060 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand has 195 states, 170 states have (on average 1.5235294117647058) internal successors, (259), 187 states have internal predecessors, (259), 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:04,060 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand has 195 states, 170 states have (on average 1.5235294117647058) internal successors, (259), 187 states have internal predecessors, (259), 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:04,061 INFO L87 Difference]: Start difference. First operand 233 states. Second operand has 195 states, 170 states have (on average 1.5235294117647058) internal successors, (259), 187 states have internal predecessors, (259), 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:04,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:04,069 INFO L93 Difference]: Finished difference Result 233 states and 320 transitions. [2022-02-21 03:10:04,069 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 320 transitions. [2022-02-21 03:10:04,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:04,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:04,070 INFO L74 IsIncluded]: Start isIncluded. First operand has 195 states, 170 states have (on average 1.5235294117647058) internal successors, (259), 187 states have internal predecessors, (259), 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 233 states. [2022-02-21 03:10:04,070 INFO L87 Difference]: Start difference. First operand has 195 states, 170 states have (on average 1.5235294117647058) internal successors, (259), 187 states have internal predecessors, (259), 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 233 states. [2022-02-21 03:10:04,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:04,074 INFO L93 Difference]: Finished difference Result 233 states and 320 transitions. [2022-02-21 03:10:04,074 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 320 transitions. [2022-02-21 03:10:04,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:04,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:04,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:04,075 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:04,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 195 states, 170 states have (on average 1.5235294117647058) internal successors, (259), 187 states have internal predecessors, (259), 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:04,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 195 states to 195 states and 267 transitions. [2022-02-21 03:10:04,078 INFO L78 Accepts]: Start accepts. Automaton has 195 states and 267 transitions. Word has length 25 [2022-02-21 03:10:04,079 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:04,080 INFO L470 AbstractCegarLoop]: Abstraction has 195 states and 267 transitions. [2022-02-21 03:10:04,080 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 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,080 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 267 transitions. [2022-02-21 03:10:04,080 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-21 03:10:04,080 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:04,081 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:04,098 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:04,297 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:04,298 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:04,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:04,298 INFO L85 PathProgramCache]: Analyzing trace with hash 1044644110, now seen corresponding path program 1 times [2022-02-21 03:10:04,298 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:04,298 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1143824388] [2022-02-21 03:10:04,298 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:04,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:04,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,337 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:04,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,341 INFO L290 TraceCheckUtils]: 0: Hoare triple {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,341 INFO L290 TraceCheckUtils]: 3: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,342 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #377#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,342 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:04,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,346 INFO L290 TraceCheckUtils]: 0: Hoare triple {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,346 INFO L290 TraceCheckUtils]: 2: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,346 INFO L290 TraceCheckUtils]: 3: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,347 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #379#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,347 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 16 [2022-02-21 03:10:04,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,351 INFO L290 TraceCheckUtils]: 0: Hoare triple {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,351 INFO L290 TraceCheckUtils]: 1: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,351 INFO L290 TraceCheckUtils]: 2: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,351 INFO L290 TraceCheckUtils]: 3: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,352 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #381#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,352 INFO L290 TraceCheckUtils]: 0: Hoare triple {7739#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(22, 2);call #Ultimate.allocInit(12, 3); {7739#true} is VALID [2022-02-21 03:10:04,352 INFO L290 TraceCheckUtils]: 1: Hoare triple {7739#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; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,353 INFO L272 TraceCheckUtils]: 2: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:04,353 INFO L290 TraceCheckUtils]: 3: Hoare triple {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,353 INFO L290 TraceCheckUtils]: 4: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,353 INFO L290 TraceCheckUtils]: 5: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,353 INFO L290 TraceCheckUtils]: 6: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,353 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #377#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,354 INFO L272 TraceCheckUtils]: 9: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:04,354 INFO L290 TraceCheckUtils]: 10: Hoare triple {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,355 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #379#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,355 INFO L290 TraceCheckUtils]: 15: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,356 INFO L272 TraceCheckUtils]: 16: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:04,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {7759#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,356 INFO L290 TraceCheckUtils]: 18: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,356 INFO L290 TraceCheckUtils]: 19: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,356 INFO L290 TraceCheckUtils]: 20: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,357 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #381#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,357 INFO L290 TraceCheckUtils]: 22: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,357 INFO L272 TraceCheckUtils]: 23: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {7757#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:04,358 INFO L290 TraceCheckUtils]: 24: Hoare triple {7757#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,358 INFO L290 TraceCheckUtils]: 25: Hoare triple {7758#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,358 INFO L290 TraceCheckUtils]: 26: Hoare triple {7758#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,358 INFO L290 TraceCheckUtils]: 27: Hoare triple {7758#(<= base2flt_~e 127)} assume !false; {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,359 INFO L290 TraceCheckUtils]: 28: Hoare triple {7758#(<= base2flt_~e 127)} assume !(~e <= -128); {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,359 INFO L290 TraceCheckUtils]: 29: Hoare triple {7758#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {7740#false} is VALID [2022-02-21 03:10:04,359 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 3 proven. 3 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-21 03:10:04,359 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:04,359 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1143824388] [2022-02-21 03:10:04,360 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1143824388] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:04,360 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [657693806] [2022-02-21 03:10:04,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:04,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:04,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:04,361 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:04,362 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:04,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,400 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:04,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:04,410 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:04,508 INFO L290 TraceCheckUtils]: 0: Hoare triple {7739#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(22, 2);call #Ultimate.allocInit(12, 3); {7739#true} is VALID [2022-02-21 03:10:04,508 INFO L290 TraceCheckUtils]: 1: Hoare triple {7739#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; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,508 INFO L272 TraceCheckUtils]: 2: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {7739#true} is VALID [2022-02-21 03:10:04,508 INFO L290 TraceCheckUtils]: 3: Hoare triple {7739#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,508 INFO L290 TraceCheckUtils]: 4: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,509 INFO L290 TraceCheckUtils]: 5: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,509 INFO L290 TraceCheckUtils]: 6: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,509 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #377#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,509 INFO L290 TraceCheckUtils]: 8: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,510 INFO L272 TraceCheckUtils]: 9: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {7739#true} is VALID [2022-02-21 03:10:04,510 INFO L290 TraceCheckUtils]: 10: Hoare triple {7739#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,510 INFO L290 TraceCheckUtils]: 11: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,510 INFO L290 TraceCheckUtils]: 13: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,510 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #379#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,511 INFO L290 TraceCheckUtils]: 15: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,511 INFO L272 TraceCheckUtils]: 16: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {7739#true} is VALID [2022-02-21 03:10:04,512 INFO L290 TraceCheckUtils]: 17: Hoare triple {7739#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,512 INFO L290 TraceCheckUtils]: 18: Hoare triple {7739#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7739#true} is VALID [2022-02-21 03:10:04,512 INFO L290 TraceCheckUtils]: 19: Hoare triple {7739#true} #res := ~__retres4~0; {7739#true} is VALID [2022-02-21 03:10:04,512 INFO L290 TraceCheckUtils]: 20: Hoare triple {7739#true} assume true; {7739#true} is VALID [2022-02-21 03:10:04,512 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7739#true} {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #381#return; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,513 INFO L290 TraceCheckUtils]: 22: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:04,513 INFO L272 TraceCheckUtils]: 23: Hoare triple {7741#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {7757#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:04,514 INFO L290 TraceCheckUtils]: 24: Hoare triple {7757#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,514 INFO L290 TraceCheckUtils]: 25: Hoare triple {7758#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,514 INFO L290 TraceCheckUtils]: 26: Hoare triple {7758#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,515 INFO L290 TraceCheckUtils]: 27: Hoare triple {7758#(<= base2flt_~e 127)} assume !false; {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,515 INFO L290 TraceCheckUtils]: 28: Hoare triple {7758#(<= base2flt_~e 127)} assume !(~e <= -128); {7758#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:04,515 INFO L290 TraceCheckUtils]: 29: Hoare triple {7758#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {7740#false} is VALID [2022-02-21 03:10:04,515 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-21 03:10:04,515 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:04,516 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [657693806] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:04,516 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:04,516 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:04,516 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [303921395] [2022-02-21 03:10:04,516 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:04,516 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 30 [2022-02-21 03:10:04,516 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:04,517 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:04,536 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:04,536 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:04,536 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:04,537 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:04,537 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:04,537 INFO L87 Difference]: Start difference. First operand 195 states and 267 transitions. Second operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:04,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:04,883 INFO L93 Difference]: Finished difference Result 225 states and 309 transitions. [2022-02-21 03:10:04,883 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:04,883 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 30 [2022-02-21 03:10:04,883 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:04,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:04,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 206 transitions. [2022-02-21 03:10:04,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:04,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 206 transitions. [2022-02-21 03:10:04,886 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 206 transitions. [2022-02-21 03:10:05,026 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:05,028 INFO L225 Difference]: With dead ends: 225 [2022-02-21 03:10:05,028 INFO L226 Difference]: Without dead ends: 222 [2022-02-21 03:10:05,029 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 36 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,029 INFO L933 BasicCegarLoop]: 99 mSDtfsCounter, 180 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 76 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 182 SdHoareTripleChecker+Valid, 338 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 76 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:05,029 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [182 Valid, 338 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 76 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:05,030 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 222 states. [2022-02-21 03:10:05,075 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 222 to 183. [2022-02-21 03:10:05,075 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:05,076 INFO L82 GeneralOperation]: Start isEquivalent. First operand 222 states. Second operand has 183 states, 161 states have (on average 1.484472049689441) internal successors, (239), 175 states have internal predecessors, (239), 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:05,076 INFO L74 IsIncluded]: Start isIncluded. First operand 222 states. Second operand has 183 states, 161 states have (on average 1.484472049689441) internal successors, (239), 175 states have internal predecessors, (239), 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:05,077 INFO L87 Difference]: Start difference. First operand 222 states. Second operand has 183 states, 161 states have (on average 1.484472049689441) internal successors, (239), 175 states have internal predecessors, (239), 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:05,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:05,081 INFO L93 Difference]: Finished difference Result 222 states and 304 transitions. [2022-02-21 03:10:05,081 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 304 transitions. [2022-02-21 03:10:05,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:05,081 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:05,082 INFO L74 IsIncluded]: Start isIncluded. First operand has 183 states, 161 states have (on average 1.484472049689441) internal successors, (239), 175 states have internal predecessors, (239), 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 222 states. [2022-02-21 03:10:05,082 INFO L87 Difference]: Start difference. First operand has 183 states, 161 states have (on average 1.484472049689441) internal successors, (239), 175 states have internal predecessors, (239), 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 222 states. [2022-02-21 03:10:05,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:05,086 INFO L93 Difference]: Finished difference Result 222 states and 304 transitions. [2022-02-21 03:10:05,086 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 304 transitions. [2022-02-21 03:10:05,086 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:05,086 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:05,086 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:05,086 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:05,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 183 states, 161 states have (on average 1.484472049689441) internal successors, (239), 175 states have internal predecessors, (239), 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:05,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 183 states to 183 states and 247 transitions. [2022-02-21 03:10:05,089 INFO L78 Accepts]: Start accepts. Automaton has 183 states and 247 transitions. Word has length 30 [2022-02-21 03:10:05,089 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:05,090 INFO L470 AbstractCegarLoop]: Abstraction has 183 states and 247 transitions. [2022-02-21 03:10:05,090 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:05,090 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 247 transitions. [2022-02-21 03:10:05,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-21 03:10:05,092 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:05,092 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 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,112 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:05,307 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:05,307 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting base2fltErr3ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:05,308 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:05,308 INFO L85 PathProgramCache]: Analyzing trace with hash -231907658, now seen corresponding path program 1 times [2022-02-21 03:10:05,308 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:05,308 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1622164091] [2022-02-21 03:10:05,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:05,308 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:05,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,355 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:05,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,367 INFO L290 TraceCheckUtils]: 0: Hoare triple {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,367 INFO L290 TraceCheckUtils]: 3: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,368 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #377#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,368 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:05,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,382 INFO L290 TraceCheckUtils]: 0: Hoare triple {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,383 INFO L290 TraceCheckUtils]: 1: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,383 INFO L290 TraceCheckUtils]: 2: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,383 INFO L290 TraceCheckUtils]: 3: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,384 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #379#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,384 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 16 [2022-02-21 03:10:05,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,391 INFO L290 TraceCheckUtils]: 0: Hoare triple {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,391 INFO L290 TraceCheckUtils]: 1: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,392 INFO L290 TraceCheckUtils]: 2: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,392 INFO L290 TraceCheckUtils]: 3: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,392 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #381#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,392 INFO L290 TraceCheckUtils]: 0: Hoare triple {8758#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(22, 2);call #Ultimate.allocInit(12, 3); {8758#true} is VALID [2022-02-21 03:10:05,393 INFO L290 TraceCheckUtils]: 1: Hoare triple {8758#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; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,393 INFO L272 TraceCheckUtils]: 2: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:05,393 INFO L290 TraceCheckUtils]: 3: Hoare triple {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,394 INFO L290 TraceCheckUtils]: 4: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,394 INFO L290 TraceCheckUtils]: 6: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,394 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #377#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,395 INFO L290 TraceCheckUtils]: 8: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,395 INFO L272 TraceCheckUtils]: 9: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:05,395 INFO L290 TraceCheckUtils]: 10: Hoare triple {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,395 INFO L290 TraceCheckUtils]: 11: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,395 INFO L290 TraceCheckUtils]: 12: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,396 INFO L290 TraceCheckUtils]: 13: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,396 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #379#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,396 INFO L290 TraceCheckUtils]: 15: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,397 INFO L272 TraceCheckUtils]: 16: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:05,397 INFO L290 TraceCheckUtils]: 17: Hoare triple {8778#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,402 INFO L290 TraceCheckUtils]: 18: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,402 INFO L290 TraceCheckUtils]: 19: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,402 INFO L290 TraceCheckUtils]: 20: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,403 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #381#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,403 INFO L290 TraceCheckUtils]: 22: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,404 INFO L272 TraceCheckUtils]: 23: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {8776#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:05,404 INFO L290 TraceCheckUtils]: 24: Hoare triple {8776#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,404 INFO L290 TraceCheckUtils]: 25: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,405 INFO L290 TraceCheckUtils]: 26: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,405 INFO L290 TraceCheckUtils]: 27: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !false; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,405 INFO L290 TraceCheckUtils]: 28: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,406 INFO L290 TraceCheckUtils]: 29: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,406 INFO L290 TraceCheckUtils]: 30: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,406 INFO L290 TraceCheckUtils]: 31: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {8759#false} is VALID [2022-02-21 03:10:05,407 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 3 proven. 3 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-21 03:10:05,407 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:05,407 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1622164091] [2022-02-21 03:10:05,407 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1622164091] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:05,407 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1925648748] [2022-02-21 03:10:05,408 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:05,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:05,408 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:05,409 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:05,411 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:05,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:05,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:05,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:05,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {8758#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(22, 2);call #Ultimate.allocInit(12, 3); {8758#true} is VALID [2022-02-21 03:10:05,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {8758#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; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,560 INFO L272 TraceCheckUtils]: 2: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {8758#true} is VALID [2022-02-21 03:10:05,560 INFO L290 TraceCheckUtils]: 3: Hoare triple {8758#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,560 INFO L290 TraceCheckUtils]: 4: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,560 INFO L290 TraceCheckUtils]: 6: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,560 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #377#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,561 INFO L272 TraceCheckUtils]: 9: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {8758#true} is VALID [2022-02-21 03:10:05,561 INFO L290 TraceCheckUtils]: 10: Hoare triple {8758#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,561 INFO L290 TraceCheckUtils]: 11: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,561 INFO L290 TraceCheckUtils]: 13: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,562 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #379#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,563 INFO L272 TraceCheckUtils]: 16: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {8758#true} is VALID [2022-02-21 03:10:05,563 INFO L290 TraceCheckUtils]: 17: Hoare triple {8758#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,563 INFO L290 TraceCheckUtils]: 18: Hoare triple {8758#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8758#true} is VALID [2022-02-21 03:10:05,563 INFO L290 TraceCheckUtils]: 19: Hoare triple {8758#true} #res := ~__retres4~0; {8758#true} is VALID [2022-02-21 03:10:05,563 INFO L290 TraceCheckUtils]: 20: Hoare triple {8758#true} assume true; {8758#true} is VALID [2022-02-21 03:10:05,563 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8758#true} {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #381#return; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,564 INFO L290 TraceCheckUtils]: 22: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:05,564 INFO L272 TraceCheckUtils]: 23: Hoare triple {8760#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {8776#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:05,565 INFO L290 TraceCheckUtils]: 24: Hoare triple {8776#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,565 INFO L290 TraceCheckUtils]: 25: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,565 INFO L290 TraceCheckUtils]: 26: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,566 INFO L290 TraceCheckUtils]: 27: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !false; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,566 INFO L290 TraceCheckUtils]: 28: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,566 INFO L290 TraceCheckUtils]: 29: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,569 INFO L290 TraceCheckUtils]: 30: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {8777#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:05,569 INFO L290 TraceCheckUtils]: 31: Hoare triple {8777#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {8759#false} is VALID [2022-02-21 03:10:05,569 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-21 03:10:05,569 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:05,570 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1925648748] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:05,570 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:05,570 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:05,570 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1232734938] [2022-02-21 03:10:05,570 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:05,571 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 32 [2022-02-21 03:10:05,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:05,571 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:05,586 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:05,586 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:05,586 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:05,587 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:05,587 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:05,587 INFO L87 Difference]: Start difference. First operand 183 states and 247 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:05,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:05,966 INFO L93 Difference]: Finished difference Result 213 states and 288 transitions. [2022-02-21 03:10:05,966 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:05,966 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 32 [2022-02-21 03:10:05,966 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:05,966 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:05,967 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 199 transitions. [2022-02-21 03:10:05,968 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:05,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 199 transitions. [2022-02-21 03:10:05,969 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 199 transitions. [2022-02-21 03:10:06,077 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 199 edges. 199 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:06,080 INFO L225 Difference]: With dead ends: 213 [2022-02-21 03:10:06,080 INFO L226 Difference]: Without dead ends: 210 [2022-02-21 03:10:06,081 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 38 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:06,081 INFO L933 BasicCegarLoop]: 102 mSDtfsCounter, 160 mSDsluCounter, 242 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 162 SdHoareTripleChecker+Valid, 344 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:06,081 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [162 Valid, 344 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:06,082 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2022-02-21 03:10:06,133 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 172. [2022-02-21 03:10:06,133 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:06,133 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand has 172 states, 153 states have (on average 1.4640522875816993) internal successors, (224), 164 states have internal predecessors, (224), 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:06,134 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand has 172 states, 153 states have (on average 1.4640522875816993) internal successors, (224), 164 states have internal predecessors, (224), 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:06,134 INFO L87 Difference]: Start difference. First operand 210 states. Second operand has 172 states, 153 states have (on average 1.4640522875816993) internal successors, (224), 164 states have internal predecessors, (224), 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:06,137 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:06,137 INFO L93 Difference]: Finished difference Result 210 states and 285 transitions. [2022-02-21 03:10:06,137 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 285 transitions. [2022-02-21 03:10:06,137 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:06,138 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:06,138 INFO L74 IsIncluded]: Start isIncluded. First operand has 172 states, 153 states have (on average 1.4640522875816993) internal successors, (224), 164 states have internal predecessors, (224), 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 210 states. [2022-02-21 03:10:06,138 INFO L87 Difference]: Start difference. First operand has 172 states, 153 states have (on average 1.4640522875816993) internal successors, (224), 164 states have internal predecessors, (224), 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 210 states. [2022-02-21 03:10:06,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:06,141 INFO L93 Difference]: Finished difference Result 210 states and 285 transitions. [2022-02-21 03:10:06,141 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 285 transitions. [2022-02-21 03:10:06,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:06,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:06,142 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:06,142 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:06,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 172 states, 153 states have (on average 1.4640522875816993) internal successors, (224), 164 states have internal predecessors, (224), 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:06,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 172 states to 172 states and 232 transitions. [2022-02-21 03:10:06,145 INFO L78 Accepts]: Start accepts. Automaton has 172 states and 232 transitions. Word has length 32 [2022-02-21 03:10:06,145 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:06,145 INFO L470 AbstractCegarLoop]: Abstraction has 172 states and 232 transitions. [2022-02-21 03:10:06,145 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-02-21 03:10:06,145 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 232 transitions. [2022-02-21 03:10:06,145 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-21 03:10:06,145 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:06,145 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:06,169 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:06,362 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-02-21 03:10:06,363 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:06,364 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:06,364 INFO L85 PathProgramCache]: Analyzing trace with hash 665301411, now seen corresponding path program 1 times [2022-02-21 03:10:06,365 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:06,365 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1457931655] [2022-02-21 03:10:06,365 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:06,365 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:06,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,399 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:06,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,403 INFO L290 TraceCheckUtils]: 0: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,409 INFO L290 TraceCheckUtils]: 2: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,409 INFO L290 TraceCheckUtils]: 3: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,412 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9734#true} {9734#true} #377#return; {9734#true} is VALID [2022-02-21 03:10:06,412 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:06,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,433 INFO L290 TraceCheckUtils]: 0: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9757#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:06,433 INFO L290 TraceCheckUtils]: 1: Hoare triple {9757#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9758#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:06,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {9758#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {9758#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:06,434 INFO L290 TraceCheckUtils]: 3: Hoare triple {9758#(not (= |base2flt_#in~m| 1))} assume true; {9758#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:06,434 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9758#(not (= |base2flt_#in~m| 1))} {9734#true} #379#return; {9735#false} is VALID [2022-02-21 03:10:06,435 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 16 [2022-02-21 03:10:06,438 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,445 INFO L290 TraceCheckUtils]: 0: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,446 INFO L290 TraceCheckUtils]: 1: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,446 INFO L290 TraceCheckUtils]: 2: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,446 INFO L290 TraceCheckUtils]: 3: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,446 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9734#true} {9735#false} #381#return; {9735#false} is VALID [2022-02-21 03:10:06,446 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-02-21 03:10:06,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,452 INFO L290 TraceCheckUtils]: 3: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,452 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9734#true} {9735#false} #383#return; {9735#false} is VALID [2022-02-21 03:10:06,452 INFO L290 TraceCheckUtils]: 0: Hoare triple {9734#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(22, 2);call #Ultimate.allocInit(12, 3); {9734#true} is VALID [2022-02-21 03:10:06,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {9734#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; {9734#true} is VALID [2022-02-21 03:10:06,453 INFO L272 TraceCheckUtils]: 2: Hoare triple {9734#true} call main_#t~ret22#1 := base2flt(0, 0); {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:06,453 INFO L290 TraceCheckUtils]: 3: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,453 INFO L290 TraceCheckUtils]: 4: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,453 INFO L290 TraceCheckUtils]: 6: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,453 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9734#true} {9734#true} #377#return; {9734#true} is VALID [2022-02-21 03:10:06,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {9734#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9734#true} is VALID [2022-02-21 03:10:06,454 INFO L272 TraceCheckUtils]: 9: Hoare triple {9734#true} call main_#t~ret23#1 := base2flt(1, 0); {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:06,454 INFO L290 TraceCheckUtils]: 10: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9757#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:06,455 INFO L290 TraceCheckUtils]: 11: Hoare triple {9757#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9758#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:06,455 INFO L290 TraceCheckUtils]: 12: Hoare triple {9758#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {9758#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:06,455 INFO L290 TraceCheckUtils]: 13: Hoare triple {9758#(not (= |base2flt_#in~m| 1))} assume true; {9758#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:06,456 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {9758#(not (= |base2flt_#in~m| 1))} {9734#true} #379#return; {9735#false} is VALID [2022-02-21 03:10:06,456 INFO L290 TraceCheckUtils]: 15: Hoare triple {9735#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9735#false} is VALID [2022-02-21 03:10:06,456 INFO L272 TraceCheckUtils]: 16: Hoare triple {9735#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:06,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,456 INFO L290 TraceCheckUtils]: 19: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,457 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9734#true} {9735#false} #381#return; {9735#false} is VALID [2022-02-21 03:10:06,457 INFO L290 TraceCheckUtils]: 22: Hoare triple {9735#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {9735#false} is VALID [2022-02-21 03:10:06,457 INFO L272 TraceCheckUtils]: 23: Hoare triple {9735#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:06,457 INFO L290 TraceCheckUtils]: 24: Hoare triple {9756#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,457 INFO L290 TraceCheckUtils]: 25: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,457 INFO L290 TraceCheckUtils]: 26: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,457 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {9734#true} {9735#false} #383#return; {9735#false} is VALID [2022-02-21 03:10:06,459 INFO L290 TraceCheckUtils]: 29: Hoare triple {9735#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {9735#false} is VALID [2022-02-21 03:10:06,459 INFO L290 TraceCheckUtils]: 30: Hoare triple {9735#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {9735#false} is VALID [2022-02-21 03:10:06,459 INFO L290 TraceCheckUtils]: 31: Hoare triple {9735#false} assume !(0 == mulflt_~b#1 % 4294967296); {9735#false} is VALID [2022-02-21 03:10:06,459 INFO L290 TraceCheckUtils]: 32: Hoare triple {9735#false} assume 0 == mulflt_~a#1;mulflt_~ma~1#1 := 0; {9735#false} is VALID [2022-02-21 03:10:06,459 INFO L290 TraceCheckUtils]: 33: Hoare triple {9735#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {9735#false} is VALID [2022-02-21 03:10:06,463 INFO L290 TraceCheckUtils]: 34: Hoare triple {9735#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {9735#false} is VALID [2022-02-21 03:10:06,463 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 4 proven. 8 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-02-21 03:10:06,463 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:06,463 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1457931655] [2022-02-21 03:10:06,464 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1457931655] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:06,464 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1380820830] [2022-02-21 03:10:06,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:06,464 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:06,464 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:06,465 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:06,488 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:06,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,523 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-21 03:10:06,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:06,532 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:06,659 INFO L290 TraceCheckUtils]: 0: Hoare triple {9734#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(22, 2);call #Ultimate.allocInit(12, 3); {9734#true} is VALID [2022-02-21 03:10:06,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {9734#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; {9734#true} is VALID [2022-02-21 03:10:06,659 INFO L272 TraceCheckUtils]: 2: Hoare triple {9734#true} call main_#t~ret22#1 := base2flt(0, 0); {9734#true} is VALID [2022-02-21 03:10:06,659 INFO L290 TraceCheckUtils]: 3: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9771#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:06,660 INFO L290 TraceCheckUtils]: 4: Hoare triple {9771#(= base2flt_~m |base2flt_#in~m|)} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9775#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:06,660 INFO L290 TraceCheckUtils]: 5: Hoare triple {9775#(<= (mod |base2flt_#in~m| 4294967296) 0)} #res := ~__retres4~0; {9775#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 6: Hoare triple {9775#(<= (mod |base2flt_#in~m| 4294967296) 0)} assume true; {9775#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:06,661 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9775#(<= (mod |base2flt_#in~m| 4294967296) 0)} {9734#true} #377#return; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {9734#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L272 TraceCheckUtils]: 9: Hoare triple {9734#true} call main_#t~ret23#1 := base2flt(1, 0); {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 10: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 11: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 12: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {9734#true} {9734#true} #379#return; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 15: Hoare triple {9734#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L272 TraceCheckUtils]: 16: Hoare triple {9734#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9734#true} is VALID [2022-02-21 03:10:06,661 INFO L290 TraceCheckUtils]: 17: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9818#(= base2flt_~__retres4~0 0)} is VALID [2022-02-21 03:10:06,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {9818#(= base2flt_~__retres4~0 0)} #res := ~__retres4~0; {9822#(= |base2flt_#res| 0)} is VALID [2022-02-21 03:10:06,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {9822#(= |base2flt_#res| 0)} assume true; {9822#(= |base2flt_#res| 0)} is VALID [2022-02-21 03:10:06,663 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9822#(= |base2flt_#res| 0)} {9734#true} #381#return; {9829#(= |ULTIMATE.start_main_#t~ret24#1| 0)} is VALID [2022-02-21 03:10:06,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {9829#(= |ULTIMATE.start_main_#t~ret24#1| 0)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {9833#(= |ULTIMATE.start_main_~a~0#1| 0)} is VALID [2022-02-21 03:10:06,664 INFO L272 TraceCheckUtils]: 23: Hoare triple {9833#(= |ULTIMATE.start_main_~a~0#1| 0)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {9734#true} is VALID [2022-02-21 03:10:06,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,664 INFO L290 TraceCheckUtils]: 25: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,664 INFO L290 TraceCheckUtils]: 26: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,664 INFO L290 TraceCheckUtils]: 27: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,664 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {9734#true} {9833#(= |ULTIMATE.start_main_~a~0#1| 0)} #383#return; {9833#(= |ULTIMATE.start_main_~a~0#1| 0)} is VALID [2022-02-21 03:10:06,665 INFO L290 TraceCheckUtils]: 29: Hoare triple {9833#(= |ULTIMATE.start_main_~a~0#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {9855#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:06,665 INFO L290 TraceCheckUtils]: 30: Hoare triple {9855#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {9859#(= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:06,665 INFO L290 TraceCheckUtils]: 31: Hoare triple {9859#(= |ULTIMATE.start_mulflt_~b#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {9735#false} is VALID [2022-02-21 03:10:06,666 INFO L290 TraceCheckUtils]: 32: Hoare triple {9735#false} assume 0 == mulflt_~a#1;mulflt_~ma~1#1 := 0; {9735#false} is VALID [2022-02-21 03:10:06,666 INFO L290 TraceCheckUtils]: 33: Hoare triple {9735#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {9735#false} is VALID [2022-02-21 03:10:06,666 INFO L290 TraceCheckUtils]: 34: Hoare triple {9735#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {9735#false} is VALID [2022-02-21 03:10:06,666 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 3 proven. 15 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-02-21 03:10:06,666 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:06,899 INFO L290 TraceCheckUtils]: 34: Hoare triple {9735#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {9735#false} is VALID [2022-02-21 03:10:06,899 INFO L290 TraceCheckUtils]: 33: Hoare triple {9735#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {9735#false} is VALID [2022-02-21 03:10:06,899 INFO L290 TraceCheckUtils]: 32: Hoare triple {9735#false} assume 0 == mulflt_~a#1;mulflt_~ma~1#1 := 0; {9735#false} is VALID [2022-02-21 03:10:06,900 INFO L290 TraceCheckUtils]: 31: Hoare triple {9881#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} assume !(0 == mulflt_~b#1 % 4294967296); {9735#false} is VALID [2022-02-21 03:10:06,900 INFO L290 TraceCheckUtils]: 30: Hoare triple {9885#(= (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 0)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {9881#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} is VALID [2022-02-21 03:10:06,900 INFO L290 TraceCheckUtils]: 29: Hoare triple {9889#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {9885#(= (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 0)} is VALID [2022-02-21 03:10:06,902 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {9734#true} {9889#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} #383#return; {9889#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:06,902 INFO L290 TraceCheckUtils]: 27: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,902 INFO L290 TraceCheckUtils]: 26: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,902 INFO L272 TraceCheckUtils]: 23: Hoare triple {9889#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {9734#true} is VALID [2022-02-21 03:10:06,903 INFO L290 TraceCheckUtils]: 22: Hoare triple {9911#(= (mod |ULTIMATE.start_main_#t~ret24#1| 4294967296) 0)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {9889#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:06,903 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9918#(= (mod |base2flt_#res| 4294967296) 0)} {9734#true} #381#return; {9911#(= (mod |ULTIMATE.start_main_#t~ret24#1| 4294967296) 0)} is VALID [2022-02-21 03:10:06,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {9918#(= (mod |base2flt_#res| 4294967296) 0)} assume true; {9918#(= (mod |base2flt_#res| 4294967296) 0)} is VALID [2022-02-21 03:10:06,904 INFO L290 TraceCheckUtils]: 19: Hoare triple {9925#(= (mod base2flt_~__retres4~0 4294967296) 0)} #res := ~__retres4~0; {9918#(= (mod |base2flt_#res| 4294967296) 0)} is VALID [2022-02-21 03:10:06,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9925#(= (mod base2flt_~__retres4~0 4294967296) 0)} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 17: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L272 TraceCheckUtils]: 16: Hoare triple {9734#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 15: Hoare triple {9734#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {9734#true} {9734#true} #379#return; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 13: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 12: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 11: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 10: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L272 TraceCheckUtils]: 9: Hoare triple {9734#true} call main_#t~ret23#1 := base2flt(1, 0); {9734#true} is VALID [2022-02-21 03:10:06,905 INFO L290 TraceCheckUtils]: 8: Hoare triple {9734#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9734#true} is VALID [2022-02-21 03:10:06,906 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9734#true} {9734#true} #377#return; {9734#true} is VALID [2022-02-21 03:10:06,906 INFO L290 TraceCheckUtils]: 6: Hoare triple {9734#true} assume true; {9734#true} is VALID [2022-02-21 03:10:06,906 INFO L290 TraceCheckUtils]: 5: Hoare triple {9734#true} #res := ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,906 INFO L290 TraceCheckUtils]: 4: Hoare triple {9734#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9734#true} is VALID [2022-02-21 03:10:06,906 INFO L290 TraceCheckUtils]: 3: Hoare triple {9734#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9734#true} is VALID [2022-02-21 03:10:06,911 INFO L272 TraceCheckUtils]: 2: Hoare triple {9734#true} call main_#t~ret22#1 := base2flt(0, 0); {9734#true} is VALID [2022-02-21 03:10:06,911 INFO L290 TraceCheckUtils]: 1: Hoare triple {9734#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; {9734#true} is VALID [2022-02-21 03:10:06,911 INFO L290 TraceCheckUtils]: 0: Hoare triple {9734#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(22, 2);call #Ultimate.allocInit(12, 3); {9734#true} is VALID [2022-02-21 03:10:06,911 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-21 03:10:06,911 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1380820830] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:06,911 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:06,911 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 10, 8] total 19 [2022-02-21 03:10:06,912 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [712951785] [2022-02-21 03:10:06,912 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:06,913 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) Word has length 35 [2022-02-21 03:10:06,915 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:06,915 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-21 03:10:06,959 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:06,960 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-02-21 03:10:06,960 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:06,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-02-21 03:10:06,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=299, Unknown=0, NotChecked=0, Total=342 [2022-02-21 03:10:06,961 INFO L87 Difference]: Start difference. First operand 172 states and 232 transitions. Second operand has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-21 03:10:09,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:09,092 INFO L93 Difference]: Finished difference Result 781 states and 1021 transitions. [2022-02-21 03:10:09,092 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-02-21 03:10:09,092 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) Word has length 35 [2022-02-21 03:10:09,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:09,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-21 03:10:09,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 572 transitions. [2022-02-21 03:10:09,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-21 03:10:09,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 572 transitions. [2022-02-21 03:10:09,102 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 572 transitions. [2022-02-21 03:10:09,487 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 572 edges. 572 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:09,502 INFO L225 Difference]: With dead ends: 781 [2022-02-21 03:10:09,503 INFO L226 Difference]: Without dead ends: 527 [2022-02-21 03:10:09,504 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 251 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=227, Invalid=1255, Unknown=0, NotChecked=0, Total=1482 [2022-02-21 03:10:09,504 INFO L933 BasicCegarLoop]: 106 mSDtfsCounter, 510 mSDsluCounter, 1418 mSDsCounter, 0 mSdLazyCounter, 563 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 510 SdHoareTripleChecker+Valid, 1524 SdHoareTripleChecker+Invalid, 605 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 563 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:09,504 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [510 Valid, 1524 Invalid, 605 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 563 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-21 03:10:09,505 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 527 states. [2022-02-21 03:10:09,569 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 527 to 195. [2022-02-21 03:10:09,570 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:09,570 INFO L82 GeneralOperation]: Start isEquivalent. First operand 527 states. Second operand has 195 states, 175 states have (on average 1.417142857142857) internal successors, (248), 186 states have internal predecessors, (248), 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:09,570 INFO L74 IsIncluded]: Start isIncluded. First operand 527 states. Second operand has 195 states, 175 states have (on average 1.417142857142857) internal successors, (248), 186 states have internal predecessors, (248), 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:09,571 INFO L87 Difference]: Start difference. First operand 527 states. Second operand has 195 states, 175 states have (on average 1.417142857142857) internal successors, (248), 186 states have internal predecessors, (248), 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:09,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:09,584 INFO L93 Difference]: Finished difference Result 527 states and 657 transitions. [2022-02-21 03:10:09,584 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 657 transitions. [2022-02-21 03:10:09,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:09,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:09,585 INFO L74 IsIncluded]: Start isIncluded. First operand has 195 states, 175 states have (on average 1.417142857142857) internal successors, (248), 186 states have internal predecessors, (248), 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 527 states. [2022-02-21 03:10:09,585 INFO L87 Difference]: Start difference. First operand has 195 states, 175 states have (on average 1.417142857142857) internal successors, (248), 186 states have internal predecessors, (248), 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 527 states. [2022-02-21 03:10:09,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:09,596 INFO L93 Difference]: Finished difference Result 527 states and 657 transitions. [2022-02-21 03:10:09,597 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 657 transitions. [2022-02-21 03:10:09,597 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:09,597 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:09,598 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:09,598 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:09,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 195 states, 175 states have (on average 1.417142857142857) internal successors, (248), 186 states have internal predecessors, (248), 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:09,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 195 states to 195 states and 256 transitions. [2022-02-21 03:10:09,601 INFO L78 Accepts]: Start accepts. Automaton has 195 states and 256 transitions. Word has length 35 [2022-02-21 03:10:09,601 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:09,601 INFO L470 AbstractCegarLoop]: Abstraction has 195 states and 256 transitions. [2022-02-21 03:10:09,601 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.0526315789473686) internal successors, (39), 16 states have internal predecessors, (39), 4 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-21 03:10:09,601 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 256 transitions. [2022-02-21 03:10:09,602 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-02-21 03:10:09,602 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:09,602 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 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:09,621 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:09,815 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:09,815 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:09,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:09,816 INFO L85 PathProgramCache]: Analyzing trace with hash -1787062927, now seen corresponding path program 1 times [2022-02-21 03:10:09,816 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:09,816 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [961426077] [2022-02-21 03:10:09,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:09,816 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:09,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:09,877 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:09,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:09,881 INFO L290 TraceCheckUtils]: 0: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {12180#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12180#true} is VALID [2022-02-21 03:10:09,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {12180#true} #res := ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,884 INFO L290 TraceCheckUtils]: 3: Hoare triple {12180#true} assume true; {12180#true} is VALID [2022-02-21 03:10:09,884 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {12180#true} {12180#true} #377#return; {12180#true} is VALID [2022-02-21 03:10:09,884 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:09,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:09,892 INFO L290 TraceCheckUtils]: 0: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,892 INFO L290 TraceCheckUtils]: 1: Hoare triple {12180#true} assume !(0 == ~m % 4294967296); {12180#true} is VALID [2022-02-21 03:10:09,892 INFO L290 TraceCheckUtils]: 2: Hoare triple {12180#true} assume ~m % 4294967296 < 16777216; {12180#true} is VALID [2022-02-21 03:10:09,892 INFO L290 TraceCheckUtils]: 3: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,892 INFO L290 TraceCheckUtils]: 4: Hoare triple {12180#true} assume !(~e <= -128); {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 5: Hoare triple {12180#true} assume ~e - 1 <= 2147483647; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 6: Hoare triple {12180#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {12180#true} assume ~m % 4294967296 < 16777216; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 9: Hoare triple {12180#true} assume !(~e <= -128); {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 10: Hoare triple {12180#true} assume ~e - 1 <= 2147483647; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 11: Hoare triple {12180#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 12: Hoare triple {12180#true} assume ~m % 4294967296 < 16777216; {12180#true} is VALID [2022-02-21 03:10:09,893 INFO L290 TraceCheckUtils]: 13: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,894 INFO L290 TraceCheckUtils]: 14: Hoare triple {12180#true} assume ~e <= -128;~__retres4~0 := 0; {12180#true} is VALID [2022-02-21 03:10:09,894 INFO L290 TraceCheckUtils]: 15: Hoare triple {12180#true} #res := ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,894 INFO L290 TraceCheckUtils]: 16: Hoare triple {12180#true} assume true; {12180#true} is VALID [2022-02-21 03:10:09,894 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {12180#true} {12180#true} #379#return; {12180#true} is VALID [2022-02-21 03:10:09,894 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-21 03:10:09,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:09,901 INFO L290 TraceCheckUtils]: 0: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 1: Hoare triple {12180#true} assume !(0 == ~m % 4294967296); {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 2: Hoare triple {12180#true} assume !(~m % 4294967296 < 16777216); {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 3: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 4: Hoare triple {12180#true} assume ~m % 4294967296 >= 33554432; {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {12180#true} assume ~e >= 127;~__retres4~0 := 4294967295; {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 6: Hoare triple {12180#true} #res := ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L290 TraceCheckUtils]: 7: Hoare triple {12180#true} assume true; {12180#true} is VALID [2022-02-21 03:10:09,902 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {12180#true} {12180#true} #381#return; {12180#true} is VALID [2022-02-21 03:10:09,903 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-21 03:10:09,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:09,933 INFO L290 TraceCheckUtils]: 0: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {12180#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12223#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} is VALID [2022-02-21 03:10:09,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {12223#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} #res := ~__retres4~0; {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:09,934 INFO L290 TraceCheckUtils]: 3: Hoare triple {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} assume true; {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:09,935 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} {12180#true} #383#return; {12219#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:09,935 INFO L290 TraceCheckUtils]: 0: Hoare triple {12180#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(22, 2);call #Ultimate.allocInit(12, 3); {12180#true} is VALID [2022-02-21 03:10:09,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {12180#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; {12180#true} is VALID [2022-02-21 03:10:09,936 INFO L272 TraceCheckUtils]: 2: Hoare triple {12180#true} call main_#t~ret22#1 := base2flt(0, 0); {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:09,936 INFO L290 TraceCheckUtils]: 3: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,936 INFO L290 TraceCheckUtils]: 4: Hoare triple {12180#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12180#true} is VALID [2022-02-21 03:10:09,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {12180#true} #res := ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,936 INFO L290 TraceCheckUtils]: 6: Hoare triple {12180#true} assume true; {12180#true} is VALID [2022-02-21 03:10:09,937 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {12180#true} {12180#true} #377#return; {12180#true} is VALID [2022-02-21 03:10:09,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {12180#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {12180#true} is VALID [2022-02-21 03:10:09,937 INFO L272 TraceCheckUtils]: 9: Hoare triple {12180#true} call main_#t~ret23#1 := base2flt(1, 0); {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:09,937 INFO L290 TraceCheckUtils]: 10: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,937 INFO L290 TraceCheckUtils]: 11: Hoare triple {12180#true} assume !(0 == ~m % 4294967296); {12180#true} is VALID [2022-02-21 03:10:09,937 INFO L290 TraceCheckUtils]: 12: Hoare triple {12180#true} assume ~m % 4294967296 < 16777216; {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {12180#true} assume !(~e <= -128); {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {12180#true} assume ~e - 1 <= 2147483647; {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 16: Hoare triple {12180#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 17: Hoare triple {12180#true} assume ~m % 4294967296 < 16777216; {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 18: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 19: Hoare triple {12180#true} assume !(~e <= -128); {12180#true} is VALID [2022-02-21 03:10:09,938 INFO L290 TraceCheckUtils]: 20: Hoare triple {12180#true} assume ~e - 1 <= 2147483647; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 21: Hoare triple {12180#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {12180#true} assume ~m % 4294967296 < 16777216; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 23: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 24: Hoare triple {12180#true} assume ~e <= -128;~__retres4~0 := 0; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {12180#true} #res := ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 26: Hoare triple {12180#true} assume true; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {12180#true} {12180#true} #379#return; {12180#true} is VALID [2022-02-21 03:10:09,939 INFO L290 TraceCheckUtils]: 28: Hoare triple {12180#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {12180#true} is VALID [2022-02-21 03:10:09,940 INFO L272 TraceCheckUtils]: 29: Hoare triple {12180#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:09,940 INFO L290 TraceCheckUtils]: 30: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,940 INFO L290 TraceCheckUtils]: 31: Hoare triple {12180#true} assume !(0 == ~m % 4294967296); {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 32: Hoare triple {12180#true} assume !(~m % 4294967296 < 16777216); {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {12180#true} assume !false; {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {12180#true} assume ~m % 4294967296 >= 33554432; {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 35: Hoare triple {12180#true} assume ~e >= 127;~__retres4~0 := 4294967295; {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 36: Hoare triple {12180#true} #res := ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 37: Hoare triple {12180#true} assume true; {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {12180#true} {12180#true} #381#return; {12180#true} is VALID [2022-02-21 03:10:09,941 INFO L290 TraceCheckUtils]: 39: Hoare triple {12180#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {12180#true} is VALID [2022-02-21 03:10:09,942 INFO L272 TraceCheckUtils]: 40: Hoare triple {12180#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:09,942 INFO L290 TraceCheckUtils]: 41: Hoare triple {12222#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12180#true} is VALID [2022-02-21 03:10:09,942 INFO L290 TraceCheckUtils]: 42: Hoare triple {12180#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12223#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} is VALID [2022-02-21 03:10:09,943 INFO L290 TraceCheckUtils]: 43: Hoare triple {12223#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} #res := ~__retres4~0; {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:09,943 INFO L290 TraceCheckUtils]: 44: Hoare triple {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} assume true; {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:09,944 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12224#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} {12180#true} #383#return; {12219#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:09,944 INFO L290 TraceCheckUtils]: 46: Hoare triple {12219#(= |ULTIMATE.start_main_#t~ret25#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {12220#(= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:09,945 INFO L290 TraceCheckUtils]: 47: Hoare triple {12220#(= |ULTIMATE.start_mulflt_~b#1| 0)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {12221#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:09,945 INFO L290 TraceCheckUtils]: 48: Hoare triple {12221#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {12221#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:09,945 INFO L290 TraceCheckUtils]: 49: Hoare triple {12221#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~a#1); {12181#false} is VALID [2022-02-21 03:10:09,945 INFO L290 TraceCheckUtils]: 50: Hoare triple {12181#false} assume !false; {12181#false} is VALID [2022-02-21 03:10:09,946 INFO L290 TraceCheckUtils]: 51: Hoare triple {12181#false} assume !false; {12181#false} is VALID [2022-02-21 03:10:09,946 INFO L290 TraceCheckUtils]: 52: Hoare triple {12181#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {12181#false} is VALID [2022-02-21 03:10:09,946 INFO L290 TraceCheckUtils]: 53: Hoare triple {12181#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {12181#false} is VALID [2022-02-21 03:10:09,946 INFO L290 TraceCheckUtils]: 54: Hoare triple {12181#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {12181#false} is VALID [2022-02-21 03:10:09,946 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 31 trivial. 0 not checked. [2022-02-21 03:10:09,946 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:09,947 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [961426077] [2022-02-21 03:10:09,947 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [961426077] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:09,947 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:09,947 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-21 03:10:09,947 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [849757078] [2022-02-21 03:10:09,947 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:09,948 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 55 [2022-02-21 03:10:09,948 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:09,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:09,972 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:09,972 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-21 03:10:09,972 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:09,973 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-21 03:10:09,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-21 03:10:09,973 INFO L87 Difference]: Start difference. First operand 195 states and 256 transitions. Second operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:10,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:10,540 INFO L93 Difference]: Finished difference Result 429 states and 531 transitions. [2022-02-21 03:10:10,540 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-21 03:10:10,540 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 55 [2022-02-21 03:10:10,541 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:10,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:10,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 347 transitions. [2022-02-21 03:10:10,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:10,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 347 transitions. [2022-02-21 03:10:10,544 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 347 transitions. [2022-02-21 03:10:10,762 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 347 edges. 347 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:10,768 INFO L225 Difference]: With dead ends: 429 [2022-02-21 03:10:10,768 INFO L226 Difference]: Without dead ends: 366 [2022-02-21 03:10:10,769 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-21 03:10:10,769 INFO L933 BasicCegarLoop]: 115 mSDtfsCounter, 223 mSDsluCounter, 636 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 223 SdHoareTripleChecker+Valid, 751 SdHoareTripleChecker+Invalid, 78 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:10,769 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [223 Valid, 751 Invalid, 78 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:10,770 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 366 states. [2022-02-21 03:10:10,835 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 366 to 195. [2022-02-21 03:10:10,835 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:10,835 INFO L82 GeneralOperation]: Start isEquivalent. First operand 366 states. Second operand has 195 states, 175 states have (on average 1.4057142857142857) internal successors, (246), 186 states have internal predecessors, (246), 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:10,836 INFO L74 IsIncluded]: Start isIncluded. First operand 366 states. Second operand has 195 states, 175 states have (on average 1.4057142857142857) internal successors, (246), 186 states have internal predecessors, (246), 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:10,836 INFO L87 Difference]: Start difference. First operand 366 states. Second operand has 195 states, 175 states have (on average 1.4057142857142857) internal successors, (246), 186 states have internal predecessors, (246), 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:10,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:10,841 INFO L93 Difference]: Finished difference Result 366 states and 455 transitions. [2022-02-21 03:10:10,841 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 455 transitions. [2022-02-21 03:10:10,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:10,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:10,842 INFO L74 IsIncluded]: Start isIncluded. First operand has 195 states, 175 states have (on average 1.4057142857142857) internal successors, (246), 186 states have internal predecessors, (246), 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 366 states. [2022-02-21 03:10:10,842 INFO L87 Difference]: Start difference. First operand has 195 states, 175 states have (on average 1.4057142857142857) internal successors, (246), 186 states have internal predecessors, (246), 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 366 states. [2022-02-21 03:10:10,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:10,847 INFO L93 Difference]: Finished difference Result 366 states and 455 transitions. [2022-02-21 03:10:10,847 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 455 transitions. [2022-02-21 03:10:10,847 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:10,847 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:10,847 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:10,848 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:10,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 195 states, 175 states have (on average 1.4057142857142857) internal successors, (246), 186 states have internal predecessors, (246), 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:10,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 195 states to 195 states and 254 transitions. [2022-02-21 03:10:10,850 INFO L78 Accepts]: Start accepts. Automaton has 195 states and 254 transitions. Word has length 55 [2022-02-21 03:10:10,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:10,850 INFO L470 AbstractCegarLoop]: Abstraction has 195 states and 254 transitions. [2022-02-21 03:10:10,850 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:10,851 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 254 transitions. [2022-02-21 03:10:10,851 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-02-21 03:10:10,851 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:10,851 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 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] [2022-02-21 03:10:10,851 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-21 03:10:10,852 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:10,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:10,852 INFO L85 PathProgramCache]: Analyzing trace with hash -43742622, now seen corresponding path program 2 times [2022-02-21 03:10:10,852 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:10,852 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [889927105] [2022-02-21 03:10:10,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:10,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:10,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,879 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:10,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,882 INFO L290 TraceCheckUtils]: 0: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,882 INFO L290 TraceCheckUtils]: 1: Hoare triple {13648#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13648#true} is VALID [2022-02-21 03:10:10,882 INFO L290 TraceCheckUtils]: 2: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,882 INFO L290 TraceCheckUtils]: 3: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:10,882 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {13648#true} {13648#true} #377#return; {13648#true} is VALID [2022-02-21 03:10:10,883 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:10,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,916 INFO L290 TraceCheckUtils]: 0: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,917 INFO L290 TraceCheckUtils]: 3: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,918 INFO L290 TraceCheckUtils]: 4: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,919 INFO L290 TraceCheckUtils]: 10: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,921 INFO L290 TraceCheckUtils]: 13: Hoare triple {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,921 INFO L290 TraceCheckUtils]: 14: Hoare triple {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {13695#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,922 INFO L290 TraceCheckUtils]: 15: Hoare triple {13695#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {13695#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,922 INFO L290 TraceCheckUtils]: 16: Hoare triple {13695#(not (= |base2flt_#in~e| 0))} assume true; {13695#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,923 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {13695#(not (= |base2flt_#in~e| 0))} {13648#true} #379#return; {13649#false} is VALID [2022-02-21 03:10:10,923 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-21 03:10:10,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 0: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 1: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 2: Hoare triple {13648#true} assume !(~m % 4294967296 < 16777216); {13648#true} is VALID [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 3: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 4: Hoare triple {13648#true} assume ~m % 4294967296 >= 33554432; {13648#true} is VALID [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {13648#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13648#true} is VALID [2022-02-21 03:10:10,928 INFO L290 TraceCheckUtils]: 6: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,929 INFO L290 TraceCheckUtils]: 7: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:10,929 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {13648#true} {13649#false} #381#return; {13649#false} is VALID [2022-02-21 03:10:10,929 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-21 03:10:10,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 0: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {13648#true} assume !(~m % 4294967296 < 16777216); {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 3: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 4: Hoare triple {13648#true} assume ~m % 4294967296 >= 33554432; {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {13648#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 6: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {13648#true} {13649#false} #383#return; {13649#false} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 0: Hoare triple {13648#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(22, 2);call #Ultimate.allocInit(12, 3); {13648#true} is VALID [2022-02-21 03:10:10,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {13648#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; {13648#true} is VALID [2022-02-21 03:10:10,946 INFO L272 TraceCheckUtils]: 2: Hoare triple {13648#true} call main_#t~ret22#1 := base2flt(0, 0); {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,946 INFO L290 TraceCheckUtils]: 3: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,946 INFO L290 TraceCheckUtils]: 4: Hoare triple {13648#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13648#true} is VALID [2022-02-21 03:10:10,946 INFO L290 TraceCheckUtils]: 5: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,946 INFO L290 TraceCheckUtils]: 6: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:10,946 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13648#true} {13648#true} #377#return; {13648#true} is VALID [2022-02-21 03:10:10,946 INFO L290 TraceCheckUtils]: 8: Hoare triple {13648#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13648#true} is VALID [2022-02-21 03:10:10,947 INFO L272 TraceCheckUtils]: 9: Hoare triple {13648#true} call main_#t~ret23#1 := base2flt(1, 0); {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,947 INFO L290 TraceCheckUtils]: 10: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,947 INFO L290 TraceCheckUtils]: 11: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,948 INFO L290 TraceCheckUtils]: 12: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,948 INFO L290 TraceCheckUtils]: 13: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,948 INFO L290 TraceCheckUtils]: 14: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,949 INFO L290 TraceCheckUtils]: 15: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,949 INFO L290 TraceCheckUtils]: 16: Hoare triple {13692#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,949 INFO L290 TraceCheckUtils]: 17: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,950 INFO L290 TraceCheckUtils]: 18: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,951 INFO L290 TraceCheckUtils]: 21: Hoare triple {13693#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,951 INFO L290 TraceCheckUtils]: 22: Hoare triple {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,951 INFO L290 TraceCheckUtils]: 23: Hoare triple {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {13694#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {13695#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,952 INFO L290 TraceCheckUtils]: 25: Hoare triple {13695#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {13695#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,952 INFO L290 TraceCheckUtils]: 26: Hoare triple {13695#(not (= |base2flt_#in~e| 0))} assume true; {13695#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,953 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13695#(not (= |base2flt_#in~e| 0))} {13648#true} #379#return; {13649#false} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 28: Hoare triple {13649#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13649#false} is VALID [2022-02-21 03:10:10,953 INFO L272 TraceCheckUtils]: 29: Hoare triple {13649#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 30: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 31: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 32: Hoare triple {13648#true} assume !(~m % 4294967296 < 16777216); {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 33: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {13648#true} assume ~m % 4294967296 >= 33554432; {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 35: Hoare triple {13648#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 36: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,953 INFO L290 TraceCheckUtils]: 37: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {13648#true} {13649#false} #381#return; {13649#false} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 39: Hoare triple {13649#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {13649#false} is VALID [2022-02-21 03:10:10,954 INFO L272 TraceCheckUtils]: 40: Hoare triple {13649#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 41: Hoare triple {13691#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 42: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 43: Hoare triple {13648#true} assume !(~m % 4294967296 < 16777216); {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 44: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 45: Hoare triple {13648#true} assume ~m % 4294967296 >= 33554432; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 46: Hoare triple {13648#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 47: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 48: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:10,954 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {13648#true} {13649#false} #383#return; {13649#false} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 50: Hoare triple {13649#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {13649#false} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 51: Hoare triple {13649#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {13649#false} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 52: Hoare triple {13649#false} assume !(0 == mulflt_~b#1 % 4294967296); {13649#false} is VALID [2022-02-21 03:10:10,954 INFO L290 TraceCheckUtils]: 53: Hoare triple {13649#false} assume !(0 == mulflt_~a#1); {13649#false} is VALID [2022-02-21 03:10:10,955 INFO L290 TraceCheckUtils]: 54: Hoare triple {13649#false} assume !false; {13649#false} is VALID [2022-02-21 03:10:10,955 INFO L290 TraceCheckUtils]: 55: Hoare triple {13649#false} assume !false; {13649#false} is VALID [2022-02-21 03:10:10,955 INFO L290 TraceCheckUtils]: 56: Hoare triple {13649#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {13649#false} is VALID [2022-02-21 03:10:10,955 INFO L290 TraceCheckUtils]: 57: Hoare triple {13649#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {13649#false} is VALID [2022-02-21 03:10:10,955 INFO L290 TraceCheckUtils]: 58: Hoare triple {13649#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {13649#false} is VALID [2022-02-21 03:10:10,955 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 4 proven. 19 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:10,955 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:10,955 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [889927105] [2022-02-21 03:10:10,955 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [889927105] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:10,955 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1291894727] [2022-02-21 03:10:10,955 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:10:10,956 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:10,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:10,957 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:10,989 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:11,022 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-21 03:10:11,022 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:10:11,023 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-21 03:10:11,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:11,035 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 0: Hoare triple {13648#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(22, 2);call #Ultimate.allocInit(12, 3); {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 1: Hoare triple {13648#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; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L272 TraceCheckUtils]: 2: Hoare triple {13648#true} call main_#t~ret22#1 := base2flt(0, 0); {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 3: Hoare triple {13648#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 4: Hoare triple {13648#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 5: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 6: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13648#true} {13648#true} #377#return; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {13648#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13648#true} is VALID [2022-02-21 03:10:11,162 INFO L272 TraceCheckUtils]: 9: Hoare triple {13648#true} call main_#t~ret23#1 := base2flt(1, 0); {13648#true} is VALID [2022-02-21 03:10:11,163 INFO L290 TraceCheckUtils]: 10: Hoare triple {13648#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 12: Hoare triple {13648#true} assume ~m % 4294967296 < 16777216; {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 13: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 14: Hoare triple {13648#true} assume !(~e <= -128); {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 15: Hoare triple {13648#true} assume ~e - 1 <= 2147483647; {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 16: Hoare triple {13648#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {13648#true} assume ~m % 4294967296 < 16777216; {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:11,169 INFO L290 TraceCheckUtils]: 19: Hoare triple {13648#true} assume !(~e <= -128); {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 20: Hoare triple {13648#true} assume ~e - 1 <= 2147483647; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 21: Hoare triple {13648#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 22: Hoare triple {13648#true} assume ~m % 4294967296 < 16777216; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 23: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 24: Hoare triple {13648#true} assume ~e <= -128;~__retres4~0 := 0; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 25: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L290 TraceCheckUtils]: 26: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:11,170 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13648#true} {13648#true} #379#return; {13648#true} is VALID [2022-02-21 03:10:11,171 INFO L290 TraceCheckUtils]: 28: Hoare triple {13648#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13648#true} is VALID [2022-02-21 03:10:11,171 INFO L272 TraceCheckUtils]: 29: Hoare triple {13648#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 30: Hoare triple {13648#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 31: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {13648#true} assume !(~m % 4294967296 < 16777216); {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 33: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 34: Hoare triple {13648#true} assume ~m % 4294967296 >= 33554432; {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 35: Hoare triple {13648#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 36: Hoare triple {13648#true} #res := ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,175 INFO L290 TraceCheckUtils]: 37: Hoare triple {13648#true} assume true; {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {13648#true} {13648#true} #381#return; {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 39: Hoare triple {13648#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L272 TraceCheckUtils]: 40: Hoare triple {13648#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 41: Hoare triple {13648#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 42: Hoare triple {13648#true} assume !(0 == ~m % 4294967296); {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 43: Hoare triple {13648#true} assume !(~m % 4294967296 < 16777216); {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 44: Hoare triple {13648#true} assume !false; {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 45: Hoare triple {13648#true} assume ~m % 4294967296 >= 33554432; {13648#true} is VALID [2022-02-21 03:10:11,176 INFO L290 TraceCheckUtils]: 46: Hoare triple {13648#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13837#(= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:11,177 INFO L290 TraceCheckUtils]: 47: Hoare triple {13837#(= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {13841#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:11,177 INFO L290 TraceCheckUtils]: 48: Hoare triple {13841#(= |base2flt_#res| 4294967295)} assume true; {13841#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:11,178 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {13841#(= |base2flt_#res| 4294967295)} {13648#true} #383#return; {13848#(= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:11,178 INFO L290 TraceCheckUtils]: 50: Hoare triple {13848#(= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {13852#(= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:11,178 INFO L290 TraceCheckUtils]: 51: Hoare triple {13852#(= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,179 INFO L290 TraceCheckUtils]: 52: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,179 INFO L290 TraceCheckUtils]: 53: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,179 INFO L290 TraceCheckUtils]: 54: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,180 INFO L290 TraceCheckUtils]: 55: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,180 INFO L290 TraceCheckUtils]: 56: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,180 INFO L290 TraceCheckUtils]: 57: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:11,181 INFO L290 TraceCheckUtils]: 58: Hoare triple {13856#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {13649#false} is VALID [2022-02-21 03:10:11,181 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-02-21 03:10:11,181 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:11,181 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1291894727] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:11,181 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:11,181 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [7] total 12 [2022-02-21 03:10:11,181 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1771670307] [2022-02-21 03:10:11,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:11,182 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 59 [2022-02-21 03:10:11,182 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:11,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:11,210 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-21 03:10:11,210 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:11,210 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-21 03:10:11,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-02-21 03:10:11,211 INFO L87 Difference]: Start difference. First operand 195 states and 254 transitions. Second operand has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:11,710 INFO L93 Difference]: Finished difference Result 363 states and 453 transitions. [2022-02-21 03:10:11,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-21 03:10:11,710 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 59 [2022-02-21 03:10:11,710 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:11,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 310 transitions. [2022-02-21 03:10:11,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 310 transitions. [2022-02-21 03:10:11,713 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 310 transitions. [2022-02-21 03:10:11,910 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 310 edges. 310 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:11,914 INFO L225 Difference]: With dead ends: 363 [2022-02-21 03:10:11,915 INFO L226 Difference]: Without dead ends: 311 [2022-02-21 03:10:11,915 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-02-21 03:10:11,915 INFO L933 BasicCegarLoop]: 167 mSDtfsCounter, 117 mSDsluCounter, 705 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 117 SdHoareTripleChecker+Valid, 872 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:11,915 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [117 Valid, 872 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:11,916 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 311 states. [2022-02-21 03:10:11,983 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 311 to 222. [2022-02-21 03:10:11,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:11,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 311 states. Second operand has 222 states, 201 states have (on average 1.3781094527363185) internal successors, (277), 212 states have internal predecessors, (277), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:11,984 INFO L74 IsIncluded]: Start isIncluded. First operand 311 states. Second operand has 222 states, 201 states have (on average 1.3781094527363185) internal successors, (277), 212 states have internal predecessors, (277), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:11,984 INFO L87 Difference]: Start difference. First operand 311 states. Second operand has 222 states, 201 states have (on average 1.3781094527363185) internal successors, (277), 212 states have internal predecessors, (277), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:11,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:11,988 INFO L93 Difference]: Finished difference Result 311 states and 387 transitions. [2022-02-21 03:10:11,989 INFO L276 IsEmpty]: Start isEmpty. Operand 311 states and 387 transitions. [2022-02-21 03:10:11,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:11,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:11,990 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 201 states have (on average 1.3781094527363185) internal successors, (277), 212 states have internal predecessors, (277), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 311 states. [2022-02-21 03:10:11,990 INFO L87 Difference]: Start difference. First operand has 222 states, 201 states have (on average 1.3781094527363185) internal successors, (277), 212 states have internal predecessors, (277), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 311 states. [2022-02-21 03:10:11,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:11,994 INFO L93 Difference]: Finished difference Result 311 states and 387 transitions. [2022-02-21 03:10:11,994 INFO L276 IsEmpty]: Start isEmpty. Operand 311 states and 387 transitions. [2022-02-21 03:10:11,994 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:11,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:11,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:11,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:11,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 201 states have (on average 1.3781094527363185) internal successors, (277), 212 states have internal predecessors, (277), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:11,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 286 transitions. [2022-02-21 03:10:11,997 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 286 transitions. Word has length 59 [2022-02-21 03:10:11,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:11,998 INFO L470 AbstractCegarLoop]: Abstraction has 222 states and 286 transitions. [2022-02-21 03:10:11,998 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 5.5) internal successors, (33), 6 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:11,998 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 286 transitions. [2022-02-21 03:10:11,998 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-02-21 03:10:11,998 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:11,999 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 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] [2022-02-21 03:10:12,017 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:12,215 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:12,215 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:12,215 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:12,216 INFO L85 PathProgramCache]: Analyzing trace with hash -853089248, now seen corresponding path program 1 times [2022-02-21 03:10:12,216 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:12,216 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2141656222] [2022-02-21 03:10:12,216 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:12,216 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:12,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,243 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:12,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,247 INFO L290 TraceCheckUtils]: 0: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {15143#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15143#true} is VALID [2022-02-21 03:10:12,248 INFO L290 TraceCheckUtils]: 2: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,248 INFO L290 TraceCheckUtils]: 3: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,248 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {15143#true} {15143#true} #377#return; {15143#true} is VALID [2022-02-21 03:10:12,248 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:12,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,291 INFO L290 TraceCheckUtils]: 0: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,292 INFO L290 TraceCheckUtils]: 2: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,292 INFO L290 TraceCheckUtils]: 3: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,293 INFO L290 TraceCheckUtils]: 4: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,293 INFO L290 TraceCheckUtils]: 5: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,293 INFO L290 TraceCheckUtils]: 6: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,294 INFO L290 TraceCheckUtils]: 7: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,294 INFO L290 TraceCheckUtils]: 8: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,294 INFO L290 TraceCheckUtils]: 9: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,294 INFO L290 TraceCheckUtils]: 10: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,295 INFO L290 TraceCheckUtils]: 11: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:12,295 INFO L290 TraceCheckUtils]: 12: Hoare triple {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:12,296 INFO L290 TraceCheckUtils]: 13: Hoare triple {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:12,296 INFO L290 TraceCheckUtils]: 14: Hoare triple {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {15190#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:12,296 INFO L290 TraceCheckUtils]: 15: Hoare triple {15190#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {15190#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:12,297 INFO L290 TraceCheckUtils]: 16: Hoare triple {15190#(not (= |base2flt_#in~e| 0))} assume true; {15190#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:12,297 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {15190#(not (= |base2flt_#in~e| 0))} {15143#true} #379#return; {15144#false} is VALID [2022-02-21 03:10:12,297 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-21 03:10:12,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,302 INFO L290 TraceCheckUtils]: 0: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {15143#true} assume !(0 == ~m % 4294967296); {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L290 TraceCheckUtils]: 2: Hoare triple {15143#true} assume !(~m % 4294967296 < 16777216); {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L290 TraceCheckUtils]: 3: Hoare triple {15143#true} assume !false; {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L290 TraceCheckUtils]: 4: Hoare triple {15143#true} assume ~m % 4294967296 >= 33554432; {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {15143#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L290 TraceCheckUtils]: 6: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,303 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {15143#true} {15144#false} #381#return; {15144#false} is VALID [2022-02-21 03:10:12,304 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-21 03:10:12,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,307 INFO L290 TraceCheckUtils]: 0: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {15143#true} assume !(0 == ~m % 4294967296); {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {15143#true} assume !(~m % 4294967296 < 16777216); {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L290 TraceCheckUtils]: 3: Hoare triple {15143#true} assume !false; {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L290 TraceCheckUtils]: 4: Hoare triple {15143#true} assume ~m % 4294967296 >= 33554432; {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {15143#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L290 TraceCheckUtils]: 6: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,308 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {15143#true} {15144#false} #383#return; {15144#false} is VALID [2022-02-21 03:10:12,309 INFO L290 TraceCheckUtils]: 0: Hoare triple {15143#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(22, 2);call #Ultimate.allocInit(12, 3); {15143#true} is VALID [2022-02-21 03:10:12,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {15143#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; {15143#true} is VALID [2022-02-21 03:10:12,309 INFO L272 TraceCheckUtils]: 2: Hoare triple {15143#true} call main_#t~ret22#1 := base2flt(0, 0); {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:12,309 INFO L290 TraceCheckUtils]: 3: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,309 INFO L290 TraceCheckUtils]: 4: Hoare triple {15143#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15143#true} is VALID [2022-02-21 03:10:12,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,310 INFO L290 TraceCheckUtils]: 6: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,310 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {15143#true} {15143#true} #377#return; {15143#true} is VALID [2022-02-21 03:10:12,319 INFO L290 TraceCheckUtils]: 8: Hoare triple {15143#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {15143#true} is VALID [2022-02-21 03:10:12,320 INFO L272 TraceCheckUtils]: 9: Hoare triple {15143#true} call main_#t~ret23#1 := base2flt(1, 0); {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:12,320 INFO L290 TraceCheckUtils]: 10: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,321 INFO L290 TraceCheckUtils]: 11: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,321 INFO L290 TraceCheckUtils]: 13: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,322 INFO L290 TraceCheckUtils]: 14: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,322 INFO L290 TraceCheckUtils]: 15: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:12,322 INFO L290 TraceCheckUtils]: 16: Hoare triple {15187#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,323 INFO L290 TraceCheckUtils]: 17: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,323 INFO L290 TraceCheckUtils]: 18: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,323 INFO L290 TraceCheckUtils]: 19: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,323 INFO L290 TraceCheckUtils]: 20: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:12,324 INFO L290 TraceCheckUtils]: 21: Hoare triple {15188#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:12,324 INFO L290 TraceCheckUtils]: 22: Hoare triple {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:12,325 INFO L290 TraceCheckUtils]: 23: Hoare triple {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:12,325 INFO L290 TraceCheckUtils]: 24: Hoare triple {15189#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {15190#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:12,325 INFO L290 TraceCheckUtils]: 25: Hoare triple {15190#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {15190#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:12,326 INFO L290 TraceCheckUtils]: 26: Hoare triple {15190#(not (= |base2flt_#in~e| 0))} assume true; {15190#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:12,326 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15190#(not (= |base2flt_#in~e| 0))} {15143#true} #379#return; {15144#false} is VALID [2022-02-21 03:10:12,326 INFO L290 TraceCheckUtils]: 28: Hoare triple {15144#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {15144#false} is VALID [2022-02-21 03:10:12,326 INFO L272 TraceCheckUtils]: 29: Hoare triple {15144#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:12,326 INFO L290 TraceCheckUtils]: 30: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 31: Hoare triple {15143#true} assume !(0 == ~m % 4294967296); {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 32: Hoare triple {15143#true} assume !(~m % 4294967296 < 16777216); {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 33: Hoare triple {15143#true} assume !false; {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 34: Hoare triple {15143#true} assume ~m % 4294967296 >= 33554432; {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 35: Hoare triple {15143#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 36: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L290 TraceCheckUtils]: 37: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,327 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {15143#true} {15144#false} #381#return; {15144#false} is VALID [2022-02-21 03:10:12,328 INFO L290 TraceCheckUtils]: 39: Hoare triple {15144#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {15144#false} is VALID [2022-02-21 03:10:12,328 INFO L272 TraceCheckUtils]: 40: Hoare triple {15144#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:12,328 INFO L290 TraceCheckUtils]: 41: Hoare triple {15186#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,328 INFO L290 TraceCheckUtils]: 42: Hoare triple {15143#true} assume !(0 == ~m % 4294967296); {15143#true} is VALID [2022-02-21 03:10:12,328 INFO L290 TraceCheckUtils]: 43: Hoare triple {15143#true} assume !(~m % 4294967296 < 16777216); {15143#true} is VALID [2022-02-21 03:10:12,328 INFO L290 TraceCheckUtils]: 44: Hoare triple {15143#true} assume !false; {15143#true} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 45: Hoare triple {15143#true} assume ~m % 4294967296 >= 33554432; {15143#true} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 46: Hoare triple {15143#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15143#true} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 47: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 48: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,329 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {15143#true} {15144#false} #383#return; {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 50: Hoare triple {15144#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 51: Hoare triple {15144#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 52: Hoare triple {15144#false} assume !(0 == mulflt_~b#1 % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 53: Hoare triple {15144#false} assume !(0 == mulflt_~a#1); {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 54: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 55: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 56: Hoare triple {15144#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 57: Hoare triple {15144#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {15144#false} is VALID [2022-02-21 03:10:12,329 INFO L290 TraceCheckUtils]: 58: Hoare triple {15144#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {15144#false} is VALID [2022-02-21 03:10:12,330 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 4 proven. 19 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:12,330 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:12,330 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2141656222] [2022-02-21 03:10:12,330 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2141656222] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:12,330 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [882869981] [2022-02-21 03:10:12,330 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:12,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:12,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:12,331 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:12,332 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:12,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,383 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-21 03:10:12,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:12,394 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:12,554 INFO L290 TraceCheckUtils]: 0: Hoare triple {15143#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(22, 2);call #Ultimate.allocInit(12, 3); {15143#true} is VALID [2022-02-21 03:10:12,554 INFO L290 TraceCheckUtils]: 1: Hoare triple {15143#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; {15143#true} is VALID [2022-02-21 03:10:12,554 INFO L272 TraceCheckUtils]: 2: Hoare triple {15143#true} call main_#t~ret22#1 := base2flt(0, 0); {15143#true} is VALID [2022-02-21 03:10:12,554 INFO L290 TraceCheckUtils]: 3: Hoare triple {15143#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,555 INFO L290 TraceCheckUtils]: 4: Hoare triple {15143#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15143#true} is VALID [2022-02-21 03:10:12,555 INFO L290 TraceCheckUtils]: 5: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,555 INFO L290 TraceCheckUtils]: 6: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,555 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {15143#true} {15143#true} #377#return; {15143#true} is VALID [2022-02-21 03:10:12,555 INFO L290 TraceCheckUtils]: 8: Hoare triple {15143#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {15143#true} is VALID [2022-02-21 03:10:12,555 INFO L272 TraceCheckUtils]: 9: Hoare triple {15143#true} call main_#t~ret23#1 := base2flt(1, 0); {15143#true} is VALID [2022-02-21 03:10:12,556 INFO L290 TraceCheckUtils]: 10: Hoare triple {15143#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15224#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:12,556 INFO L290 TraceCheckUtils]: 11: Hoare triple {15224#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {15224#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:12,556 INFO L290 TraceCheckUtils]: 12: Hoare triple {15224#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {15224#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:12,556 INFO L290 TraceCheckUtils]: 13: Hoare triple {15224#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {15224#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:12,557 INFO L290 TraceCheckUtils]: 14: Hoare triple {15224#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {15224#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:12,557 INFO L290 TraceCheckUtils]: 15: Hoare triple {15224#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {15224#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:12,558 INFO L290 TraceCheckUtils]: 16: Hoare triple {15224#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:12,558 INFO L290 TraceCheckUtils]: 17: Hoare triple {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:12,558 INFO L290 TraceCheckUtils]: 18: Hoare triple {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:12,558 INFO L290 TraceCheckUtils]: 19: Hoare triple {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !(~e <= -128); {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:12,559 INFO L290 TraceCheckUtils]: 20: Hoare triple {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 <= 2147483647; {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:12,559 INFO L290 TraceCheckUtils]: 21: Hoare triple {15243#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15259#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:12,560 INFO L290 TraceCheckUtils]: 22: Hoare triple {15259#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~m % 4294967296 < 16777216; {15259#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:12,560 INFO L290 TraceCheckUtils]: 23: Hoare triple {15259#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !false; {15259#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:12,560 INFO L290 TraceCheckUtils]: 24: Hoare triple {15259#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e <= -128;~__retres4~0 := 0; {15269#(<= (+ 126 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:12,561 INFO L290 TraceCheckUtils]: 25: Hoare triple {15269#(<= (+ 126 |base2flt_#in~e|) 0)} #res := ~__retres4~0; {15269#(<= (+ 126 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:12,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {15269#(<= (+ 126 |base2flt_#in~e|) 0)} assume true; {15269#(<= (+ 126 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:12,561 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15269#(<= (+ 126 |base2flt_#in~e|) 0)} {15143#true} #379#return; {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 28: Hoare triple {15144#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L272 TraceCheckUtils]: 29: Hoare triple {15144#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 30: Hoare triple {15144#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 31: Hoare triple {15144#false} assume !(0 == ~m % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 32: Hoare triple {15144#false} assume !(~m % 4294967296 < 16777216); {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 33: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 34: Hoare triple {15144#false} assume ~m % 4294967296 >= 33554432; {15144#false} is VALID [2022-02-21 03:10:12,562 INFO L290 TraceCheckUtils]: 35: Hoare triple {15144#false} assume ~e >= 127;~__retres4~0 := 4294967295; {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L290 TraceCheckUtils]: 36: Hoare triple {15144#false} #res := ~__retres4~0; {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L290 TraceCheckUtils]: 37: Hoare triple {15144#false} assume true; {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {15144#false} {15144#false} #381#return; {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L290 TraceCheckUtils]: 39: Hoare triple {15144#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L272 TraceCheckUtils]: 40: Hoare triple {15144#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L290 TraceCheckUtils]: 41: Hoare triple {15144#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L290 TraceCheckUtils]: 42: Hoare triple {15144#false} assume !(0 == ~m % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,563 INFO L290 TraceCheckUtils]: 43: Hoare triple {15144#false} assume !(~m % 4294967296 < 16777216); {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 44: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 45: Hoare triple {15144#false} assume ~m % 4294967296 >= 33554432; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 46: Hoare triple {15144#false} assume ~e >= 127;~__retres4~0 := 4294967295; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 47: Hoare triple {15144#false} #res := ~__retres4~0; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 48: Hoare triple {15144#false} assume true; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {15144#false} {15144#false} #383#return; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 50: Hoare triple {15144#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 51: Hoare triple {15144#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,564 INFO L290 TraceCheckUtils]: 52: Hoare triple {15144#false} assume !(0 == mulflt_~b#1 % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L290 TraceCheckUtils]: 53: Hoare triple {15144#false} assume !(0 == mulflt_~a#1); {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L290 TraceCheckUtils]: 54: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L290 TraceCheckUtils]: 55: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L290 TraceCheckUtils]: 56: Hoare triple {15144#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L290 TraceCheckUtils]: 57: Hoare triple {15144#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L290 TraceCheckUtils]: 58: Hoare triple {15144#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {15144#false} is VALID [2022-02-21 03:10:12,565 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 26 proven. 9 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-21 03:10:12,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:12,876 INFO L290 TraceCheckUtils]: 58: Hoare triple {15144#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {15144#false} is VALID [2022-02-21 03:10:12,876 INFO L290 TraceCheckUtils]: 57: Hoare triple {15144#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {15144#false} is VALID [2022-02-21 03:10:12,876 INFO L290 TraceCheckUtils]: 56: Hoare triple {15144#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {15144#false} is VALID [2022-02-21 03:10:12,876 INFO L290 TraceCheckUtils]: 55: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 54: Hoare triple {15144#false} assume !false; {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 53: Hoare triple {15144#false} assume !(0 == mulflt_~a#1); {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 52: Hoare triple {15144#false} assume !(0 == mulflt_~b#1 % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 51: Hoare triple {15144#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 50: Hoare triple {15144#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {15143#true} {15144#false} #383#return; {15144#false} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 48: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 47: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 46: Hoare triple {15143#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 45: Hoare triple {15143#true} assume ~m % 4294967296 >= 33554432; {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 44: Hoare triple {15143#true} assume !false; {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 43: Hoare triple {15143#true} assume !(~m % 4294967296 < 16777216); {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 42: Hoare triple {15143#true} assume !(0 == ~m % 4294967296); {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L290 TraceCheckUtils]: 41: Hoare triple {15143#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,877 INFO L272 TraceCheckUtils]: 40: Hoare triple {15144#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 39: Hoare triple {15144#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {15144#false} is VALID [2022-02-21 03:10:12,878 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {15143#true} {15144#false} #381#return; {15144#false} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 37: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 36: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 35: Hoare triple {15143#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 34: Hoare triple {15143#true} assume ~m % 4294967296 >= 33554432; {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 33: Hoare triple {15143#true} assume !false; {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 32: Hoare triple {15143#true} assume !(~m % 4294967296 < 16777216); {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 31: Hoare triple {15143#true} assume !(0 == ~m % 4294967296); {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 30: Hoare triple {15143#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L272 TraceCheckUtils]: 29: Hoare triple {15144#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {15143#true} is VALID [2022-02-21 03:10:12,878 INFO L290 TraceCheckUtils]: 28: Hoare triple {15144#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {15144#false} is VALID [2022-02-21 03:10:12,884 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15468#(not (<= 0 |base2flt_#in~e|))} {15143#true} #379#return; {15144#false} is VALID [2022-02-21 03:10:12,884 INFO L290 TraceCheckUtils]: 26: Hoare triple {15468#(not (<= 0 |base2flt_#in~e|))} assume true; {15468#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:12,885 INFO L290 TraceCheckUtils]: 25: Hoare triple {15468#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {15468#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:12,885 INFO L290 TraceCheckUtils]: 24: Hoare triple {15478#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {15468#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:12,885 INFO L290 TraceCheckUtils]: 23: Hoare triple {15478#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {15478#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,886 INFO L290 TraceCheckUtils]: 22: Hoare triple {15478#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {15478#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15478#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,887 INFO L290 TraceCheckUtils]: 19: Hoare triple {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,887 INFO L290 TraceCheckUtils]: 18: Hoare triple {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,888 INFO L290 TraceCheckUtils]: 17: Hoare triple {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,888 INFO L290 TraceCheckUtils]: 16: Hoare triple {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15488#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,888 INFO L290 TraceCheckUtils]: 15: Hoare triple {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,889 INFO L290 TraceCheckUtils]: 12: Hoare triple {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,890 INFO L290 TraceCheckUtils]: 11: Hoare triple {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,890 INFO L290 TraceCheckUtils]: 10: Hoare triple {15143#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15504#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:12,890 INFO L272 TraceCheckUtils]: 9: Hoare triple {15143#true} call main_#t~ret23#1 := base2flt(1, 0); {15143#true} is VALID [2022-02-21 03:10:12,890 INFO L290 TraceCheckUtils]: 8: Hoare triple {15143#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {15143#true} is VALID [2022-02-21 03:10:12,890 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {15143#true} {15143#true} #377#return; {15143#true} is VALID [2022-02-21 03:10:12,890 INFO L290 TraceCheckUtils]: 6: Hoare triple {15143#true} assume true; {15143#true} is VALID [2022-02-21 03:10:12,890 INFO L290 TraceCheckUtils]: 5: Hoare triple {15143#true} #res := ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,891 INFO L290 TraceCheckUtils]: 4: Hoare triple {15143#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15143#true} is VALID [2022-02-21 03:10:12,891 INFO L290 TraceCheckUtils]: 3: Hoare triple {15143#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15143#true} is VALID [2022-02-21 03:10:12,891 INFO L272 TraceCheckUtils]: 2: Hoare triple {15143#true} call main_#t~ret22#1 := base2flt(0, 0); {15143#true} is VALID [2022-02-21 03:10:12,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {15143#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; {15143#true} is VALID [2022-02-21 03:10:12,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {15143#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(22, 2);call #Ultimate.allocInit(12, 3); {15143#true} is VALID [2022-02-21 03:10:12,891 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 4 proven. 19 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:12,891 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [882869981] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:12,891 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:12,891 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 15 [2022-02-21 03:10:12,891 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [712699874] [2022-02-21 03:10:12,892 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:12,892 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 59 [2022-02-21 03:10:12,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:12,893 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:12,960 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:12,960 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-02-21 03:10:12,960 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:12,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-02-21 03:10:12,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=142, Unknown=0, NotChecked=0, Total=210 [2022-02-21 03:10:12,961 INFO L87 Difference]: Start difference. First operand 222 states and 286 transitions. Second operand has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:14,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:14,638 INFO L93 Difference]: Finished difference Result 1123 states and 1475 transitions. [2022-02-21 03:10:14,638 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-02-21 03:10:14,638 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 59 [2022-02-21 03:10:14,638 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:14,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:14,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 654 transitions. [2022-02-21 03:10:14,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:14,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 654 transitions. [2022-02-21 03:10:14,647 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 654 transitions. [2022-02-21 03:10:15,119 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 654 edges. 654 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:15,154 INFO L225 Difference]: With dead ends: 1123 [2022-02-21 03:10:15,154 INFO L226 Difference]: Without dead ends: 937 [2022-02-21 03:10:15,156 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 222 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=346, Invalid=710, Unknown=0, NotChecked=0, Total=1056 [2022-02-21 03:10:15,158 INFO L933 BasicCegarLoop]: 114 mSDtfsCounter, 745 mSDsluCounter, 599 mSDsCounter, 0 mSdLazyCounter, 321 mSolverCounterSat, 109 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 745 SdHoareTripleChecker+Valid, 713 SdHoareTripleChecker+Invalid, 430 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 109 IncrementalHoareTripleChecker+Valid, 321 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:15,158 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [745 Valid, 713 Invalid, 430 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [109 Valid, 321 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-21 03:10:15,159 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 937 states. [2022-02-21 03:10:15,259 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 937 to 242. [2022-02-21 03:10:15,260 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:15,260 INFO L82 GeneralOperation]: Start isEquivalent. First operand 937 states. Second operand has 242 states, 221 states have (on average 1.3619909502262444) internal successors, (301), 232 states have internal predecessors, (301), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:15,261 INFO L74 IsIncluded]: Start isIncluded. First operand 937 states. Second operand has 242 states, 221 states have (on average 1.3619909502262444) internal successors, (301), 232 states have internal predecessors, (301), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:15,262 INFO L87 Difference]: Start difference. First operand 937 states. Second operand has 242 states, 221 states have (on average 1.3619909502262444) internal successors, (301), 232 states have internal predecessors, (301), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:15,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:15,288 INFO L93 Difference]: Finished difference Result 937 states and 1213 transitions. [2022-02-21 03:10:15,288 INFO L276 IsEmpty]: Start isEmpty. Operand 937 states and 1213 transitions. [2022-02-21 03:10:15,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:15,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:15,291 INFO L74 IsIncluded]: Start isIncluded. First operand has 242 states, 221 states have (on average 1.3619909502262444) internal successors, (301), 232 states have internal predecessors, (301), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 937 states. [2022-02-21 03:10:15,291 INFO L87 Difference]: Start difference. First operand has 242 states, 221 states have (on average 1.3619909502262444) internal successors, (301), 232 states have internal predecessors, (301), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 937 states. [2022-02-21 03:10:15,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:15,316 INFO L93 Difference]: Finished difference Result 937 states and 1213 transitions. [2022-02-21 03:10:15,317 INFO L276 IsEmpty]: Start isEmpty. Operand 937 states and 1213 transitions. [2022-02-21 03:10:15,322 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:15,322 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:15,322 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:15,322 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:15,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 242 states, 221 states have (on average 1.3619909502262444) internal successors, (301), 232 states have internal predecessors, (301), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:15,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 242 states to 242 states and 310 transitions. [2022-02-21 03:10:15,326 INFO L78 Accepts]: Start accepts. Automaton has 242 states and 310 transitions. Word has length 59 [2022-02-21 03:10:15,326 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:15,326 INFO L470 AbstractCegarLoop]: Abstraction has 242 states and 310 transitions. [2022-02-21 03:10:15,326 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.533333333333333) internal successors, (83), 14 states have internal predecessors, (83), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:15,327 INFO L276 IsEmpty]: Start isEmpty. Operand 242 states and 310 transitions. [2022-02-21 03:10:15,327 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2022-02-21 03:10:15,327 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:15,328 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:15,346 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:15,535 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,SelfDestructingSolverStorable14 [2022-02-21 03:10:15,535 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:15,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:15,536 INFO L85 PathProgramCache]: Analyzing trace with hash 1593333004, now seen corresponding path program 1 times [2022-02-21 03:10:15,536 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:15,536 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1905125946] [2022-02-21 03:10:15,536 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:15,536 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:15,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,581 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:15,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,584 INFO L290 TraceCheckUtils]: 0: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,584 INFO L290 TraceCheckUtils]: 1: Hoare triple {19017#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19017#true} is VALID [2022-02-21 03:10:15,584 INFO L290 TraceCheckUtils]: 2: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,585 INFO L290 TraceCheckUtils]: 3: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,585 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {19017#true} {19017#true} #377#return; {19017#true} is VALID [2022-02-21 03:10:15,585 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:15,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,630 INFO L290 TraceCheckUtils]: 0: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,631 INFO L290 TraceCheckUtils]: 1: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,631 INFO L290 TraceCheckUtils]: 2: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,632 INFO L290 TraceCheckUtils]: 3: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,632 INFO L290 TraceCheckUtils]: 4: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,632 INFO L290 TraceCheckUtils]: 5: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,632 INFO L290 TraceCheckUtils]: 6: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19065#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:15,633 INFO L290 TraceCheckUtils]: 7: Hoare triple {19065#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,633 INFO L290 TraceCheckUtils]: 8: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,634 INFO L290 TraceCheckUtils]: 9: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,634 INFO L290 TraceCheckUtils]: 10: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,634 INFO L290 TraceCheckUtils]: 11: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,634 INFO L290 TraceCheckUtils]: 12: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,635 INFO L290 TraceCheckUtils]: 13: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,635 INFO L290 TraceCheckUtils]: 14: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,635 INFO L290 TraceCheckUtils]: 15: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,635 INFO L290 TraceCheckUtils]: 16: Hoare triple {19066#(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; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,636 INFO L290 TraceCheckUtils]: 17: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,636 INFO L290 TraceCheckUtils]: 18: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,636 INFO L290 TraceCheckUtils]: 19: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume true; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,637 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {19066#(not (= |base2flt_#in~m| 1))} {19017#true} #379#return; {19018#false} is VALID [2022-02-21 03:10:15,637 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 32 [2022-02-21 03:10:15,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,641 INFO L290 TraceCheckUtils]: 0: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,641 INFO L290 TraceCheckUtils]: 1: Hoare triple {19017#true} assume !(0 == ~m % 4294967296); {19017#true} is VALID [2022-02-21 03:10:15,641 INFO L290 TraceCheckUtils]: 2: Hoare triple {19017#true} assume !(~m % 4294967296 < 16777216); {19017#true} is VALID [2022-02-21 03:10:15,641 INFO L290 TraceCheckUtils]: 3: Hoare triple {19017#true} assume !false; {19017#true} is VALID [2022-02-21 03:10:15,641 INFO L290 TraceCheckUtils]: 4: Hoare triple {19017#true} assume ~m % 4294967296 >= 33554432; {19017#true} is VALID [2022-02-21 03:10:15,642 INFO L290 TraceCheckUtils]: 5: Hoare triple {19017#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19017#true} is VALID [2022-02-21 03:10:15,642 INFO L290 TraceCheckUtils]: 6: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,642 INFO L290 TraceCheckUtils]: 7: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,642 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {19017#true} {19018#false} #381#return; {19018#false} is VALID [2022-02-21 03:10:15,642 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 43 [2022-02-21 03:10:15,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 0: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 1: Hoare triple {19017#true} assume !(0 == ~m % 4294967296); {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 2: Hoare triple {19017#true} assume !(~m % 4294967296 < 16777216); {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 3: Hoare triple {19017#true} assume !false; {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 4: Hoare triple {19017#true} assume ~m % 4294967296 >= 33554432; {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 5: Hoare triple {19017#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 6: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,646 INFO L290 TraceCheckUtils]: 7: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,647 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {19017#true} {19018#false} #383#return; {19018#false} is VALID [2022-02-21 03:10:15,647 INFO L290 TraceCheckUtils]: 0: Hoare triple {19017#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(22, 2);call #Ultimate.allocInit(12, 3); {19017#true} is VALID [2022-02-21 03:10:15,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {19017#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; {19017#true} is VALID [2022-02-21 03:10:15,647 INFO L272 TraceCheckUtils]: 2: Hoare triple {19017#true} call main_#t~ret22#1 := base2flt(0, 0); {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:15,647 INFO L290 TraceCheckUtils]: 3: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,648 INFO L290 TraceCheckUtils]: 4: Hoare triple {19017#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19017#true} is VALID [2022-02-21 03:10:15,648 INFO L290 TraceCheckUtils]: 5: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,648 INFO L290 TraceCheckUtils]: 6: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,648 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19017#true} {19017#true} #377#return; {19017#true} is VALID [2022-02-21 03:10:15,648 INFO L290 TraceCheckUtils]: 8: Hoare triple {19017#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {19017#true} is VALID [2022-02-21 03:10:15,649 INFO L272 TraceCheckUtils]: 9: Hoare triple {19017#true} call main_#t~ret23#1 := base2flt(1, 0); {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:15,649 INFO L290 TraceCheckUtils]: 10: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,649 INFO L290 TraceCheckUtils]: 11: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,649 INFO L290 TraceCheckUtils]: 12: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,650 INFO L290 TraceCheckUtils]: 15: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:15,651 INFO L290 TraceCheckUtils]: 16: Hoare triple {19064#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19065#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:15,651 INFO L290 TraceCheckUtils]: 17: Hoare triple {19065#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,651 INFO L290 TraceCheckUtils]: 18: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,652 INFO L290 TraceCheckUtils]: 19: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,652 INFO L290 TraceCheckUtils]: 20: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,652 INFO L290 TraceCheckUtils]: 21: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,652 INFO L290 TraceCheckUtils]: 22: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,653 INFO L290 TraceCheckUtils]: 23: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,653 INFO L290 TraceCheckUtils]: 24: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,653 INFO L290 TraceCheckUtils]: 25: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,654 INFO L290 TraceCheckUtils]: 26: Hoare triple {19066#(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; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,654 INFO L290 TraceCheckUtils]: 27: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,654 INFO L290 TraceCheckUtils]: 28: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,654 INFO L290 TraceCheckUtils]: 29: Hoare triple {19066#(not (= |base2flt_#in~m| 1))} assume true; {19066#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:15,655 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {19066#(not (= |base2flt_#in~m| 1))} {19017#true} #379#return; {19018#false} is VALID [2022-02-21 03:10:15,655 INFO L290 TraceCheckUtils]: 31: Hoare triple {19018#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {19018#false} is VALID [2022-02-21 03:10:15,655 INFO L272 TraceCheckUtils]: 32: Hoare triple {19018#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:15,655 INFO L290 TraceCheckUtils]: 33: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,655 INFO L290 TraceCheckUtils]: 34: Hoare triple {19017#true} assume !(0 == ~m % 4294967296); {19017#true} is VALID [2022-02-21 03:10:15,655 INFO L290 TraceCheckUtils]: 35: Hoare triple {19017#true} assume !(~m % 4294967296 < 16777216); {19017#true} is VALID [2022-02-21 03:10:15,655 INFO L290 TraceCheckUtils]: 36: Hoare triple {19017#true} assume !false; {19017#true} is VALID [2022-02-21 03:10:15,656 INFO L290 TraceCheckUtils]: 37: Hoare triple {19017#true} assume ~m % 4294967296 >= 33554432; {19017#true} is VALID [2022-02-21 03:10:15,656 INFO L290 TraceCheckUtils]: 38: Hoare triple {19017#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19017#true} is VALID [2022-02-21 03:10:15,656 INFO L290 TraceCheckUtils]: 39: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,656 INFO L290 TraceCheckUtils]: 40: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,656 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19017#true} {19018#false} #381#return; {19018#false} is VALID [2022-02-21 03:10:15,656 INFO L290 TraceCheckUtils]: 42: Hoare triple {19018#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {19018#false} is VALID [2022-02-21 03:10:15,656 INFO L272 TraceCheckUtils]: 43: Hoare triple {19018#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:15,656 INFO L290 TraceCheckUtils]: 44: Hoare triple {19063#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 45: Hoare triple {19017#true} assume !(0 == ~m % 4294967296); {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 46: Hoare triple {19017#true} assume !(~m % 4294967296 < 16777216); {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 47: Hoare triple {19017#true} assume !false; {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 48: Hoare triple {19017#true} assume ~m % 4294967296 >= 33554432; {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 49: Hoare triple {19017#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 50: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 51: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,657 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {19017#true} {19018#false} #383#return; {19018#false} is VALID [2022-02-21 03:10:15,657 INFO L290 TraceCheckUtils]: 53: Hoare triple {19018#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 54: Hoare triple {19018#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 55: Hoare triple {19018#false} assume !(0 == mulflt_~b#1 % 4294967296); {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 56: Hoare triple {19018#false} assume !(0 == mulflt_~a#1); {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 57: Hoare triple {19018#false} assume !false; {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 58: Hoare triple {19018#false} assume !false; {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 59: Hoare triple {19018#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 60: Hoare triple {19018#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {19018#false} is VALID [2022-02-21 03:10:15,658 INFO L290 TraceCheckUtils]: 61: Hoare triple {19018#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {19018#false} is VALID [2022-02-21 03:10:15,659 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 4 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:15,659 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:15,659 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1905125946] [2022-02-21 03:10:15,660 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1905125946] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:15,660 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1100310049] [2022-02-21 03:10:15,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:15,660 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:15,661 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:15,664 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:15,665 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:15,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,718 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-21 03:10:15,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:15,728 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:15,870 INFO L290 TraceCheckUtils]: 0: Hoare triple {19017#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(22, 2);call #Ultimate.allocInit(12, 3); {19017#true} is VALID [2022-02-21 03:10:15,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {19017#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; {19017#true} is VALID [2022-02-21 03:10:15,870 INFO L272 TraceCheckUtils]: 2: Hoare triple {19017#true} call main_#t~ret22#1 := base2flt(0, 0); {19017#true} is VALID [2022-02-21 03:10:15,870 INFO L290 TraceCheckUtils]: 3: Hoare triple {19017#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L290 TraceCheckUtils]: 4: Hoare triple {19017#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {19017#true} #res := ~__retres4~0; {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L290 TraceCheckUtils]: 6: Hoare triple {19017#true} assume true; {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19017#true} {19017#true} #377#return; {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {19017#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L272 TraceCheckUtils]: 9: Hoare triple {19017#true} call main_#t~ret23#1 := base2flt(1, 0); {19017#true} is VALID [2022-02-21 03:10:15,871 INFO L290 TraceCheckUtils]: 10: Hoare triple {19017#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19100#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:15,872 INFO L290 TraceCheckUtils]: 11: Hoare triple {19100#(= base2flt_~m |base2flt_#in~m|)} assume !(0 == ~m % 4294967296); {19100#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:15,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {19100#(= base2flt_~m |base2flt_#in~m|)} assume ~m % 4294967296 < 16777216; {19100#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:15,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {19100#(= base2flt_~m |base2flt_#in~m|)} assume !false; {19100#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:15,873 INFO L290 TraceCheckUtils]: 14: Hoare triple {19100#(= base2flt_~m |base2flt_#in~m|)} assume !(~e <= -128); {19100#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:15,873 INFO L290 TraceCheckUtils]: 15: Hoare triple {19100#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 <= 2147483647; {19100#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:15,873 INFO L290 TraceCheckUtils]: 16: Hoare triple {19100#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19119#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:15,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {19119#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !(~m % 4294967296 < 16777216); {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,875 INFO L290 TraceCheckUtils]: 19: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,875 INFO L290 TraceCheckUtils]: 20: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,875 INFO L290 TraceCheckUtils]: 21: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,875 INFO L290 TraceCheckUtils]: 22: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,876 INFO L290 TraceCheckUtils]: 23: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,876 INFO L290 TraceCheckUtils]: 25: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,877 INFO L290 TraceCheckUtils]: 26: Hoare triple {19123#(not (< (mod (* 2 |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; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,877 INFO L290 TraceCheckUtils]: 27: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} ~__retres4~0 := ~res~0; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,877 INFO L290 TraceCheckUtils]: 28: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} #res := ~__retres4~0; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,877 INFO L290 TraceCheckUtils]: 29: Hoare triple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} assume true; {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:15,878 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {19123#(not (< (mod (* 2 |base2flt_#in~m|) 4294967296) 16777216))} {19017#true} #379#return; {19018#false} is VALID [2022-02-21 03:10:15,878 INFO L290 TraceCheckUtils]: 31: Hoare triple {19018#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {19018#false} is VALID [2022-02-21 03:10:15,878 INFO L272 TraceCheckUtils]: 32: Hoare triple {19018#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {19018#false} is VALID [2022-02-21 03:10:15,878 INFO L290 TraceCheckUtils]: 33: Hoare triple {19018#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19018#false} is VALID [2022-02-21 03:10:15,878 INFO L290 TraceCheckUtils]: 34: Hoare triple {19018#false} assume !(0 == ~m % 4294967296); {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 35: Hoare triple {19018#false} assume !(~m % 4294967296 < 16777216); {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 36: Hoare triple {19018#false} assume !false; {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 37: Hoare triple {19018#false} assume ~m % 4294967296 >= 33554432; {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 38: Hoare triple {19018#false} assume ~e >= 127;~__retres4~0 := 4294967295; {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 39: Hoare triple {19018#false} #res := ~__retres4~0; {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 40: Hoare triple {19018#false} assume true; {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19018#false} {19018#false} #381#return; {19018#false} is VALID [2022-02-21 03:10:15,879 INFO L290 TraceCheckUtils]: 42: Hoare triple {19018#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L272 TraceCheckUtils]: 43: Hoare triple {19018#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 44: Hoare triple {19018#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 45: Hoare triple {19018#false} assume !(0 == ~m % 4294967296); {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 46: Hoare triple {19018#false} assume !(~m % 4294967296 < 16777216); {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 47: Hoare triple {19018#false} assume !false; {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 48: Hoare triple {19018#false} assume ~m % 4294967296 >= 33554432; {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 49: Hoare triple {19018#false} assume ~e >= 127;~__retres4~0 := 4294967295; {19018#false} is VALID [2022-02-21 03:10:15,880 INFO L290 TraceCheckUtils]: 50: Hoare triple {19018#false} #res := ~__retres4~0; {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 51: Hoare triple {19018#false} assume true; {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {19018#false} {19018#false} #383#return; {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 53: Hoare triple {19018#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 54: Hoare triple {19018#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 55: Hoare triple {19018#false} assume !(0 == mulflt_~b#1 % 4294967296); {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 56: Hoare triple {19018#false} assume !(0 == mulflt_~a#1); {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 57: Hoare triple {19018#false} assume !false; {19018#false} is VALID [2022-02-21 03:10:15,881 INFO L290 TraceCheckUtils]: 58: Hoare triple {19018#false} assume !false; {19018#false} is VALID [2022-02-21 03:10:15,882 INFO L290 TraceCheckUtils]: 59: Hoare triple {19018#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {19018#false} is VALID [2022-02-21 03:10:15,882 INFO L290 TraceCheckUtils]: 60: Hoare triple {19018#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {19018#false} is VALID [2022-02-21 03:10:15,882 INFO L290 TraceCheckUtils]: 61: Hoare triple {19018#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {19018#false} is VALID [2022-02-21 03:10:15,882 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 26 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-21 03:10:15,882 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:15,882 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1100310049] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:15,882 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:15,883 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 9 [2022-02-21 03:10:15,884 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [907859077] [2022-02-21 03:10:15,884 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:15,885 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 62 [2022-02-21 03:10:15,886 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:15,886 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:10:15,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:15,918 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:15,918 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:15,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:15,919 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-02-21 03:10:15,919 INFO L87 Difference]: Start difference. First operand 242 states and 310 transitions. Second operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:10:16,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:16,592 INFO L93 Difference]: Finished difference Result 557 states and 716 transitions. [2022-02-21 03:10:16,592 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-21 03:10:16,592 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 62 [2022-02-21 03:10:16,592 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:16,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:10:16,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 325 transitions. [2022-02-21 03:10:16,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:10:16,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 325 transitions. [2022-02-21 03:10:16,596 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 325 transitions. [2022-02-21 03:10:16,787 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:10:16,792 INFO L225 Difference]: With dead ends: 557 [2022-02-21 03:10:16,792 INFO L226 Difference]: Without dead ends: 347 [2022-02-21 03:10:16,793 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 69 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2022-02-21 03:10:16,793 INFO L933 BasicCegarLoop]: 124 mSDtfsCounter, 59 mSDsluCounter, 302 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 426 SdHoareTripleChecker+Invalid, 193 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:16,793 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [59 Valid, 426 Invalid, 193 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 185 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:16,794 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 347 states. [2022-02-21 03:10:16,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 347 to 274. [2022-02-21 03:10:16,931 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:16,931 INFO L82 GeneralOperation]: Start isEquivalent. First operand 347 states. Second operand has 274 states, 253 states have (on average 1.3359683794466404) internal successors, (338), 264 states have internal predecessors, (338), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:16,932 INFO L74 IsIncluded]: Start isIncluded. First operand 347 states. Second operand has 274 states, 253 states have (on average 1.3359683794466404) internal successors, (338), 264 states have internal predecessors, (338), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:16,932 INFO L87 Difference]: Start difference. First operand 347 states. Second operand has 274 states, 253 states have (on average 1.3359683794466404) internal successors, (338), 264 states have internal predecessors, (338), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:16,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:16,936 INFO L93 Difference]: Finished difference Result 347 states and 438 transitions. [2022-02-21 03:10:16,936 INFO L276 IsEmpty]: Start isEmpty. Operand 347 states and 438 transitions. [2022-02-21 03:10:16,937 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:16,937 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:16,937 INFO L74 IsIncluded]: Start isIncluded. First operand has 274 states, 253 states have (on average 1.3359683794466404) internal successors, (338), 264 states have internal predecessors, (338), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 347 states. [2022-02-21 03:10:16,937 INFO L87 Difference]: Start difference. First operand has 274 states, 253 states have (on average 1.3359683794466404) internal successors, (338), 264 states have internal predecessors, (338), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 347 states. [2022-02-21 03:10:16,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:16,941 INFO L93 Difference]: Finished difference Result 347 states and 438 transitions. [2022-02-21 03:10:16,942 INFO L276 IsEmpty]: Start isEmpty. Operand 347 states and 438 transitions. [2022-02-21 03:10:16,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:16,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:16,942 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:16,942 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:16,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 274 states, 253 states have (on average 1.3359683794466404) internal successors, (338), 264 states have internal predecessors, (338), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:16,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 274 states to 274 states and 347 transitions. [2022-02-21 03:10:16,946 INFO L78 Accepts]: Start accepts. Automaton has 274 states and 347 transitions. Word has length 62 [2022-02-21 03:10:16,946 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:16,946 INFO L470 AbstractCegarLoop]: Abstraction has 274 states and 347 transitions. [2022-02-21 03:10:16,946 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-21 03:10:16,946 INFO L276 IsEmpty]: Start isEmpty. Operand 274 states and 347 transitions. [2022-02-21 03:10:16,947 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-02-21 03:10:16,947 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:16,947 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:16,963 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:17,163 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,SelfDestructingSolverStorable15 [2022-02-21 03:10:17,163 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:17,163 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:17,163 INFO L85 PathProgramCache]: Analyzing trace with hash -668242174, now seen corresponding path program 1 times [2022-02-21 03:10:17,164 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:17,164 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [885438542] [2022-02-21 03:10:17,164 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:17,164 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:17,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,211 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:17,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,214 INFO L290 TraceCheckUtils]: 0: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {20890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20890#true} is VALID [2022-02-21 03:10:17,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,215 INFO L290 TraceCheckUtils]: 3: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,215 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {20890#true} {20890#true} #377#return; {20890#true} is VALID [2022-02-21 03:10:17,215 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:17,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,277 INFO L290 TraceCheckUtils]: 0: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,277 INFO L290 TraceCheckUtils]: 1: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,277 INFO L290 TraceCheckUtils]: 2: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,278 INFO L290 TraceCheckUtils]: 3: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,278 INFO L290 TraceCheckUtils]: 4: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,278 INFO L290 TraceCheckUtils]: 5: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,279 INFO L290 TraceCheckUtils]: 6: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,280 INFO L290 TraceCheckUtils]: 8: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,280 INFO L290 TraceCheckUtils]: 9: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,281 INFO L290 TraceCheckUtils]: 10: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,281 INFO L290 TraceCheckUtils]: 11: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20944#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,282 INFO L290 TraceCheckUtils]: 12: Hoare triple {20944#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,282 INFO L290 TraceCheckUtils]: 13: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,282 INFO L290 TraceCheckUtils]: 14: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,283 INFO L290 TraceCheckUtils]: 15: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,283 INFO L290 TraceCheckUtils]: 16: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,283 INFO L290 TraceCheckUtils]: 17: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,283 INFO L290 TraceCheckUtils]: 18: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,284 INFO L290 TraceCheckUtils]: 19: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,284 INFO L290 TraceCheckUtils]: 20: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,284 INFO L290 TraceCheckUtils]: 21: Hoare triple {20945#(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; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,284 INFO L290 TraceCheckUtils]: 22: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,285 INFO L290 TraceCheckUtils]: 23: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,285 INFO L290 TraceCheckUtils]: 24: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume true; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,285 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {20945#(not (= |base2flt_#in~m| 1))} {20890#true} #379#return; {20891#false} is VALID [2022-02-21 03:10:17,286 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 37 [2022-02-21 03:10:17,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,291 INFO L290 TraceCheckUtils]: 0: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,291 INFO L290 TraceCheckUtils]: 1: Hoare triple {20890#true} assume !(0 == ~m % 4294967296); {20890#true} is VALID [2022-02-21 03:10:17,291 INFO L290 TraceCheckUtils]: 2: Hoare triple {20890#true} assume !(~m % 4294967296 < 16777216); {20890#true} is VALID [2022-02-21 03:10:17,291 INFO L290 TraceCheckUtils]: 3: Hoare triple {20890#true} assume !false; {20890#true} is VALID [2022-02-21 03:10:17,291 INFO L290 TraceCheckUtils]: 4: Hoare triple {20890#true} assume ~m % 4294967296 >= 33554432; {20890#true} is VALID [2022-02-21 03:10:17,292 INFO L290 TraceCheckUtils]: 5: Hoare triple {20890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {20890#true} is VALID [2022-02-21 03:10:17,292 INFO L290 TraceCheckUtils]: 6: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,292 INFO L290 TraceCheckUtils]: 7: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,292 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {20890#true} {20891#false} #381#return; {20891#false} is VALID [2022-02-21 03:10:17,292 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-21 03:10:17,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,295 INFO L290 TraceCheckUtils]: 0: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 1: Hoare triple {20890#true} assume !(0 == ~m % 4294967296); {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 2: Hoare triple {20890#true} assume !(~m % 4294967296 < 16777216); {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 3: Hoare triple {20890#true} assume !false; {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 4: Hoare triple {20890#true} assume ~m % 4294967296 >= 33554432; {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 5: Hoare triple {20890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 6: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,296 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {20890#true} {20891#false} #383#return; {20891#false} is VALID [2022-02-21 03:10:17,297 INFO L290 TraceCheckUtils]: 0: Hoare triple {20890#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(22, 2);call #Ultimate.allocInit(12, 3); {20890#true} is VALID [2022-02-21 03:10:17,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {20890#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; {20890#true} is VALID [2022-02-21 03:10:17,297 INFO L272 TraceCheckUtils]: 2: Hoare triple {20890#true} call main_#t~ret22#1 := base2flt(0, 0); {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:17,297 INFO L290 TraceCheckUtils]: 3: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,297 INFO L290 TraceCheckUtils]: 4: Hoare triple {20890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20890#true} is VALID [2022-02-21 03:10:17,297 INFO L290 TraceCheckUtils]: 5: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,298 INFO L290 TraceCheckUtils]: 6: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,298 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {20890#true} {20890#true} #377#return; {20890#true} is VALID [2022-02-21 03:10:17,298 INFO L290 TraceCheckUtils]: 8: Hoare triple {20890#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {20890#true} is VALID [2022-02-21 03:10:17,298 INFO L272 TraceCheckUtils]: 9: Hoare triple {20890#true} call main_#t~ret23#1 := base2flt(1, 0); {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:17,299 INFO L290 TraceCheckUtils]: 10: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,299 INFO L290 TraceCheckUtils]: 12: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,300 INFO L290 TraceCheckUtils]: 14: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,300 INFO L290 TraceCheckUtils]: 15: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:17,300 INFO L290 TraceCheckUtils]: 16: Hoare triple {20942#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,301 INFO L290 TraceCheckUtils]: 17: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,301 INFO L290 TraceCheckUtils]: 18: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,302 INFO L290 TraceCheckUtils]: 19: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,302 INFO L290 TraceCheckUtils]: 20: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {20943#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20944#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,303 INFO L290 TraceCheckUtils]: 22: Hoare triple {20944#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,304 INFO L290 TraceCheckUtils]: 23: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,304 INFO L290 TraceCheckUtils]: 24: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,304 INFO L290 TraceCheckUtils]: 25: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,304 INFO L290 TraceCheckUtils]: 26: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,305 INFO L290 TraceCheckUtils]: 27: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,305 INFO L290 TraceCheckUtils]: 28: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,305 INFO L290 TraceCheckUtils]: 29: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,305 INFO L290 TraceCheckUtils]: 30: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,306 INFO L290 TraceCheckUtils]: 31: Hoare triple {20945#(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; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,306 INFO L290 TraceCheckUtils]: 32: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,306 INFO L290 TraceCheckUtils]: 33: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,306 INFO L290 TraceCheckUtils]: 34: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume true; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,307 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {20945#(not (= |base2flt_#in~m| 1))} {20890#true} #379#return; {20891#false} is VALID [2022-02-21 03:10:17,307 INFO L290 TraceCheckUtils]: 36: Hoare triple {20891#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {20891#false} is VALID [2022-02-21 03:10:17,307 INFO L272 TraceCheckUtils]: 37: Hoare triple {20891#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:17,307 INFO L290 TraceCheckUtils]: 38: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {20890#true} assume !(0 == ~m % 4294967296); {20890#true} is VALID [2022-02-21 03:10:17,307 INFO L290 TraceCheckUtils]: 40: Hoare triple {20890#true} assume !(~m % 4294967296 < 16777216); {20890#true} is VALID [2022-02-21 03:10:17,308 INFO L290 TraceCheckUtils]: 41: Hoare triple {20890#true} assume !false; {20890#true} is VALID [2022-02-21 03:10:17,308 INFO L290 TraceCheckUtils]: 42: Hoare triple {20890#true} assume ~m % 4294967296 >= 33554432; {20890#true} is VALID [2022-02-21 03:10:17,308 INFO L290 TraceCheckUtils]: 43: Hoare triple {20890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {20890#true} is VALID [2022-02-21 03:10:17,308 INFO L290 TraceCheckUtils]: 44: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,308 INFO L290 TraceCheckUtils]: 45: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,308 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20890#true} {20891#false} #381#return; {20891#false} is VALID [2022-02-21 03:10:17,308 INFO L290 TraceCheckUtils]: 47: Hoare triple {20891#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {20891#false} is VALID [2022-02-21 03:10:17,308 INFO L272 TraceCheckUtils]: 48: Hoare triple {20891#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 49: Hoare triple {20941#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 50: Hoare triple {20890#true} assume !(0 == ~m % 4294967296); {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 51: Hoare triple {20890#true} assume !(~m % 4294967296 < 16777216); {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 52: Hoare triple {20890#true} assume !false; {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 53: Hoare triple {20890#true} assume ~m % 4294967296 >= 33554432; {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 54: Hoare triple {20890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 55: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L290 TraceCheckUtils]: 56: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,309 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20890#true} {20891#false} #383#return; {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 58: Hoare triple {20891#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 59: Hoare triple {20891#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 60: Hoare triple {20891#false} assume !(0 == mulflt_~b#1 % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 61: Hoare triple {20891#false} assume !(0 == mulflt_~a#1); {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 62: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 63: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 64: Hoare triple {20891#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 65: Hoare triple {20891#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {20891#false} is VALID [2022-02-21 03:10:17,310 INFO L290 TraceCheckUtils]: 66: Hoare triple {20891#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {20891#false} is VALID [2022-02-21 03:10:17,311 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 4 proven. 15 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:17,312 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:17,312 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [885438542] [2022-02-21 03:10:17,312 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [885438542] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:17,312 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1494920594] [2022-02-21 03:10:17,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:17,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:17,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:17,313 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:17,315 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:17,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,366 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-21 03:10:17,379 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:17,380 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:17,550 INFO L290 TraceCheckUtils]: 0: Hoare triple {20890#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(22, 2);call #Ultimate.allocInit(12, 3); {20890#true} is VALID [2022-02-21 03:10:17,550 INFO L290 TraceCheckUtils]: 1: Hoare triple {20890#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; {20890#true} is VALID [2022-02-21 03:10:17,550 INFO L272 TraceCheckUtils]: 2: Hoare triple {20890#true} call main_#t~ret22#1 := base2flt(0, 0); {20890#true} is VALID [2022-02-21 03:10:17,550 INFO L290 TraceCheckUtils]: 3: Hoare triple {20890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,550 INFO L290 TraceCheckUtils]: 4: Hoare triple {20890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20890#true} is VALID [2022-02-21 03:10:17,550 INFO L290 TraceCheckUtils]: 5: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,550 INFO L290 TraceCheckUtils]: 6: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,551 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {20890#true} {20890#true} #377#return; {20890#true} is VALID [2022-02-21 03:10:17,551 INFO L290 TraceCheckUtils]: 8: Hoare triple {20890#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {20890#true} is VALID [2022-02-21 03:10:17,551 INFO L272 TraceCheckUtils]: 9: Hoare triple {20890#true} call main_#t~ret23#1 := base2flt(1, 0); {20890#true} is VALID [2022-02-21 03:10:17,551 INFO L290 TraceCheckUtils]: 10: Hoare triple {20890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20979#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,551 INFO L290 TraceCheckUtils]: 11: Hoare triple {20979#(= base2flt_~m |base2flt_#in~m|)} assume !(0 == ~m % 4294967296); {20979#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,552 INFO L290 TraceCheckUtils]: 12: Hoare triple {20979#(= base2flt_~m |base2flt_#in~m|)} assume ~m % 4294967296 < 16777216; {20979#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,552 INFO L290 TraceCheckUtils]: 13: Hoare triple {20979#(= base2flt_~m |base2flt_#in~m|)} assume !false; {20979#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,552 INFO L290 TraceCheckUtils]: 14: Hoare triple {20979#(= base2flt_~m |base2flt_#in~m|)} assume !(~e <= -128); {20979#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,553 INFO L290 TraceCheckUtils]: 15: Hoare triple {20979#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 <= 2147483647; {20979#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:17,553 INFO L290 TraceCheckUtils]: 16: Hoare triple {20979#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,553 INFO L290 TraceCheckUtils]: 17: Hoare triple {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,554 INFO L290 TraceCheckUtils]: 18: Hoare triple {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !false; {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,554 INFO L290 TraceCheckUtils]: 19: Hoare triple {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,554 INFO L290 TraceCheckUtils]: 20: Hoare triple {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:17,555 INFO L290 TraceCheckUtils]: 21: Hoare triple {20998#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {21014#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:17,556 INFO L290 TraceCheckUtils]: 22: Hoare triple {21014#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !(~m % 4294967296 < 16777216); {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,556 INFO L290 TraceCheckUtils]: 23: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,557 INFO L290 TraceCheckUtils]: 24: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,557 INFO L290 TraceCheckUtils]: 25: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,557 INFO L290 TraceCheckUtils]: 26: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,558 INFO L290 TraceCheckUtils]: 27: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,558 INFO L290 TraceCheckUtils]: 28: Hoare triple {21018#(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))); {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,558 INFO L290 TraceCheckUtils]: 29: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,558 INFO L290 TraceCheckUtils]: 30: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,559 INFO L290 TraceCheckUtils]: 31: Hoare triple {21018#(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; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,559 INFO L290 TraceCheckUtils]: 32: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} ~__retres4~0 := ~res~0; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,559 INFO L290 TraceCheckUtils]: 33: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} #res := ~__retres4~0; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,560 INFO L290 TraceCheckUtils]: 34: Hoare triple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume true; {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:17,560 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {21018#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} {20890#true} #379#return; {20891#false} is VALID [2022-02-21 03:10:17,560 INFO L290 TraceCheckUtils]: 36: Hoare triple {20891#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {20891#false} is VALID [2022-02-21 03:10:17,560 INFO L272 TraceCheckUtils]: 37: Hoare triple {20891#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 38: Hoare triple {20891#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 39: Hoare triple {20891#false} assume !(0 == ~m % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 40: Hoare triple {20891#false} assume !(~m % 4294967296 < 16777216); {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 41: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 42: Hoare triple {20891#false} assume ~m % 4294967296 >= 33554432; {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 43: Hoare triple {20891#false} assume ~e >= 127;~__retres4~0 := 4294967295; {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 44: Hoare triple {20891#false} #res := ~__retres4~0; {20891#false} is VALID [2022-02-21 03:10:17,561 INFO L290 TraceCheckUtils]: 45: Hoare triple {20891#false} assume true; {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20891#false} {20891#false} #381#return; {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L290 TraceCheckUtils]: 47: Hoare triple {20891#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L272 TraceCheckUtils]: 48: Hoare triple {20891#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L290 TraceCheckUtils]: 49: Hoare triple {20891#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L290 TraceCheckUtils]: 50: Hoare triple {20891#false} assume !(0 == ~m % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L290 TraceCheckUtils]: 51: Hoare triple {20891#false} assume !(~m % 4294967296 < 16777216); {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L290 TraceCheckUtils]: 52: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,562 INFO L290 TraceCheckUtils]: 53: Hoare triple {20891#false} assume ~m % 4294967296 >= 33554432; {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 54: Hoare triple {20891#false} assume ~e >= 127;~__retres4~0 := 4294967295; {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 55: Hoare triple {20891#false} #res := ~__retres4~0; {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 56: Hoare triple {20891#false} assume true; {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20891#false} {20891#false} #383#return; {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 58: Hoare triple {20891#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 59: Hoare triple {20891#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 60: Hoare triple {20891#false} assume !(0 == mulflt_~b#1 % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 61: Hoare triple {20891#false} assume !(0 == mulflt_~a#1); {20891#false} is VALID [2022-02-21 03:10:17,563 INFO L290 TraceCheckUtils]: 62: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,564 INFO L290 TraceCheckUtils]: 63: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,564 INFO L290 TraceCheckUtils]: 64: Hoare triple {20891#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {20891#false} is VALID [2022-02-21 03:10:17,564 INFO L290 TraceCheckUtils]: 65: Hoare triple {20891#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {20891#false} is VALID [2022-02-21 03:10:17,564 INFO L290 TraceCheckUtils]: 66: Hoare triple {20891#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {20891#false} is VALID [2022-02-21 03:10:17,564 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 26 proven. 5 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-21 03:10:17,564 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 66: Hoare triple {20891#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 65: Hoare triple {20891#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 64: Hoare triple {20891#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 63: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 62: Hoare triple {20891#false} assume !false; {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 61: Hoare triple {20891#false} assume !(0 == mulflt_~a#1); {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 60: Hoare triple {20891#false} assume !(0 == mulflt_~b#1 % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 59: Hoare triple {20891#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L290 TraceCheckUtils]: 58: Hoare triple {20891#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {20891#false} is VALID [2022-02-21 03:10:17,838 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20890#true} {20891#false} #383#return; {20891#false} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 56: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 55: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 54: Hoare triple {20890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 53: Hoare triple {20890#true} assume ~m % 4294967296 >= 33554432; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 52: Hoare triple {20890#true} assume !false; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 51: Hoare triple {20890#true} assume !(~m % 4294967296 < 16777216); {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 50: Hoare triple {20890#true} assume !(0 == ~m % 4294967296); {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 49: Hoare triple {20890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L272 TraceCheckUtils]: 48: Hoare triple {20891#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 47: Hoare triple {20891#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {20891#false} is VALID [2022-02-21 03:10:17,839 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20890#true} {20891#false} #381#return; {20891#false} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 45: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 44: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 43: Hoare triple {20890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 42: Hoare triple {20890#true} assume ~m % 4294967296 >= 33554432; {20890#true} is VALID [2022-02-21 03:10:17,839 INFO L290 TraceCheckUtils]: 41: Hoare triple {20890#true} assume !false; {20890#true} is VALID [2022-02-21 03:10:17,840 INFO L290 TraceCheckUtils]: 40: Hoare triple {20890#true} assume !(~m % 4294967296 < 16777216); {20890#true} is VALID [2022-02-21 03:10:17,840 INFO L290 TraceCheckUtils]: 39: Hoare triple {20890#true} assume !(0 == ~m % 4294967296); {20890#true} is VALID [2022-02-21 03:10:17,840 INFO L290 TraceCheckUtils]: 38: Hoare triple {20890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,840 INFO L272 TraceCheckUtils]: 37: Hoare triple {20891#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {20890#true} is VALID [2022-02-21 03:10:17,840 INFO L290 TraceCheckUtils]: 36: Hoare triple {20891#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {20891#false} is VALID [2022-02-21 03:10:17,840 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {20945#(not (= |base2flt_#in~m| 1))} {20890#true} #379#return; {20891#false} is VALID [2022-02-21 03:10:17,841 INFO L290 TraceCheckUtils]: 34: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume true; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,841 INFO L290 TraceCheckUtils]: 33: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,841 INFO L290 TraceCheckUtils]: 32: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {20945#(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; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,842 INFO L290 TraceCheckUtils]: 29: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,842 INFO L290 TraceCheckUtils]: 28: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,843 INFO L290 TraceCheckUtils]: 26: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,843 INFO L290 TraceCheckUtils]: 25: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,843 INFO L290 TraceCheckUtils]: 24: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,844 INFO L290 TraceCheckUtils]: 23: Hoare triple {20945#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,844 INFO L290 TraceCheckUtils]: 22: Hoare triple {21286#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {20945#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:17,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {21286#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,846 INFO L290 TraceCheckUtils]: 19: Hoare triple {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,846 INFO L290 TraceCheckUtils]: 18: Hoare triple {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,848 INFO L290 TraceCheckUtils]: 16: Hoare triple {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {21290#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,849 INFO L290 TraceCheckUtils]: 15: Hoare triple {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,849 INFO L290 TraceCheckUtils]: 14: Hoare triple {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,849 INFO L290 TraceCheckUtils]: 13: Hoare triple {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,849 INFO L290 TraceCheckUtils]: 12: Hoare triple {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,850 INFO L290 TraceCheckUtils]: 11: Hoare triple {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(0 == ~m % 4294967296); {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,850 INFO L290 TraceCheckUtils]: 10: Hoare triple {20890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21306#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:17,850 INFO L272 TraceCheckUtils]: 9: Hoare triple {20890#true} call main_#t~ret23#1 := base2flt(1, 0); {20890#true} is VALID [2022-02-21 03:10:17,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {20890#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {20890#true} is VALID [2022-02-21 03:10:17,850 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {20890#true} {20890#true} #377#return; {20890#true} is VALID [2022-02-21 03:10:17,850 INFO L290 TraceCheckUtils]: 6: Hoare triple {20890#true} assume true; {20890#true} is VALID [2022-02-21 03:10:17,850 INFO L290 TraceCheckUtils]: 5: Hoare triple {20890#true} #res := ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,851 INFO L290 TraceCheckUtils]: 4: Hoare triple {20890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {20890#true} is VALID [2022-02-21 03:10:17,851 INFO L290 TraceCheckUtils]: 3: Hoare triple {20890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {20890#true} is VALID [2022-02-21 03:10:17,851 INFO L272 TraceCheckUtils]: 2: Hoare triple {20890#true} call main_#t~ret22#1 := base2flt(0, 0); {20890#true} is VALID [2022-02-21 03:10:17,851 INFO L290 TraceCheckUtils]: 1: Hoare triple {20890#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; {20890#true} is VALID [2022-02-21 03:10:17,851 INFO L290 TraceCheckUtils]: 0: Hoare triple {20890#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(22, 2);call #Ultimate.allocInit(12, 3); {20890#true} is VALID [2022-02-21 03:10:17,851 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 4 proven. 15 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:17,851 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1494920594] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:17,851 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:17,851 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-02-21 03:10:17,851 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [305989300] [2022-02-21 03:10:17,851 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:17,852 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-02-21 03:10:17,853 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:17,853 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:10:17,923 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:17,923 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-21 03:10:17,923 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:17,923 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-21 03:10:17,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=121, Unknown=0, NotChecked=0, Total=182 [2022-02-21 03:10:17,924 INFO L87 Difference]: Start difference. First operand 274 states and 347 transitions. Second operand has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:10:20,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:20,164 INFO L93 Difference]: Finished difference Result 900 states and 1134 transitions. [2022-02-21 03:10:20,164 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-02-21 03:10:20,164 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-02-21 03:10:20,165 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:20,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:10:20,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 509 transitions. [2022-02-21 03:10:20,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:10:20,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 509 transitions. [2022-02-21 03:10:20,174 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 509 transitions. [2022-02-21 03:10:20,743 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 509 edges. 509 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:20,757 INFO L225 Difference]: With dead ends: 900 [2022-02-21 03:10:20,758 INFO L226 Difference]: Without dead ends: 626 [2022-02-21 03:10:20,758 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 182 GetRequests, 149 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 288 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=345, Invalid=845, Unknown=0, NotChecked=0, Total=1190 [2022-02-21 03:10:20,759 INFO L933 BasicCegarLoop]: 133 mSDtfsCounter, 464 mSDsluCounter, 628 mSDsCounter, 0 mSdLazyCounter, 448 mSolverCounterSat, 94 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 464 SdHoareTripleChecker+Valid, 761 SdHoareTripleChecker+Invalid, 542 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 94 IncrementalHoareTripleChecker+Valid, 448 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:20,759 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [464 Valid, 761 Invalid, 542 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [94 Valid, 448 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-21 03:10:20,760 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 626 states. [2022-02-21 03:10:20,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 626 to 273. [2022-02-21 03:10:20,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:20,893 INFO L82 GeneralOperation]: Start isEquivalent. First operand 626 states. Second operand has 273 states, 252 states have (on average 1.3134920634920635) internal successors, (331), 263 states have internal predecessors, (331), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:20,893 INFO L74 IsIncluded]: Start isIncluded. First operand 626 states. Second operand has 273 states, 252 states have (on average 1.3134920634920635) internal successors, (331), 263 states have internal predecessors, (331), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:20,893 INFO L87 Difference]: Start difference. First operand 626 states. Second operand has 273 states, 252 states have (on average 1.3134920634920635) internal successors, (331), 263 states have internal predecessors, (331), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:20,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:20,907 INFO L93 Difference]: Finished difference Result 626 states and 777 transitions. [2022-02-21 03:10:20,908 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 777 transitions. [2022-02-21 03:10:20,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:20,909 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:20,909 INFO L74 IsIncluded]: Start isIncluded. First operand has 273 states, 252 states have (on average 1.3134920634920635) internal successors, (331), 263 states have internal predecessors, (331), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 626 states. [2022-02-21 03:10:20,910 INFO L87 Difference]: Start difference. First operand has 273 states, 252 states have (on average 1.3134920634920635) internal successors, (331), 263 states have internal predecessors, (331), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 626 states. [2022-02-21 03:10:20,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:20,929 INFO L93 Difference]: Finished difference Result 626 states and 777 transitions. [2022-02-21 03:10:20,929 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 777 transitions. [2022-02-21 03:10:20,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:20,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:20,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:20,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:20,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 273 states, 252 states have (on average 1.3134920634920635) internal successors, (331), 263 states have internal predecessors, (331), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:20,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 273 states to 273 states and 340 transitions. [2022-02-21 03:10:20,933 INFO L78 Accepts]: Start accepts. Automaton has 273 states and 340 transitions. Word has length 67 [2022-02-21 03:10:20,934 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:20,934 INFO L470 AbstractCegarLoop]: Abstraction has 273 states and 340 transitions. [2022-02-21 03:10:20,934 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 6.785714285714286) internal successors, (95), 13 states have internal predecessors, (95), 2 states have call successors, (10), 3 states have call predecessors, (10), 4 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-21 03:10:20,934 INFO L276 IsEmpty]: Start isEmpty. Operand 273 states and 340 transitions. [2022-02-21 03:10:20,935 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-02-21 03:10:20,935 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:20,935 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 4, 4, 4, 3, 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] [2022-02-21 03:10:20,956 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:21,151 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-02-21 03:10:21,151 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:21,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:21,152 INFO L85 PathProgramCache]: Analyzing trace with hash 1143943328, now seen corresponding path program 2 times [2022-02-21 03:10:21,152 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:21,152 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [488494013] [2022-02-21 03:10:21,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:21,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:21,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:21,196 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:21,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:21,198 INFO L290 TraceCheckUtils]: 0: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,199 INFO L290 TraceCheckUtils]: 1: Hoare triple {23988#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {23988#true} is VALID [2022-02-21 03:10:21,199 INFO L290 TraceCheckUtils]: 2: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,199 INFO L290 TraceCheckUtils]: 3: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,199 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {23988#true} {23988#true} #377#return; {23988#true} is VALID [2022-02-21 03:10:21,199 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:21,208 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:21,276 INFO L290 TraceCheckUtils]: 0: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,277 INFO L290 TraceCheckUtils]: 1: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,277 INFO L290 TraceCheckUtils]: 2: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,278 INFO L290 TraceCheckUtils]: 3: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,278 INFO L290 TraceCheckUtils]: 4: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,278 INFO L290 TraceCheckUtils]: 5: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,279 INFO L290 TraceCheckUtils]: 6: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,279 INFO L290 TraceCheckUtils]: 8: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,280 INFO L290 TraceCheckUtils]: 9: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,280 INFO L290 TraceCheckUtils]: 10: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,281 INFO L290 TraceCheckUtils]: 11: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,281 INFO L290 TraceCheckUtils]: 12: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,281 INFO L290 TraceCheckUtils]: 13: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,282 INFO L290 TraceCheckUtils]: 14: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,282 INFO L290 TraceCheckUtils]: 15: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,282 INFO L290 TraceCheckUtils]: 16: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,283 INFO L290 TraceCheckUtils]: 17: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,283 INFO L290 TraceCheckUtils]: 18: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,283 INFO L290 TraceCheckUtils]: 19: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,283 INFO L290 TraceCheckUtils]: 20: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,284 INFO L290 TraceCheckUtils]: 21: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,284 INFO L290 TraceCheckUtils]: 22: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,285 INFO L290 TraceCheckUtils]: 23: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,298 INFO L290 TraceCheckUtils]: 24: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,299 INFO L290 TraceCheckUtils]: 25: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,299 INFO L290 TraceCheckUtils]: 26: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,300 INFO L290 TraceCheckUtils]: 27: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,300 INFO L290 TraceCheckUtils]: 28: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,300 INFO L290 TraceCheckUtils]: 29: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,301 INFO L290 TraceCheckUtils]: 30: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,301 INFO L290 TraceCheckUtils]: 31: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,301 INFO L290 TraceCheckUtils]: 32: Hoare triple {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,302 INFO L290 TraceCheckUtils]: 33: Hoare triple {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,302 INFO L290 TraceCheckUtils]: 34: Hoare triple {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {24059#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:21,302 INFO L290 TraceCheckUtils]: 35: Hoare triple {24059#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {24059#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:21,303 INFO L290 TraceCheckUtils]: 36: Hoare triple {24059#(not (= |base2flt_#in~e| 0))} assume true; {24059#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:21,303 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {24059#(not (= |base2flt_#in~e| 0))} {23988#true} #379#return; {23989#false} is VALID [2022-02-21 03:10:21,303 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-21 03:10:21,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:21,308 INFO L290 TraceCheckUtils]: 0: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {23988#true} assume !(~m % 4294967296 < 16777216); {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L290 TraceCheckUtils]: 3: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L290 TraceCheckUtils]: 4: Hoare triple {23988#true} assume ~m % 4294967296 >= 33554432; {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {23988#true} assume ~e >= 127;~__retres4~0 := 4294967295; {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L290 TraceCheckUtils]: 6: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,309 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {23988#true} {23989#false} #381#return; {23989#false} is VALID [2022-02-21 03:10:21,309 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 60 [2022-02-21 03:10:21,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:21,313 INFO L290 TraceCheckUtils]: 0: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 2: Hoare triple {23988#true} assume !(~m % 4294967296 < 16777216); {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 3: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 4: Hoare triple {23988#true} assume ~m % 4294967296 >= 33554432; {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 5: Hoare triple {23988#true} assume ~e >= 127;~__retres4~0 := 4294967295; {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 6: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 7: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {23988#true} {23989#false} #383#return; {23989#false} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 0: Hoare triple {23988#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(22, 2);call #Ultimate.allocInit(12, 3); {23988#true} is VALID [2022-02-21 03:10:21,314 INFO L290 TraceCheckUtils]: 1: Hoare triple {23988#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; {23988#true} is VALID [2022-02-21 03:10:21,315 INFO L272 TraceCheckUtils]: 2: Hoare triple {23988#true} call main_#t~ret22#1 := base2flt(0, 0); {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:21,315 INFO L290 TraceCheckUtils]: 3: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,315 INFO L290 TraceCheckUtils]: 4: Hoare triple {23988#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {23988#true} is VALID [2022-02-21 03:10:21,315 INFO L290 TraceCheckUtils]: 5: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,315 INFO L290 TraceCheckUtils]: 6: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,315 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {23988#true} {23988#true} #377#return; {23988#true} is VALID [2022-02-21 03:10:21,315 INFO L290 TraceCheckUtils]: 8: Hoare triple {23988#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {23988#true} is VALID [2022-02-21 03:10:21,316 INFO L272 TraceCheckUtils]: 9: Hoare triple {23988#true} call main_#t~ret23#1 := base2flt(1, 0); {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:21,316 INFO L290 TraceCheckUtils]: 10: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,316 INFO L290 TraceCheckUtils]: 11: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,317 INFO L290 TraceCheckUtils]: 12: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,317 INFO L290 TraceCheckUtils]: 14: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,318 INFO L290 TraceCheckUtils]: 15: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:21,318 INFO L290 TraceCheckUtils]: 16: Hoare triple {24052#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,318 INFO L290 TraceCheckUtils]: 17: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,318 INFO L290 TraceCheckUtils]: 18: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,319 INFO L290 TraceCheckUtils]: 19: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:21,319 INFO L290 TraceCheckUtils]: 21: Hoare triple {24053#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,320 INFO L290 TraceCheckUtils]: 23: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,320 INFO L290 TraceCheckUtils]: 24: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,321 INFO L290 TraceCheckUtils]: 25: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,321 INFO L290 TraceCheckUtils]: 26: Hoare triple {24054#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,321 INFO L290 TraceCheckUtils]: 27: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,322 INFO L290 TraceCheckUtils]: 28: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,322 INFO L290 TraceCheckUtils]: 29: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,322 INFO L290 TraceCheckUtils]: 30: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:21,322 INFO L290 TraceCheckUtils]: 31: Hoare triple {24055#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,323 INFO L290 TraceCheckUtils]: 32: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,323 INFO L290 TraceCheckUtils]: 33: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,323 INFO L290 TraceCheckUtils]: 34: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,324 INFO L290 TraceCheckUtils]: 35: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,324 INFO L290 TraceCheckUtils]: 36: Hoare triple {24056#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,325 INFO L290 TraceCheckUtils]: 37: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,325 INFO L290 TraceCheckUtils]: 38: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,325 INFO L290 TraceCheckUtils]: 39: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,325 INFO L290 TraceCheckUtils]: 40: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,326 INFO L290 TraceCheckUtils]: 41: Hoare triple {24057#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,326 INFO L290 TraceCheckUtils]: 42: Hoare triple {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,327 INFO L290 TraceCheckUtils]: 43: Hoare triple {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:21,327 INFO L290 TraceCheckUtils]: 44: Hoare triple {24058#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {24059#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:21,327 INFO L290 TraceCheckUtils]: 45: Hoare triple {24059#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {24059#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:21,327 INFO L290 TraceCheckUtils]: 46: Hoare triple {24059#(not (= |base2flt_#in~e| 0))} assume true; {24059#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:21,328 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {24059#(not (= |base2flt_#in~e| 0))} {23988#true} #379#return; {23989#false} is VALID [2022-02-21 03:10:21,328 INFO L290 TraceCheckUtils]: 48: Hoare triple {23989#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {23989#false} is VALID [2022-02-21 03:10:21,328 INFO L272 TraceCheckUtils]: 49: Hoare triple {23989#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:21,328 INFO L290 TraceCheckUtils]: 50: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,328 INFO L290 TraceCheckUtils]: 51: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,328 INFO L290 TraceCheckUtils]: 52: Hoare triple {23988#true} assume !(~m % 4294967296 < 16777216); {23988#true} is VALID [2022-02-21 03:10:21,328 INFO L290 TraceCheckUtils]: 53: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,328 INFO L290 TraceCheckUtils]: 54: Hoare triple {23988#true} assume ~m % 4294967296 >= 33554432; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 55: Hoare triple {23988#true} assume ~e >= 127;~__retres4~0 := 4294967295; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 56: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 57: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {23988#true} {23989#false} #381#return; {23989#false} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 59: Hoare triple {23989#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {23989#false} is VALID [2022-02-21 03:10:21,329 INFO L272 TraceCheckUtils]: 60: Hoare triple {23989#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 61: Hoare triple {24051#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 62: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 63: Hoare triple {23988#true} assume !(~m % 4294967296 < 16777216); {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 64: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 65: Hoare triple {23988#true} assume ~m % 4294967296 >= 33554432; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 66: Hoare triple {23988#true} assume ~e >= 127;~__retres4~0 := 4294967295; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 67: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 68: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,329 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {23988#true} {23989#false} #383#return; {23989#false} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 70: Hoare triple {23989#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {23989#false} is VALID [2022-02-21 03:10:21,329 INFO L290 TraceCheckUtils]: 71: Hoare triple {23989#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {23989#false} is VALID [2022-02-21 03:10:21,330 INFO L290 TraceCheckUtils]: 72: Hoare triple {23989#false} assume !(0 == mulflt_~b#1 % 4294967296); {23989#false} is VALID [2022-02-21 03:10:21,330 INFO L290 TraceCheckUtils]: 73: Hoare triple {23989#false} assume !(0 == mulflt_~a#1); {23989#false} is VALID [2022-02-21 03:10:21,330 INFO L290 TraceCheckUtils]: 74: Hoare triple {23989#false} assume !false; {23989#false} is VALID [2022-02-21 03:10:21,330 INFO L290 TraceCheckUtils]: 75: Hoare triple {23989#false} assume !false; {23989#false} is VALID [2022-02-21 03:10:21,330 INFO L290 TraceCheckUtils]: 76: Hoare triple {23989#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {23989#false} is VALID [2022-02-21 03:10:21,330 INFO L290 TraceCheckUtils]: 77: Hoare triple {23989#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {23989#false} is VALID [2022-02-21 03:10:21,331 INFO L290 TraceCheckUtils]: 78: Hoare triple {23989#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {23989#false} is VALID [2022-02-21 03:10:21,332 INFO L134 CoverageAnalysis]: Checked inductivity of 123 backedges. 4 proven. 97 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:21,332 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:21,332 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [488494013] [2022-02-21 03:10:21,332 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [488494013] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:21,332 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [827138763] [2022-02-21 03:10:21,332 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:10:21,332 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:21,332 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:21,333 INFO L229 MonitoredProcess]: Starting monitored process 12 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:21,334 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-02-21 03:10:21,401 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-21 03:10:21,402 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:10:21,402 INFO L263 TraceCheckSpWp]: Trace formula consists of 78 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-21 03:10:21,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:21,448 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:21,661 INFO L290 TraceCheckUtils]: 0: Hoare triple {23988#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(22, 2);call #Ultimate.allocInit(12, 3); {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 1: Hoare triple {23988#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; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L272 TraceCheckUtils]: 2: Hoare triple {23988#true} call main_#t~ret22#1 := base2flt(0, 0); {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 3: Hoare triple {23988#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 4: Hoare triple {23988#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 6: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {23988#true} {23988#true} #377#return; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 8: Hoare triple {23988#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L272 TraceCheckUtils]: 9: Hoare triple {23988#true} call main_#t~ret23#1 := base2flt(1, 0); {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 10: Hoare triple {23988#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 11: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 12: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 13: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 14: Hoare triple {23988#true} assume !(~e <= -128); {23988#true} is VALID [2022-02-21 03:10:21,662 INFO L290 TraceCheckUtils]: 15: Hoare triple {23988#true} assume ~e - 1 <= 2147483647; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 16: Hoare triple {23988#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 17: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 18: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 19: Hoare triple {23988#true} assume !(~e <= -128); {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {23988#true} assume ~e - 1 <= 2147483647; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 21: Hoare triple {23988#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 22: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 24: Hoare triple {23988#true} assume !(~e <= -128); {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 25: Hoare triple {23988#true} assume ~e - 1 <= 2147483647; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 26: Hoare triple {23988#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 27: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 28: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 29: Hoare triple {23988#true} assume !(~e <= -128); {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 30: Hoare triple {23988#true} assume ~e - 1 <= 2147483647; {23988#true} is VALID [2022-02-21 03:10:21,663 INFO L290 TraceCheckUtils]: 31: Hoare triple {23988#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 32: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 33: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 34: Hoare triple {23988#true} assume !(~e <= -128); {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 35: Hoare triple {23988#true} assume ~e - 1 <= 2147483647; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 36: Hoare triple {23988#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 37: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 38: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 39: Hoare triple {23988#true} assume !(~e <= -128); {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 40: Hoare triple {23988#true} assume ~e - 1 <= 2147483647; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 41: Hoare triple {23988#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 42: Hoare triple {23988#true} assume ~m % 4294967296 < 16777216; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 43: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 44: Hoare triple {23988#true} assume ~e <= -128;~__retres4~0 := 0; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 45: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 46: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23988#true} {23988#true} #379#return; {23988#true} is VALID [2022-02-21 03:10:21,664 INFO L290 TraceCheckUtils]: 48: Hoare triple {23988#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L272 TraceCheckUtils]: 49: Hoare triple {23988#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 50: Hoare triple {23988#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 51: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 52: Hoare triple {23988#true} assume !(~m % 4294967296 < 16777216); {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 53: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 54: Hoare triple {23988#true} assume ~m % 4294967296 >= 33554432; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 55: Hoare triple {23988#true} assume ~e >= 127;~__retres4~0 := 4294967295; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 56: Hoare triple {23988#true} #res := ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 57: Hoare triple {23988#true} assume true; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {23988#true} {23988#true} #381#return; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 59: Hoare triple {23988#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L272 TraceCheckUtils]: 60: Hoare triple {23988#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 61: Hoare triple {23988#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 62: Hoare triple {23988#true} assume !(0 == ~m % 4294967296); {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 63: Hoare triple {23988#true} assume !(~m % 4294967296 < 16777216); {23988#true} is VALID [2022-02-21 03:10:21,665 INFO L290 TraceCheckUtils]: 64: Hoare triple {23988#true} assume !false; {23988#true} is VALID [2022-02-21 03:10:21,666 INFO L290 TraceCheckUtils]: 65: Hoare triple {23988#true} assume ~m % 4294967296 >= 33554432; {23988#true} is VALID [2022-02-21 03:10:21,666 INFO L290 TraceCheckUtils]: 66: Hoare triple {23988#true} assume ~e >= 127;~__retres4~0 := 4294967295; {24261#(= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:21,666 INFO L290 TraceCheckUtils]: 67: Hoare triple {24261#(= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {24265#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:21,666 INFO L290 TraceCheckUtils]: 68: Hoare triple {24265#(= |base2flt_#res| 4294967295)} assume true; {24265#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:21,667 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {24265#(= |base2flt_#res| 4294967295)} {23988#true} #383#return; {24272#(= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:21,667 INFO L290 TraceCheckUtils]: 70: Hoare triple {24272#(= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {24276#(= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:21,668 INFO L290 TraceCheckUtils]: 71: Hoare triple {24276#(= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {24280#(and (= 4294967295 |ULTIMATE.start_mulflt_~b#1|) (not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) (mod |ULTIMATE.start_mulflt_~b#1| 4294967296))))} is VALID [2022-02-21 03:10:21,668 INFO L290 TraceCheckUtils]: 72: Hoare triple {24280#(and (= 4294967295 |ULTIMATE.start_mulflt_~b#1|) (not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) (mod |ULTIMATE.start_mulflt_~b#1| 4294967296))))} assume !(0 == mulflt_~b#1 % 4294967296); {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} is VALID [2022-02-21 03:10:21,668 INFO L290 TraceCheckUtils]: 73: Hoare triple {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} assume !(0 == mulflt_~a#1); {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} is VALID [2022-02-21 03:10:21,669 INFO L290 TraceCheckUtils]: 74: Hoare triple {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} assume !false; {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} is VALID [2022-02-21 03:10:21,669 INFO L290 TraceCheckUtils]: 75: Hoare triple {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} assume !false; {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} is VALID [2022-02-21 03:10:21,669 INFO L290 TraceCheckUtils]: 76: Hoare triple {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} is VALID [2022-02-21 03:10:21,669 INFO L290 TraceCheckUtils]: 77: Hoare triple {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} is VALID [2022-02-21 03:10:21,674 INFO L290 TraceCheckUtils]: 78: Hoare triple {24284#(not (< (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 4294967295))} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {23989#false} is VALID [2022-02-21 03:10:21,675 INFO L134 CoverageAnalysis]: Checked inductivity of 123 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-02-21 03:10:21,675 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:21,675 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [827138763] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:21,675 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:21,675 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [11] total 17 [2022-02-21 03:10:21,675 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1941837944] [2022-02-21 03:10:21,675 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:21,675 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 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:21,676 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:21,676 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:21,720 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:21,720 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-21 03:10:21,720 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:21,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-21 03:10:21,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2022-02-21 03:10:21,720 INFO L87 Difference]: Start difference. First operand 273 states and 340 transitions. Second operand has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:22,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:22,531 INFO L93 Difference]: Finished difference Result 406 states and 491 transitions. [2022-02-21 03:10:22,531 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-21 03:10:22,531 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 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:22,531 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:22,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:22,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 300 transitions. [2022-02-21 03:10:22,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:22,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 300 transitions. [2022-02-21 03:10:22,534 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 300 transitions. [2022-02-21 03:10:22,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 300 edges. 300 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:22,733 INFO L225 Difference]: With dead ends: 406 [2022-02-21 03:10:22,733 INFO L226 Difference]: Without dead ends: 359 [2022-02-21 03:10:22,734 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 80 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=64, Invalid=242, Unknown=0, NotChecked=0, Total=306 [2022-02-21 03:10:22,734 INFO L933 BasicCegarLoop]: 162 mSDtfsCounter, 116 mSDsluCounter, 799 mSDsCounter, 0 mSdLazyCounter, 123 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 961 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 123 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:22,734 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [116 Valid, 961 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 123 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:22,735 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 359 states. [2022-02-21 03:10:22,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 359 to 271. [2022-02-21 03:10:22,886 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:22,887 INFO L82 GeneralOperation]: Start isEquivalent. First operand 359 states. Second operand has 271 states, 250 states have (on average 1.308) internal successors, (327), 261 states have internal predecessors, (327), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:22,887 INFO L74 IsIncluded]: Start isIncluded. First operand 359 states. Second operand has 271 states, 250 states have (on average 1.308) internal successors, (327), 261 states have internal predecessors, (327), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:22,887 INFO L87 Difference]: Start difference. First operand 359 states. Second operand has 271 states, 250 states have (on average 1.308) internal successors, (327), 261 states have internal predecessors, (327), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:22,891 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:22,892 INFO L93 Difference]: Finished difference Result 359 states and 437 transitions. [2022-02-21 03:10:22,892 INFO L276 IsEmpty]: Start isEmpty. Operand 359 states and 437 transitions. [2022-02-21 03:10:22,892 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:22,892 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:22,892 INFO L74 IsIncluded]: Start isIncluded. First operand has 271 states, 250 states have (on average 1.308) internal successors, (327), 261 states have internal predecessors, (327), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 359 states. [2022-02-21 03:10:22,892 INFO L87 Difference]: Start difference. First operand has 271 states, 250 states have (on average 1.308) internal successors, (327), 261 states have internal predecessors, (327), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 359 states. [2022-02-21 03:10:22,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:22,897 INFO L93 Difference]: Finished difference Result 359 states and 437 transitions. [2022-02-21 03:10:22,897 INFO L276 IsEmpty]: Start isEmpty. Operand 359 states and 437 transitions. [2022-02-21 03:10:22,897 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:22,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:22,897 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:22,897 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:22,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 271 states, 250 states have (on average 1.308) internal successors, (327), 261 states have internal predecessors, (327), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:22,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 271 states to 271 states and 336 transitions. [2022-02-21 03:10:22,900 INFO L78 Accepts]: Start accepts. Automaton has 271 states and 336 transitions. Word has length 79 [2022-02-21 03:10:22,900 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:22,901 INFO L470 AbstractCegarLoop]: Abstraction has 271 states and 336 transitions. [2022-02-21 03:10:22,901 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:22,901 INFO L276 IsEmpty]: Start isEmpty. Operand 271 states and 336 transitions. [2022-02-21 03:10:22,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-02-21 03:10:22,905 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:22,905 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 4, 4, 4, 3, 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] [2022-02-21 03:10:22,921 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:23,111 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-02-21 03:10:23,111 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:23,112 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:23,112 INFO L85 PathProgramCache]: Analyzing trace with hash -1916731709, now seen corresponding path program 1 times [2022-02-21 03:10:23,112 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:23,112 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [825733164] [2022-02-21 03:10:23,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:23,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:23,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,166 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:23,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,169 INFO L290 TraceCheckUtils]: 0: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,169 INFO L290 TraceCheckUtils]: 1: Hoare triple {25774#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {25774#true} is VALID [2022-02-21 03:10:23,169 INFO L290 TraceCheckUtils]: 2: Hoare triple {25774#true} #res := ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,169 INFO L290 TraceCheckUtils]: 3: Hoare triple {25774#true} assume true; {25774#true} is VALID [2022-02-21 03:10:23,169 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {25774#true} {25774#true} #377#return; {25774#true} is VALID [2022-02-21 03:10:23,169 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:23,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,180 INFO L290 TraceCheckUtils]: 0: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {25774#true} assume !(0 == ~m % 4294967296); {25774#true} is VALID [2022-02-21 03:10:23,180 INFO L290 TraceCheckUtils]: 2: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,180 INFO L290 TraceCheckUtils]: 3: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,180 INFO L290 TraceCheckUtils]: 4: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 5: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 6: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 7: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 8: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 9: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 10: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 11: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 12: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 13: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 14: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 15: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 19: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,181 INFO L290 TraceCheckUtils]: 20: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 21: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 22: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 23: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 24: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 25: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 26: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 27: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 28: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 29: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 30: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 31: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 32: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 33: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 34: Hoare triple {25774#true} assume ~e <= -128;~__retres4~0 := 0; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 35: Hoare triple {25774#true} #res := ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,182 INFO L290 TraceCheckUtils]: 36: Hoare triple {25774#true} assume true; {25774#true} is VALID [2022-02-21 03:10:23,183 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25774#true} {25774#true} #379#return; {25774#true} is VALID [2022-02-21 03:10:23,183 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-21 03:10:23,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 0: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {25774#true} assume !(0 == ~m % 4294967296); {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {25774#true} assume !(~m % 4294967296 < 16777216); {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 3: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 4: Hoare triple {25774#true} assume ~m % 4294967296 >= 33554432; {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {25774#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 6: Hoare triple {25774#true} #res := ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L290 TraceCheckUtils]: 7: Hoare triple {25774#true} assume true; {25774#true} is VALID [2022-02-21 03:10:23,186 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {25774#true} {25774#true} #381#return; {25774#true} is VALID [2022-02-21 03:10:23,187 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 60 [2022-02-21 03:10:23,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,198 INFO L290 TraceCheckUtils]: 0: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,198 INFO L290 TraceCheckUtils]: 1: Hoare triple {25774#true} assume !(0 == ~m % 4294967296); {25774#true} is VALID [2022-02-21 03:10:23,198 INFO L290 TraceCheckUtils]: 2: Hoare triple {25774#true} assume !(~m % 4294967296 < 16777216); {25774#true} is VALID [2022-02-21 03:10:23,198 INFO L290 TraceCheckUtils]: 3: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,198 INFO L290 TraceCheckUtils]: 4: Hoare triple {25774#true} assume !(~m % 4294967296 >= 33554432); {25774#true} is VALID [2022-02-21 03:10:23,199 INFO L290 TraceCheckUtils]: 5: Hoare triple {25774#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,199 INFO L290 TraceCheckUtils]: 6: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,199 INFO L290 TraceCheckUtils]: 7: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,199 INFO L290 TraceCheckUtils]: 8: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,199 INFO L290 TraceCheckUtils]: 9: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,200 INFO L290 TraceCheckUtils]: 10: Hoare triple {25847#(<= base2flt_~m 0)} assume (1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e));~res~0 := 1; {25775#false} is VALID [2022-02-21 03:10:23,200 INFO L290 TraceCheckUtils]: 11: Hoare triple {25775#false} ~__retres4~0 := ~res~0; {25775#false} is VALID [2022-02-21 03:10:23,200 INFO L290 TraceCheckUtils]: 12: Hoare triple {25775#false} #res := ~__retres4~0; {25775#false} is VALID [2022-02-21 03:10:23,200 INFO L290 TraceCheckUtils]: 13: Hoare triple {25775#false} assume true; {25775#false} is VALID [2022-02-21 03:10:23,200 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {25775#false} {25774#true} #383#return; {25843#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:23,200 INFO L290 TraceCheckUtils]: 0: Hoare triple {25774#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(22, 2);call #Ultimate.allocInit(12, 3); {25774#true} is VALID [2022-02-21 03:10:23,200 INFO L290 TraceCheckUtils]: 1: Hoare triple {25774#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; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L272 TraceCheckUtils]: 2: Hoare triple {25774#true} call main_#t~ret22#1 := base2flt(0, 0); {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,201 INFO L290 TraceCheckUtils]: 3: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L290 TraceCheckUtils]: 4: Hoare triple {25774#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L290 TraceCheckUtils]: 5: Hoare triple {25774#true} #res := ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L290 TraceCheckUtils]: 6: Hoare triple {25774#true} assume true; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {25774#true} {25774#true} #377#return; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L290 TraceCheckUtils]: 8: Hoare triple {25774#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {25774#true} is VALID [2022-02-21 03:10:23,201 INFO L272 TraceCheckUtils]: 9: Hoare triple {25774#true} call main_#t~ret23#1 := base2flt(1, 0); {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 10: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {25774#true} assume !(0 == ~m % 4294967296); {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 13: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 14: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 15: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 16: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 17: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 18: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 19: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 20: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 21: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 22: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 23: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 24: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,202 INFO L290 TraceCheckUtils]: 25: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 26: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 27: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 28: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 29: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 30: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 31: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 32: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 33: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 34: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 35: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 36: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 37: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 38: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 39: Hoare triple {25774#true} assume !(~e <= -128); {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 40: Hoare triple {25774#true} assume ~e - 1 <= 2147483647; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 41: Hoare triple {25774#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25774#true} is VALID [2022-02-21 03:10:23,203 INFO L290 TraceCheckUtils]: 42: Hoare triple {25774#true} assume ~m % 4294967296 < 16777216; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 43: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 44: Hoare triple {25774#true} assume ~e <= -128;~__retres4~0 := 0; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 45: Hoare triple {25774#true} #res := ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 46: Hoare triple {25774#true} assume true; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25774#true} {25774#true} #379#return; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 48: Hoare triple {25774#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L272 TraceCheckUtils]: 49: Hoare triple {25774#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 50: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 51: Hoare triple {25774#true} assume !(0 == ~m % 4294967296); {25774#true} is VALID [2022-02-21 03:10:23,204 INFO L290 TraceCheckUtils]: 52: Hoare triple {25774#true} assume !(~m % 4294967296 < 16777216); {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 53: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 54: Hoare triple {25774#true} assume ~m % 4294967296 >= 33554432; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 55: Hoare triple {25774#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 56: Hoare triple {25774#true} #res := ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 57: Hoare triple {25774#true} assume true; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {25774#true} {25774#true} #381#return; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 59: Hoare triple {25774#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {25774#true} is VALID [2022-02-21 03:10:23,205 INFO L272 TraceCheckUtils]: 60: Hoare triple {25774#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,205 INFO L290 TraceCheckUtils]: 61: Hoare triple {25846#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25774#true} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 62: Hoare triple {25774#true} assume !(0 == ~m % 4294967296); {25774#true} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 63: Hoare triple {25774#true} assume !(~m % 4294967296 < 16777216); {25774#true} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 64: Hoare triple {25774#true} assume !false; {25774#true} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 65: Hoare triple {25774#true} assume !(~m % 4294967296 >= 33554432); {25774#true} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 66: Hoare triple {25774#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 67: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,206 INFO L290 TraceCheckUtils]: 68: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,207 INFO L290 TraceCheckUtils]: 69: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,207 INFO L290 TraceCheckUtils]: 70: Hoare triple {25847#(<= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {25847#(<= base2flt_~m 0)} is VALID [2022-02-21 03:10:23,207 INFO L290 TraceCheckUtils]: 71: Hoare triple {25847#(<= base2flt_~m 0)} assume (1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e));~res~0 := 1; {25775#false} is VALID [2022-02-21 03:10:23,207 INFO L290 TraceCheckUtils]: 72: Hoare triple {25775#false} ~__retres4~0 := ~res~0; {25775#false} is VALID [2022-02-21 03:10:23,207 INFO L290 TraceCheckUtils]: 73: Hoare triple {25775#false} #res := ~__retres4~0; {25775#false} is VALID [2022-02-21 03:10:23,207 INFO L290 TraceCheckUtils]: 74: Hoare triple {25775#false} assume true; {25775#false} is VALID [2022-02-21 03:10:23,207 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {25775#false} {25774#true} #383#return; {25843#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:23,208 INFO L290 TraceCheckUtils]: 76: Hoare triple {25843#(= |ULTIMATE.start_main_#t~ret25#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {25844#(= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:23,208 INFO L290 TraceCheckUtils]: 77: Hoare triple {25844#(= |ULTIMATE.start_mulflt_~b#1| 0)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {25845#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:23,208 INFO L290 TraceCheckUtils]: 78: Hoare triple {25845#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {25845#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:23,209 INFO L290 TraceCheckUtils]: 79: Hoare triple {25845#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~a#1); {25775#false} is VALID [2022-02-21 03:10:23,209 INFO L290 TraceCheckUtils]: 80: Hoare triple {25775#false} assume !false; {25775#false} is VALID [2022-02-21 03:10:23,209 INFO L290 TraceCheckUtils]: 81: Hoare triple {25775#false} assume !false; {25775#false} is VALID [2022-02-21 03:10:23,209 INFO L290 TraceCheckUtils]: 82: Hoare triple {25775#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {25775#false} is VALID [2022-02-21 03:10:23,209 INFO L290 TraceCheckUtils]: 83: Hoare triple {25775#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {25775#false} is VALID [2022-02-21 03:10:23,209 INFO L290 TraceCheckUtils]: 84: Hoare triple {25775#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {25775#false} is VALID [2022-02-21 03:10:23,209 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 113 trivial. 0 not checked. [2022-02-21 03:10:23,209 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:23,209 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [825733164] [2022-02-21 03:10:23,209 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [825733164] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:23,209 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:23,209 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-21 03:10:23,210 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1646018749] [2022-02-21 03:10:23,210 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:23,211 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 85 [2022-02-21 03:10:23,211 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:23,211 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:23,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:23,238 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-21 03:10:23,238 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:23,238 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-21 03:10:23,238 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:10:23,239 INFO L87 Difference]: Start difference. First operand 271 states and 336 transitions. Second operand has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:23,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:23,979 INFO L93 Difference]: Finished difference Result 698 states and 861 transitions. [2022-02-21 03:10:23,979 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-21 03:10:23,979 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 85 [2022-02-21 03:10:23,979 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:23,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:23,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 415 transitions. [2022-02-21 03:10:23,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:23,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 415 transitions. [2022-02-21 03:10:23,983 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 415 transitions. [2022-02-21 03:10:24,227 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 415 edges. 415 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:24,236 INFO L225 Difference]: With dead ends: 698 [2022-02-21 03:10:24,236 INFO L226 Difference]: Without dead ends: 484 [2022-02-21 03:10:24,237 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-02-21 03:10:24,237 INFO L933 BasicCegarLoop]: 168 mSDtfsCounter, 200 mSDsluCounter, 707 mSDsCounter, 0 mSdLazyCounter, 117 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 200 SdHoareTripleChecker+Valid, 875 SdHoareTripleChecker+Invalid, 122 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 117 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:24,237 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [200 Valid, 875 Invalid, 122 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 117 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:24,238 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 484 states. [2022-02-21 03:10:24,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 484 to 276. [2022-02-21 03:10:24,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:24,371 INFO L82 GeneralOperation]: Start isEquivalent. First operand 484 states. Second operand has 276 states, 255 states have (on average 1.3019607843137255) internal successors, (332), 266 states have internal predecessors, (332), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:24,371 INFO L74 IsIncluded]: Start isIncluded. First operand 484 states. Second operand has 276 states, 255 states have (on average 1.3019607843137255) internal successors, (332), 266 states have internal predecessors, (332), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:24,372 INFO L87 Difference]: Start difference. First operand 484 states. Second operand has 276 states, 255 states have (on average 1.3019607843137255) internal successors, (332), 266 states have internal predecessors, (332), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:24,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:24,379 INFO L93 Difference]: Finished difference Result 484 states and 588 transitions. [2022-02-21 03:10:24,379 INFO L276 IsEmpty]: Start isEmpty. Operand 484 states and 588 transitions. [2022-02-21 03:10:24,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:24,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:24,380 INFO L74 IsIncluded]: Start isIncluded. First operand has 276 states, 255 states have (on average 1.3019607843137255) internal successors, (332), 266 states have internal predecessors, (332), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 484 states. [2022-02-21 03:10:24,380 INFO L87 Difference]: Start difference. First operand has 276 states, 255 states have (on average 1.3019607843137255) internal successors, (332), 266 states have internal predecessors, (332), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 484 states. [2022-02-21 03:10:24,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:24,387 INFO L93 Difference]: Finished difference Result 484 states and 588 transitions. [2022-02-21 03:10:24,387 INFO L276 IsEmpty]: Start isEmpty. Operand 484 states and 588 transitions. [2022-02-21 03:10:24,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:24,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:24,387 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:24,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:24,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 276 states, 255 states have (on average 1.3019607843137255) internal successors, (332), 266 states have internal predecessors, (332), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:24,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 276 states to 276 states and 341 transitions. [2022-02-21 03:10:24,391 INFO L78 Accepts]: Start accepts. Automaton has 276 states and 341 transitions. Word has length 85 [2022-02-21 03:10:24,391 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:24,391 INFO L470 AbstractCegarLoop]: Abstraction has 276 states and 341 transitions. [2022-02-21 03:10:24,391 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 5.714285714285714) internal successors, (40), 5 states have internal predecessors, (40), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:24,391 INFO L276 IsEmpty]: Start isEmpty. Operand 276 states and 341 transitions. [2022-02-21 03:10:24,392 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-02-21 03:10:24,392 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:24,392 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 4, 4, 4, 3, 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:24,392 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18 [2022-02-21 03:10:24,392 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:24,392 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:24,392 INFO L85 PathProgramCache]: Analyzing trace with hash 326020878, now seen corresponding path program 1 times [2022-02-21 03:10:24,392 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:24,392 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [550027732] [2022-02-21 03:10:24,392 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:24,393 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:24,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,420 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:24,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,423 INFO L290 TraceCheckUtils]: 0: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {27904#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {27904#true} is VALID [2022-02-21 03:10:24,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,423 INFO L290 TraceCheckUtils]: 3: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,423 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {27904#true} {27904#true} #377#return; {27904#true} is VALID [2022-02-21 03:10:24,423 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:24,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,514 INFO L290 TraceCheckUtils]: 0: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,516 INFO L290 TraceCheckUtils]: 3: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,516 INFO L290 TraceCheckUtils]: 4: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,517 INFO L290 TraceCheckUtils]: 6: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,518 INFO L290 TraceCheckUtils]: 7: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,518 INFO L290 TraceCheckUtils]: 9: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,519 INFO L290 TraceCheckUtils]: 10: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,519 INFO L290 TraceCheckUtils]: 11: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,520 INFO L290 TraceCheckUtils]: 13: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,521 INFO L290 TraceCheckUtils]: 14: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,521 INFO L290 TraceCheckUtils]: 15: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,522 INFO L290 TraceCheckUtils]: 16: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,522 INFO L290 TraceCheckUtils]: 17: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,522 INFO L290 TraceCheckUtils]: 18: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,523 INFO L290 TraceCheckUtils]: 19: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,523 INFO L290 TraceCheckUtils]: 20: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,524 INFO L290 TraceCheckUtils]: 21: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,524 INFO L290 TraceCheckUtils]: 22: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,524 INFO L290 TraceCheckUtils]: 23: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,525 INFO L290 TraceCheckUtils]: 24: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,526 INFO L290 TraceCheckUtils]: 26: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,526 INFO L290 TraceCheckUtils]: 27: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,527 INFO L290 TraceCheckUtils]: 28: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,527 INFO L290 TraceCheckUtils]: 29: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,528 INFO L290 TraceCheckUtils]: 30: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,528 INFO L290 TraceCheckUtils]: 31: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,529 INFO L290 TraceCheckUtils]: 32: Hoare triple {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,529 INFO L290 TraceCheckUtils]: 33: Hoare triple {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,529 INFO L290 TraceCheckUtils]: 34: Hoare triple {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {27982#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:24,530 INFO L290 TraceCheckUtils]: 35: Hoare triple {27982#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {27982#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:24,530 INFO L290 TraceCheckUtils]: 36: Hoare triple {27982#(not (= |base2flt_#in~e| 0))} assume true; {27982#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:24,531 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {27982#(not (= |base2flt_#in~e| 0))} {27904#true} #379#return; {27905#false} is VALID [2022-02-21 03:10:24,531 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-21 03:10:24,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 0: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 1: Hoare triple {27904#true} assume !(0 == ~m % 4294967296); {27904#true} is VALID [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 2: Hoare triple {27904#true} assume !(~m % 4294967296 < 16777216); {27904#true} is VALID [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 3: Hoare triple {27904#true} assume !false; {27904#true} is VALID [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 4: Hoare triple {27904#true} assume ~m % 4294967296 >= 33554432; {27904#true} is VALID [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 5: Hoare triple {27904#true} assume ~e >= 127;~__retres4~0 := 4294967295; {27904#true} is VALID [2022-02-21 03:10:24,535 INFO L290 TraceCheckUtils]: 6: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,536 INFO L290 TraceCheckUtils]: 7: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,536 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {27904#true} {27905#false} #381#return; {27905#false} is VALID [2022-02-21 03:10:24,536 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 60 [2022-02-21 03:10:24,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,541 INFO L290 TraceCheckUtils]: 0: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {27904#true} assume !(0 == ~m % 4294967296); {27904#true} is VALID [2022-02-21 03:10:24,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {27904#true} assume !(~m % 4294967296 < 16777216); {27904#true} is VALID [2022-02-21 03:10:24,541 INFO L290 TraceCheckUtils]: 3: Hoare triple {27904#true} assume !false; {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 4: Hoare triple {27904#true} assume !(~m % 4294967296 >= 33554432); {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {27904#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 6: Hoare triple {27904#true} assume 128 + ~e <= 2147483647; {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {27904#true} assume 128 + ~e >= -2147483648; {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {27904#true} assume 128 + ~e <= 2147483647; {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {27904#true} assume 128 + ~e >= -2147483648; {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 10: Hoare triple {27904#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {27904#true} is VALID [2022-02-21 03:10:24,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {27904#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {27904#true} is VALID [2022-02-21 03:10:24,543 INFO L290 TraceCheckUtils]: 12: Hoare triple {27904#true} ~__retres4~0 := ~res~0; {27904#true} is VALID [2022-02-21 03:10:24,543 INFO L290 TraceCheckUtils]: 13: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,543 INFO L290 TraceCheckUtils]: 14: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,543 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27904#true} {27905#false} #383#return; {27905#false} is VALID [2022-02-21 03:10:24,543 INFO L290 TraceCheckUtils]: 0: Hoare triple {27904#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(22, 2);call #Ultimate.allocInit(12, 3); {27904#true} is VALID [2022-02-21 03:10:24,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {27904#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; {27904#true} is VALID [2022-02-21 03:10:24,544 INFO L272 TraceCheckUtils]: 2: Hoare triple {27904#true} call main_#t~ret22#1 := base2flt(0, 0); {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:24,544 INFO L290 TraceCheckUtils]: 3: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,544 INFO L290 TraceCheckUtils]: 4: Hoare triple {27904#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {27904#true} is VALID [2022-02-21 03:10:24,544 INFO L290 TraceCheckUtils]: 5: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,544 INFO L290 TraceCheckUtils]: 6: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,544 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {27904#true} {27904#true} #377#return; {27904#true} is VALID [2022-02-21 03:10:24,544 INFO L290 TraceCheckUtils]: 8: Hoare triple {27904#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {27904#true} is VALID [2022-02-21 03:10:24,545 INFO L272 TraceCheckUtils]: 9: Hoare triple {27904#true} call main_#t~ret23#1 := base2flt(1, 0); {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:24,545 INFO L290 TraceCheckUtils]: 10: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,546 INFO L290 TraceCheckUtils]: 11: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,546 INFO L290 TraceCheckUtils]: 12: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,547 INFO L290 TraceCheckUtils]: 14: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,547 INFO L290 TraceCheckUtils]: 15: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:24,548 INFO L290 TraceCheckUtils]: 16: Hoare triple {27975#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,548 INFO L290 TraceCheckUtils]: 17: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,548 INFO L290 TraceCheckUtils]: 19: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,549 INFO L290 TraceCheckUtils]: 20: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:24,549 INFO L290 TraceCheckUtils]: 21: Hoare triple {27976#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,550 INFO L290 TraceCheckUtils]: 22: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,550 INFO L290 TraceCheckUtils]: 23: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,550 INFO L290 TraceCheckUtils]: 24: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,551 INFO L290 TraceCheckUtils]: 25: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,551 INFO L290 TraceCheckUtils]: 26: Hoare triple {27977#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,552 INFO L290 TraceCheckUtils]: 27: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,552 INFO L290 TraceCheckUtils]: 28: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,552 INFO L290 TraceCheckUtils]: 29: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,552 INFO L290 TraceCheckUtils]: 30: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:24,553 INFO L290 TraceCheckUtils]: 31: Hoare triple {27978#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,553 INFO L290 TraceCheckUtils]: 32: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,554 INFO L290 TraceCheckUtils]: 33: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,554 INFO L290 TraceCheckUtils]: 34: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,554 INFO L290 TraceCheckUtils]: 35: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,555 INFO L290 TraceCheckUtils]: 36: Hoare triple {27979#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,555 INFO L290 TraceCheckUtils]: 37: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,555 INFO L290 TraceCheckUtils]: 38: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,556 INFO L290 TraceCheckUtils]: 39: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,556 INFO L290 TraceCheckUtils]: 40: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,557 INFO L290 TraceCheckUtils]: 41: Hoare triple {27980#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,557 INFO L290 TraceCheckUtils]: 42: Hoare triple {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,557 INFO L290 TraceCheckUtils]: 43: Hoare triple {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:24,558 INFO L290 TraceCheckUtils]: 44: Hoare triple {27981#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {27982#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:24,558 INFO L290 TraceCheckUtils]: 45: Hoare triple {27982#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {27982#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:24,558 INFO L290 TraceCheckUtils]: 46: Hoare triple {27982#(not (= |base2flt_#in~e| 0))} assume true; {27982#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:24,559 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {27982#(not (= |base2flt_#in~e| 0))} {27904#true} #379#return; {27905#false} is VALID [2022-02-21 03:10:24,559 INFO L290 TraceCheckUtils]: 48: Hoare triple {27905#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {27905#false} is VALID [2022-02-21 03:10:24,559 INFO L272 TraceCheckUtils]: 49: Hoare triple {27905#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:24,559 INFO L290 TraceCheckUtils]: 50: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,559 INFO L290 TraceCheckUtils]: 51: Hoare triple {27904#true} assume !(0 == ~m % 4294967296); {27904#true} is VALID [2022-02-21 03:10:24,559 INFO L290 TraceCheckUtils]: 52: Hoare triple {27904#true} assume !(~m % 4294967296 < 16777216); {27904#true} is VALID [2022-02-21 03:10:24,559 INFO L290 TraceCheckUtils]: 53: Hoare triple {27904#true} assume !false; {27904#true} is VALID [2022-02-21 03:10:24,559 INFO L290 TraceCheckUtils]: 54: Hoare triple {27904#true} assume ~m % 4294967296 >= 33554432; {27904#true} is VALID [2022-02-21 03:10:24,560 INFO L290 TraceCheckUtils]: 55: Hoare triple {27904#true} assume ~e >= 127;~__retres4~0 := 4294967295; {27904#true} is VALID [2022-02-21 03:10:24,560 INFO L290 TraceCheckUtils]: 56: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,560 INFO L290 TraceCheckUtils]: 57: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,560 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {27904#true} {27905#false} #381#return; {27905#false} is VALID [2022-02-21 03:10:24,560 INFO L290 TraceCheckUtils]: 59: Hoare triple {27905#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {27905#false} is VALID [2022-02-21 03:10:24,560 INFO L272 TraceCheckUtils]: 60: Hoare triple {27905#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:24,560 INFO L290 TraceCheckUtils]: 61: Hoare triple {27974#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,560 INFO L290 TraceCheckUtils]: 62: Hoare triple {27904#true} assume !(0 == ~m % 4294967296); {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 63: Hoare triple {27904#true} assume !(~m % 4294967296 < 16777216); {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 64: Hoare triple {27904#true} assume !false; {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 65: Hoare triple {27904#true} assume !(~m % 4294967296 >= 33554432); {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 66: Hoare triple {27904#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 67: Hoare triple {27904#true} assume 128 + ~e <= 2147483647; {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 68: Hoare triple {27904#true} assume 128 + ~e >= -2147483648; {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 69: Hoare triple {27904#true} assume 128 + ~e <= 2147483647; {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 70: Hoare triple {27904#true} assume 128 + ~e >= -2147483648; {27904#true} is VALID [2022-02-21 03:10:24,561 INFO L290 TraceCheckUtils]: 71: Hoare triple {27904#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {27904#true} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 72: Hoare triple {27904#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {27904#true} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 73: Hoare triple {27904#true} ~__retres4~0 := ~res~0; {27904#true} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 74: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 75: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,562 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {27904#true} {27905#false} #383#return; {27905#false} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 77: Hoare triple {27905#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {27905#false} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 78: Hoare triple {27905#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {27905#false} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 79: Hoare triple {27905#false} assume !(0 == mulflt_~b#1 % 4294967296); {27905#false} is VALID [2022-02-21 03:10:24,562 INFO L290 TraceCheckUtils]: 80: Hoare triple {27905#false} assume !(0 == mulflt_~a#1); {27905#false} is VALID [2022-02-21 03:10:24,563 INFO L290 TraceCheckUtils]: 81: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:24,563 INFO L290 TraceCheckUtils]: 82: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:24,563 INFO L290 TraceCheckUtils]: 83: Hoare triple {27905#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {27905#false} is VALID [2022-02-21 03:10:24,563 INFO L290 TraceCheckUtils]: 84: Hoare triple {27905#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {27905#false} is VALID [2022-02-21 03:10:24,563 INFO L290 TraceCheckUtils]: 85: Hoare triple {27905#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {27905#false} is VALID [2022-02-21 03:10:24,569 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 4 proven. 97 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-21 03:10:24,569 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:24,569 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [550027732] [2022-02-21 03:10:24,570 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [550027732] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:24,570 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [651209537] [2022-02-21 03:10:24,570 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:24,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:24,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:24,571 INFO L229 MonitoredProcess]: Starting monitored process 13 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:24,572 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-02-21 03:10:24,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,633 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-21 03:10:24,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:24,660 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:24,988 INFO L290 TraceCheckUtils]: 0: Hoare triple {27904#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(22, 2);call #Ultimate.allocInit(12, 3); {27904#true} is VALID [2022-02-21 03:10:24,988 INFO L290 TraceCheckUtils]: 1: Hoare triple {27904#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; {27904#true} is VALID [2022-02-21 03:10:24,988 INFO L272 TraceCheckUtils]: 2: Hoare triple {27904#true} call main_#t~ret22#1 := base2flt(0, 0); {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L290 TraceCheckUtils]: 3: Hoare triple {27904#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L290 TraceCheckUtils]: 4: Hoare triple {27904#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L290 TraceCheckUtils]: 5: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L290 TraceCheckUtils]: 6: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {27904#true} {27904#true} #377#return; {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {27904#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L272 TraceCheckUtils]: 9: Hoare triple {27904#true} call main_#t~ret23#1 := base2flt(1, 0); {27904#true} is VALID [2022-02-21 03:10:24,989 INFO L290 TraceCheckUtils]: 10: Hoare triple {27904#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {28016#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:24,990 INFO L290 TraceCheckUtils]: 11: Hoare triple {28016#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {28016#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:24,990 INFO L290 TraceCheckUtils]: 12: Hoare triple {28016#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {28016#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:24,990 INFO L290 TraceCheckUtils]: 13: Hoare triple {28016#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {28016#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:24,991 INFO L290 TraceCheckUtils]: 14: Hoare triple {28016#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {28016#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:24,991 INFO L290 TraceCheckUtils]: 15: Hoare triple {28016#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {28016#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:24,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {28016#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:24,992 INFO L290 TraceCheckUtils]: 17: Hoare triple {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:24,992 INFO L290 TraceCheckUtils]: 18: Hoare triple {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:24,993 INFO L290 TraceCheckUtils]: 19: Hoare triple {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !(~e <= -128); {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:24,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 <= 2147483647; {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:24,994 INFO L290 TraceCheckUtils]: 21: Hoare triple {28035#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:24,994 INFO L290 TraceCheckUtils]: 22: Hoare triple {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~m % 4294967296 < 16777216; {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:24,994 INFO L290 TraceCheckUtils]: 23: Hoare triple {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !false; {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:24,994 INFO L290 TraceCheckUtils]: 24: Hoare triple {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !(~e <= -128); {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:24,995 INFO L290 TraceCheckUtils]: 25: Hoare triple {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 <= 2147483647; {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:24,995 INFO L290 TraceCheckUtils]: 26: Hoare triple {28051#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:24,996 INFO L290 TraceCheckUtils]: 27: Hoare triple {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~m % 4294967296 < 16777216; {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:24,996 INFO L290 TraceCheckUtils]: 28: Hoare triple {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !false; {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:24,996 INFO L290 TraceCheckUtils]: 29: Hoare triple {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !(~e <= -128); {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:24,997 INFO L290 TraceCheckUtils]: 30: Hoare triple {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 <= 2147483647; {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:24,997 INFO L290 TraceCheckUtils]: 31: Hoare triple {28067#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:24,998 INFO L290 TraceCheckUtils]: 32: Hoare triple {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~m % 4294967296 < 16777216; {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:24,998 INFO L290 TraceCheckUtils]: 33: Hoare triple {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !false; {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:24,998 INFO L290 TraceCheckUtils]: 34: Hoare triple {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !(~e <= -128); {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:24,999 INFO L290 TraceCheckUtils]: 35: Hoare triple {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e - 1 <= 2147483647; {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:24,999 INFO L290 TraceCheckUtils]: 36: Hoare triple {28083#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:24,999 INFO L290 TraceCheckUtils]: 37: Hoare triple {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~m % 4294967296 < 16777216; {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:25,000 INFO L290 TraceCheckUtils]: 38: Hoare triple {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume !false; {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:25,000 INFO L290 TraceCheckUtils]: 39: Hoare triple {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume !(~e <= -128); {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:25,000 INFO L290 TraceCheckUtils]: 40: Hoare triple {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~e - 1 <= 2147483647; {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:25,001 INFO L290 TraceCheckUtils]: 41: Hoare triple {28099#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28115#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:25,001 INFO L290 TraceCheckUtils]: 42: Hoare triple {28115#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~m % 4294967296 < 16777216; {28115#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:25,001 INFO L290 TraceCheckUtils]: 43: Hoare triple {28115#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume !false; {28115#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:25,002 INFO L290 TraceCheckUtils]: 44: Hoare triple {28115#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~e <= -128;~__retres4~0 := 0; {28125#(<= (+ 122 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:25,002 INFO L290 TraceCheckUtils]: 45: Hoare triple {28125#(<= (+ 122 |base2flt_#in~e|) 0)} #res := ~__retres4~0; {28125#(<= (+ 122 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:25,003 INFO L290 TraceCheckUtils]: 46: Hoare triple {28125#(<= (+ 122 |base2flt_#in~e|) 0)} assume true; {28125#(<= (+ 122 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:25,003 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28125#(<= (+ 122 |base2flt_#in~e|) 0)} {27904#true} #379#return; {27905#false} is VALID [2022-02-21 03:10:25,003 INFO L290 TraceCheckUtils]: 48: Hoare triple {27905#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {27905#false} is VALID [2022-02-21 03:10:25,003 INFO L272 TraceCheckUtils]: 49: Hoare triple {27905#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {27905#false} is VALID [2022-02-21 03:10:25,003 INFO L290 TraceCheckUtils]: 50: Hoare triple {27905#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27905#false} is VALID [2022-02-21 03:10:25,003 INFO L290 TraceCheckUtils]: 51: Hoare triple {27905#false} assume !(0 == ~m % 4294967296); {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 52: Hoare triple {27905#false} assume !(~m % 4294967296 < 16777216); {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 53: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 54: Hoare triple {27905#false} assume ~m % 4294967296 >= 33554432; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 55: Hoare triple {27905#false} assume ~e >= 127;~__retres4~0 := 4294967295; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 56: Hoare triple {27905#false} #res := ~__retres4~0; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 57: Hoare triple {27905#false} assume true; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {27905#false} {27905#false} #381#return; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 59: Hoare triple {27905#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L272 TraceCheckUtils]: 60: Hoare triple {27905#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 61: Hoare triple {27905#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 62: Hoare triple {27905#false} assume !(0 == ~m % 4294967296); {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 63: Hoare triple {27905#false} assume !(~m % 4294967296 < 16777216); {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 64: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:25,004 INFO L290 TraceCheckUtils]: 65: Hoare triple {27905#false} assume !(~m % 4294967296 >= 33554432); {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 66: Hoare triple {27905#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 67: Hoare triple {27905#false} assume 128 + ~e <= 2147483647; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 68: Hoare triple {27905#false} assume 128 + ~e >= -2147483648; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 69: Hoare triple {27905#false} assume 128 + ~e <= 2147483647; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 70: Hoare triple {27905#false} assume 128 + ~e >= -2147483648; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 71: Hoare triple {27905#false} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 72: Hoare triple {27905#false} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 73: Hoare triple {27905#false} ~__retres4~0 := ~res~0; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 74: Hoare triple {27905#false} #res := ~__retres4~0; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 75: Hoare triple {27905#false} assume true; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {27905#false} {27905#false} #383#return; {27905#false} is VALID [2022-02-21 03:10:25,005 INFO L290 TraceCheckUtils]: 77: Hoare triple {27905#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 78: Hoare triple {27905#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 79: Hoare triple {27905#false} assume !(0 == mulflt_~b#1 % 4294967296); {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 80: Hoare triple {27905#false} assume !(0 == mulflt_~a#1); {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 81: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 82: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 83: Hoare triple {27905#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 84: Hoare triple {27905#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L290 TraceCheckUtils]: 85: Hoare triple {27905#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {27905#false} is VALID [2022-02-21 03:10:25,006 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 26 proven. 87 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-21 03:10:25,006 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:25,552 INFO L290 TraceCheckUtils]: 85: Hoare triple {27905#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 84: Hoare triple {27905#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 83: Hoare triple {27905#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 82: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 81: Hoare triple {27905#false} assume !false; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 80: Hoare triple {27905#false} assume !(0 == mulflt_~a#1); {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 79: Hoare triple {27905#false} assume !(0 == mulflt_~b#1 % 4294967296); {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 78: Hoare triple {27905#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 77: Hoare triple {27905#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {27904#true} {27905#false} #383#return; {27905#false} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 75: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 74: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 73: Hoare triple {27904#true} ~__retres4~0 := ~res~0; {27904#true} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 72: Hoare triple {27904#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {27904#true} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 71: Hoare triple {27904#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {27904#true} is VALID [2022-02-21 03:10:25,553 INFO L290 TraceCheckUtils]: 70: Hoare triple {27904#true} assume 128 + ~e >= -2147483648; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 69: Hoare triple {27904#true} assume 128 + ~e <= 2147483647; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 68: Hoare triple {27904#true} assume 128 + ~e >= -2147483648; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 67: Hoare triple {27904#true} assume 128 + ~e <= 2147483647; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 66: Hoare triple {27904#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 65: Hoare triple {27904#true} assume !(~m % 4294967296 >= 33554432); {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 64: Hoare triple {27904#true} assume !false; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 63: Hoare triple {27904#true} assume !(~m % 4294967296 < 16777216); {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 62: Hoare triple {27904#true} assume !(0 == ~m % 4294967296); {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 61: Hoare triple {27904#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L272 TraceCheckUtils]: 60: Hoare triple {27905#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 59: Hoare triple {27905#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {27905#false} is VALID [2022-02-21 03:10:25,554 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {27904#true} {27905#false} #381#return; {27905#false} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 57: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 56: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 55: Hoare triple {27904#true} assume ~e >= 127;~__retres4~0 := 4294967295; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 54: Hoare triple {27904#true} assume ~m % 4294967296 >= 33554432; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 53: Hoare triple {27904#true} assume !false; {27904#true} is VALID [2022-02-21 03:10:25,554 INFO L290 TraceCheckUtils]: 52: Hoare triple {27904#true} assume !(~m % 4294967296 < 16777216); {27904#true} is VALID [2022-02-21 03:10:25,555 INFO L290 TraceCheckUtils]: 51: Hoare triple {27904#true} assume !(0 == ~m % 4294967296); {27904#true} is VALID [2022-02-21 03:10:25,555 INFO L290 TraceCheckUtils]: 50: Hoare triple {27904#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:25,555 INFO L272 TraceCheckUtils]: 49: Hoare triple {27905#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {27904#true} is VALID [2022-02-21 03:10:25,555 INFO L290 TraceCheckUtils]: 48: Hoare triple {27905#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {27905#false} is VALID [2022-02-21 03:10:25,567 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28366#(not (<= 0 |base2flt_#in~e|))} {27904#true} #379#return; {27905#false} is VALID [2022-02-21 03:10:25,568 INFO L290 TraceCheckUtils]: 46: Hoare triple {28366#(not (<= 0 |base2flt_#in~e|))} assume true; {28366#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:25,568 INFO L290 TraceCheckUtils]: 45: Hoare triple {28366#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {28366#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:25,569 INFO L290 TraceCheckUtils]: 44: Hoare triple {28376#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {28366#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:25,569 INFO L290 TraceCheckUtils]: 43: Hoare triple {28376#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28376#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,569 INFO L290 TraceCheckUtils]: 42: Hoare triple {28376#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28376#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,570 INFO L290 TraceCheckUtils]: 41: Hoare triple {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28376#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,570 INFO L290 TraceCheckUtils]: 40: Hoare triple {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,571 INFO L290 TraceCheckUtils]: 39: Hoare triple {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,571 INFO L290 TraceCheckUtils]: 38: Hoare triple {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,571 INFO L290 TraceCheckUtils]: 37: Hoare triple {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,572 INFO L290 TraceCheckUtils]: 36: Hoare triple {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28386#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,572 INFO L290 TraceCheckUtils]: 35: Hoare triple {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,572 INFO L290 TraceCheckUtils]: 34: Hoare triple {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,573 INFO L290 TraceCheckUtils]: 33: Hoare triple {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,573 INFO L290 TraceCheckUtils]: 32: Hoare triple {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,573 INFO L290 TraceCheckUtils]: 31: Hoare triple {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28402#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,574 INFO L290 TraceCheckUtils]: 30: Hoare triple {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,575 INFO L290 TraceCheckUtils]: 29: Hoare triple {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,575 INFO L290 TraceCheckUtils]: 28: Hoare triple {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,576 INFO L290 TraceCheckUtils]: 27: Hoare triple {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,576 INFO L290 TraceCheckUtils]: 26: Hoare triple {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28418#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,576 INFO L290 TraceCheckUtils]: 25: Hoare triple {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,577 INFO L290 TraceCheckUtils]: 24: Hoare triple {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,577 INFO L290 TraceCheckUtils]: 23: Hoare triple {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,577 INFO L290 TraceCheckUtils]: 22: Hoare triple {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,578 INFO L290 TraceCheckUtils]: 21: Hoare triple {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28434#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,578 INFO L290 TraceCheckUtils]: 20: Hoare triple {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,578 INFO L290 TraceCheckUtils]: 19: Hoare triple {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,579 INFO L290 TraceCheckUtils]: 18: Hoare triple {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,579 INFO L290 TraceCheckUtils]: 17: Hoare triple {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {28450#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,581 INFO L290 TraceCheckUtils]: 15: Hoare triple {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,582 INFO L290 TraceCheckUtils]: 14: Hoare triple {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,582 INFO L290 TraceCheckUtils]: 13: Hoare triple {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,583 INFO L290 TraceCheckUtils]: 12: Hoare triple {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,583 INFO L290 TraceCheckUtils]: 11: Hoare triple {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,583 INFO L290 TraceCheckUtils]: 10: Hoare triple {27904#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {28466#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:25,583 INFO L272 TraceCheckUtils]: 9: Hoare triple {27904#true} call main_#t~ret23#1 := base2flt(1, 0); {27904#true} is VALID [2022-02-21 03:10:25,583 INFO L290 TraceCheckUtils]: 8: Hoare triple {27904#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {27904#true} {27904#true} #377#return; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L290 TraceCheckUtils]: 6: Hoare triple {27904#true} assume true; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L290 TraceCheckUtils]: 5: Hoare triple {27904#true} #res := ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L290 TraceCheckUtils]: 4: Hoare triple {27904#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L290 TraceCheckUtils]: 3: Hoare triple {27904#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L272 TraceCheckUtils]: 2: Hoare triple {27904#true} call main_#t~ret22#1 := base2flt(0, 0); {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L290 TraceCheckUtils]: 1: Hoare triple {27904#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; {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L290 TraceCheckUtils]: 0: Hoare triple {27904#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(22, 2);call #Ultimate.allocInit(12, 3); {27904#true} is VALID [2022-02-21 03:10:25,584 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 4 proven. 97 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-21 03:10:25,584 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [651209537] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:25,584 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:25,585 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 27 [2022-02-21 03:10:25,585 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [329060697] [2022-02-21 03:10:25,585 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:25,585 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 86 [2022-02-21 03:10:25,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:25,586 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:25,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:25,700 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-02-21 03:10:25,700 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:25,701 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-02-21 03:10:25,701 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=232, Invalid=470, Unknown=0, NotChecked=0, Total=702 [2022-02-21 03:10:25,701 INFO L87 Difference]: Start difference. First operand 276 states and 341 transitions. Second operand has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:29,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:29,778 INFO L93 Difference]: Finished difference Result 2056 states and 2649 transitions. [2022-02-21 03:10:29,778 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 50 states. [2022-02-21 03:10:29,778 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 86 [2022-02-21 03:10:29,778 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:29,778 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:29,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 1068 transitions. [2022-02-21 03:10:29,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:29,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 1068 transitions. [2022-02-21 03:10:29,794 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 50 states and 1068 transitions. [2022-02-21 03:10:30,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1068 edges. 1068 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:30,672 INFO L225 Difference]: With dead ends: 2056 [2022-02-21 03:10:30,672 INFO L226 Difference]: Without dead ends: 1830 [2022-02-21 03:10:30,673 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 250 GetRequests, 193 SyntacticMatches, 0 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 877 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=1121, Invalid=2301, Unknown=0, NotChecked=0, Total=3422 [2022-02-21 03:10:30,674 INFO L933 BasicCegarLoop]: 113 mSDtfsCounter, 1389 mSDsluCounter, 955 mSDsCounter, 0 mSdLazyCounter, 537 mSolverCounterSat, 256 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1389 SdHoareTripleChecker+Valid, 1068 SdHoareTripleChecker+Invalid, 793 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 256 IncrementalHoareTripleChecker+Valid, 537 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:30,674 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1389 Valid, 1068 Invalid, 793 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [256 Valid, 537 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-21 03:10:30,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1830 states. [2022-02-21 03:10:30,883 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1830 to 327. [2022-02-21 03:10:30,883 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:30,884 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1830 states. Second operand has 327 states, 306 states have (on average 1.2908496732026145) internal successors, (395), 317 states have internal predecessors, (395), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:30,884 INFO L74 IsIncluded]: Start isIncluded. First operand 1830 states. Second operand has 327 states, 306 states have (on average 1.2908496732026145) internal successors, (395), 317 states have internal predecessors, (395), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:30,884 INFO L87 Difference]: Start difference. First operand 1830 states. Second operand has 327 states, 306 states have (on average 1.2908496732026145) internal successors, (395), 317 states have internal predecessors, (395), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:30,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:30,970 INFO L93 Difference]: Finished difference Result 1830 states and 2313 transitions. [2022-02-21 03:10:30,970 INFO L276 IsEmpty]: Start isEmpty. Operand 1830 states and 2313 transitions. [2022-02-21 03:10:30,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:30,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:30,973 INFO L74 IsIncluded]: Start isIncluded. First operand has 327 states, 306 states have (on average 1.2908496732026145) internal successors, (395), 317 states have internal predecessors, (395), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 1830 states. [2022-02-21 03:10:30,973 INFO L87 Difference]: Start difference. First operand has 327 states, 306 states have (on average 1.2908496732026145) internal successors, (395), 317 states have internal predecessors, (395), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Second operand 1830 states. [2022-02-21 03:10:31,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:31,059 INFO L93 Difference]: Finished difference Result 1830 states and 2313 transitions. [2022-02-21 03:10:31,059 INFO L276 IsEmpty]: Start isEmpty. Operand 1830 states and 2313 transitions. [2022-02-21 03:10:31,061 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:31,061 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:31,061 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:31,061 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:31,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 327 states, 306 states have (on average 1.2908496732026145) internal successors, (395), 317 states have internal predecessors, (395), 4 states have call successors, (4), 4 states have call predecessors, (4), 5 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-21 03:10:31,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 327 states to 327 states and 404 transitions. [2022-02-21 03:10:31,065 INFO L78 Accepts]: Start accepts. Automaton has 327 states and 404 transitions. Word has length 86 [2022-02-21 03:10:31,065 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:31,065 INFO L470 AbstractCegarLoop]: Abstraction has 327 states and 404 transitions. [2022-02-21 03:10:31,066 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 5.962962962962963) internal successors, (161), 26 states have internal predecessors, (161), 2 states have call successors, (10), 3 states have call predecessors, (10), 5 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-21 03:10:31,066 INFO L276 IsEmpty]: Start isEmpty. Operand 327 states and 404 transitions. [2022-02-21 03:10:31,066 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2022-02-21 03:10:31,066 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:31,066 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 4, 4, 4, 3, 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, 1, 1, 1, 1] [2022-02-21 03:10:31,092 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-02-21 03:10:31,279 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:31,279 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:31,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:31,280 INFO L85 PathProgramCache]: Analyzing trace with hash 1204355564, now seen corresponding path program 1 times [2022-02-21 03:10:31,280 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:31,280 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [104819307] [2022-02-21 03:10:31,280 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:31,280 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:31,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,317 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:31,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,319 INFO L290 TraceCheckUtils]: 0: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,320 INFO L290 TraceCheckUtils]: 1: Hoare triple {34938#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {34938#true} is VALID [2022-02-21 03:10:31,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,320 INFO L290 TraceCheckUtils]: 3: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,320 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {34938#true} {34938#true} #377#return; {34938#true} is VALID [2022-02-21 03:10:31,320 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:31,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,441 INFO L290 TraceCheckUtils]: 0: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,441 INFO L290 TraceCheckUtils]: 1: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,442 INFO L290 TraceCheckUtils]: 3: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,442 INFO L290 TraceCheckUtils]: 4: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,442 INFO L290 TraceCheckUtils]: 5: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,443 INFO L290 TraceCheckUtils]: 6: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,444 INFO L290 TraceCheckUtils]: 7: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,444 INFO L290 TraceCheckUtils]: 8: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,445 INFO L290 TraceCheckUtils]: 9: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,445 INFO L290 TraceCheckUtils]: 10: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,446 INFO L290 TraceCheckUtils]: 11: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,446 INFO L290 TraceCheckUtils]: 12: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,447 INFO L290 TraceCheckUtils]: 13: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,447 INFO L290 TraceCheckUtils]: 14: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,447 INFO L290 TraceCheckUtils]: 15: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,448 INFO L290 TraceCheckUtils]: 16: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,448 INFO L290 TraceCheckUtils]: 17: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,448 INFO L290 TraceCheckUtils]: 18: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,449 INFO L290 TraceCheckUtils]: 19: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,449 INFO L290 TraceCheckUtils]: 20: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,449 INFO L290 TraceCheckUtils]: 21: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 22: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 23: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 24: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 25: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 26: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 27: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 28: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 29: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 30: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 31: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35023#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 32: Hoare triple {35023#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 33: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 34: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 35: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 36: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 37: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 38: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 39: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 40: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 41: Hoare triple {35024#(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; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 42: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,458 INFO L290 TraceCheckUtils]: 43: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,458 INFO L290 TraceCheckUtils]: 44: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume true; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,458 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {35024#(not (= |base2flt_#in~m| 1))} {34938#true} #379#return; {34939#false} is VALID [2022-02-21 03:10:31,459 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:31,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,472 INFO L290 TraceCheckUtils]: 0: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,472 INFO L290 TraceCheckUtils]: 3: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,472 INFO L290 TraceCheckUtils]: 4: Hoare triple {34938#true} assume ~m % 4294967296 >= 33554432; {34938#true} is VALID [2022-02-21 03:10:31,473 INFO L290 TraceCheckUtils]: 5: Hoare triple {34938#true} assume ~e >= 127;~__retres4~0 := 4294967295; {34938#true} is VALID [2022-02-21 03:10:31,473 INFO L290 TraceCheckUtils]: 6: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,473 INFO L290 TraceCheckUtils]: 7: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,473 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {34938#true} {34939#false} #381#return; {34939#false} is VALID [2022-02-21 03:10:31,473 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:31,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,478 INFO L290 TraceCheckUtils]: 0: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,478 INFO L290 TraceCheckUtils]: 1: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 2: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 3: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 4: Hoare triple {34938#true} assume !(~m % 4294967296 >= 33554432); {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 5: Hoare triple {34938#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 6: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 7: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 8: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 9: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,479 INFO L290 TraceCheckUtils]: 10: Hoare triple {34938#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {34938#true} is VALID [2022-02-21 03:10:31,487 INFO L290 TraceCheckUtils]: 11: Hoare triple {34938#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {34938#true} is VALID [2022-02-21 03:10:31,488 INFO L290 TraceCheckUtils]: 12: Hoare triple {34938#true} ~__retres4~0 := ~res~0; {34938#true} is VALID [2022-02-21 03:10:31,488 INFO L290 TraceCheckUtils]: 13: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,488 INFO L290 TraceCheckUtils]: 14: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,488 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {34938#true} {34939#false} #383#return; {34939#false} is VALID [2022-02-21 03:10:31,488 INFO L290 TraceCheckUtils]: 0: Hoare triple {34938#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(22, 2);call #Ultimate.allocInit(12, 3); {34938#true} is VALID [2022-02-21 03:10:31,488 INFO L290 TraceCheckUtils]: 1: Hoare triple {34938#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; {34938#true} is VALID [2022-02-21 03:10:31,489 INFO L272 TraceCheckUtils]: 2: Hoare triple {34938#true} call main_#t~ret22#1 := base2flt(0, 0); {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,489 INFO L290 TraceCheckUtils]: 3: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,489 INFO L290 TraceCheckUtils]: 4: Hoare triple {34938#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {34938#true} is VALID [2022-02-21 03:10:31,489 INFO L290 TraceCheckUtils]: 5: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,489 INFO L290 TraceCheckUtils]: 6: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,490 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {34938#true} {34938#true} #377#return; {34938#true} is VALID [2022-02-21 03:10:31,490 INFO L290 TraceCheckUtils]: 8: Hoare triple {34938#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {34938#true} is VALID [2022-02-21 03:10:31,490 INFO L272 TraceCheckUtils]: 9: Hoare triple {34938#true} call main_#t~ret23#1 := base2flt(1, 0); {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,491 INFO L290 TraceCheckUtils]: 10: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,491 INFO L290 TraceCheckUtils]: 11: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,491 INFO L290 TraceCheckUtils]: 12: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,491 INFO L290 TraceCheckUtils]: 13: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,492 INFO L290 TraceCheckUtils]: 14: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,492 INFO L290 TraceCheckUtils]: 15: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,492 INFO L290 TraceCheckUtils]: 16: Hoare triple {35017#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,493 INFO L290 TraceCheckUtils]: 17: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,494 INFO L290 TraceCheckUtils]: 18: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,494 INFO L290 TraceCheckUtils]: 19: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,495 INFO L290 TraceCheckUtils]: 20: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,495 INFO L290 TraceCheckUtils]: 21: Hoare triple {35018#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,496 INFO L290 TraceCheckUtils]: 22: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,497 INFO L290 TraceCheckUtils]: 23: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,497 INFO L290 TraceCheckUtils]: 24: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,497 INFO L290 TraceCheckUtils]: 25: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,498 INFO L290 TraceCheckUtils]: 26: Hoare triple {35019#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,498 INFO L290 TraceCheckUtils]: 27: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,499 INFO L290 TraceCheckUtils]: 28: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,499 INFO L290 TraceCheckUtils]: 29: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,499 INFO L290 TraceCheckUtils]: 30: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,500 INFO L290 TraceCheckUtils]: 31: Hoare triple {35020#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,500 INFO L290 TraceCheckUtils]: 32: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,501 INFO L290 TraceCheckUtils]: 33: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,501 INFO L290 TraceCheckUtils]: 34: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,502 INFO L290 TraceCheckUtils]: 35: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,502 INFO L290 TraceCheckUtils]: 36: Hoare triple {35021#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,503 INFO L290 TraceCheckUtils]: 37: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,503 INFO L290 TraceCheckUtils]: 38: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,504 INFO L290 TraceCheckUtils]: 39: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,504 INFO L290 TraceCheckUtils]: 40: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,505 INFO L290 TraceCheckUtils]: 41: Hoare triple {35022#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {35023#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,506 INFO L290 TraceCheckUtils]: 42: Hoare triple {35023#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,506 INFO L290 TraceCheckUtils]: 43: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,506 INFO L290 TraceCheckUtils]: 44: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,507 INFO L290 TraceCheckUtils]: 45: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,507 INFO L290 TraceCheckUtils]: 46: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,507 INFO L290 TraceCheckUtils]: 47: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,508 INFO L290 TraceCheckUtils]: 48: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,508 INFO L290 TraceCheckUtils]: 49: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,508 INFO L290 TraceCheckUtils]: 50: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,509 INFO L290 TraceCheckUtils]: 51: Hoare triple {35024#(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; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,509 INFO L290 TraceCheckUtils]: 52: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,509 INFO L290 TraceCheckUtils]: 53: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,509 INFO L290 TraceCheckUtils]: 54: Hoare triple {35024#(not (= |base2flt_#in~m| 1))} assume true; {35024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,510 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {35024#(not (= |base2flt_#in~m| 1))} {34938#true} #379#return; {34939#false} is VALID [2022-02-21 03:10:31,510 INFO L290 TraceCheckUtils]: 56: Hoare triple {34939#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {34939#false} is VALID [2022-02-21 03:10:31,510 INFO L272 TraceCheckUtils]: 57: Hoare triple {34939#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,510 INFO L290 TraceCheckUtils]: 58: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,510 INFO L290 TraceCheckUtils]: 59: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 60: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 61: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 62: Hoare triple {34938#true} assume ~m % 4294967296 >= 33554432; {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 63: Hoare triple {34938#true} assume ~e >= 127;~__retres4~0 := 4294967295; {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 64: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 65: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,511 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {34938#true} {34939#false} #381#return; {34939#false} is VALID [2022-02-21 03:10:31,511 INFO L290 TraceCheckUtils]: 67: Hoare triple {34939#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {34939#false} is VALID [2022-02-21 03:10:31,512 INFO L272 TraceCheckUtils]: 68: Hoare triple {34939#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 69: Hoare triple {35016#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 70: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 71: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 72: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 73: Hoare triple {34938#true} assume !(~m % 4294967296 >= 33554432); {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 74: Hoare triple {34938#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 75: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,512 INFO L290 TraceCheckUtils]: 76: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 77: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 78: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 79: Hoare triple {34938#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 80: Hoare triple {34938#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 81: Hoare triple {34938#true} ~__retres4~0 := ~res~0; {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 82: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 83: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,513 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {34938#true} {34939#false} #383#return; {34939#false} is VALID [2022-02-21 03:10:31,513 INFO L290 TraceCheckUtils]: 85: Hoare triple {34939#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 86: Hoare triple {34939#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 87: Hoare triple {34939#false} assume !(0 == mulflt_~b#1 % 4294967296); {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 88: Hoare triple {34939#false} assume !(0 == mulflt_~a#1); {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 89: Hoare triple {34939#false} assume !false; {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 90: Hoare triple {34939#false} assume !false; {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 91: Hoare triple {34939#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 92: Hoare triple {34939#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {34939#false} is VALID [2022-02-21 03:10:31,514 INFO L290 TraceCheckUtils]: 93: Hoare triple {34939#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {34939#false} is VALID [2022-02-21 03:10:31,515 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 4 proven. 93 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-21 03:10:31,515 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:31,515 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [104819307] [2022-02-21 03:10:31,515 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [104819307] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:31,515 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1535579515] [2022-02-21 03:10:31,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:31,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:31,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:31,517 INFO L229 MonitoredProcess]: Starting monitored process 14 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:31,518 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-02-21 03:10:31,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,581 INFO L263 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-21 03:10:31,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,596 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:31,983 INFO L290 TraceCheckUtils]: 0: Hoare triple {34938#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(22, 2);call #Ultimate.allocInit(12, 3); {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {34938#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; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L272 TraceCheckUtils]: 2: Hoare triple {34938#true} call main_#t~ret22#1 := base2flt(0, 0); {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 3: Hoare triple {34938#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 4: Hoare triple {34938#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 6: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {34938#true} {34938#true} #377#return; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 8: Hoare triple {34938#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L272 TraceCheckUtils]: 9: Hoare triple {34938#true} call main_#t~ret23#1 := base2flt(1, 0); {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 10: Hoare triple {34938#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 11: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,984 INFO L290 TraceCheckUtils]: 12: Hoare triple {34938#true} assume ~m % 4294967296 < 16777216; {34938#true} is VALID [2022-02-21 03:10:31,985 INFO L290 TraceCheckUtils]: 13: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {34938#true} assume !(~e <= -128); {34938#true} is VALID [2022-02-21 03:10:31,985 INFO L290 TraceCheckUtils]: 15: Hoare triple {34938#true} assume ~e - 1 <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,985 INFO L290 TraceCheckUtils]: 16: Hoare triple {34938#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {34938#true} is VALID [2022-02-21 03:10:31,985 INFO L290 TraceCheckUtils]: 17: Hoare triple {34938#true} assume ~m % 4294967296 < 16777216; {34938#true} is VALID [2022-02-21 03:10:31,985 INFO L290 TraceCheckUtils]: 18: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 19: Hoare triple {34938#true} assume !(~e <= -128); {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 20: Hoare triple {34938#true} assume ~e - 1 <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 21: Hoare triple {34938#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 22: Hoare triple {34938#true} assume ~m % 4294967296 < 16777216; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 23: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 24: Hoare triple {34938#true} assume !(~e <= -128); {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 25: Hoare triple {34938#true} assume ~e - 1 <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 26: Hoare triple {34938#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 27: Hoare triple {34938#true} assume ~m % 4294967296 < 16777216; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 28: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 29: Hoare triple {34938#true} assume !(~e <= -128); {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 30: Hoare triple {34938#true} assume ~e - 1 <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 31: Hoare triple {34938#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 32: Hoare triple {34938#true} assume ~m % 4294967296 < 16777216; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 33: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 34: Hoare triple {34938#true} assume !(~e <= -128); {34938#true} is VALID [2022-02-21 03:10:31,986 INFO L290 TraceCheckUtils]: 35: Hoare triple {34938#true} assume ~e - 1 <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 36: Hoare triple {34938#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 37: Hoare triple {34938#true} assume ~m % 4294967296 < 16777216; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 38: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 39: Hoare triple {34938#true} assume !(~e <= -128); {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 40: Hoare triple {34938#true} assume ~e - 1 <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 41: Hoare triple {34938#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 42: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 43: Hoare triple {34938#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 44: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 45: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 46: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 47: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 48: Hoare triple {34938#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 49: Hoare triple {34938#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 50: Hoare triple {34938#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 51: Hoare triple {34938#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; {34938#true} is VALID [2022-02-21 03:10:31,987 INFO L290 TraceCheckUtils]: 52: Hoare triple {34938#true} ~__retres4~0 := ~res~0; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 53: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 54: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {34938#true} {34938#true} #379#return; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 56: Hoare triple {34938#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L272 TraceCheckUtils]: 57: Hoare triple {34938#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 58: Hoare triple {34938#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 59: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 60: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 61: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 62: Hoare triple {34938#true} assume ~m % 4294967296 >= 33554432; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 63: Hoare triple {34938#true} assume ~e >= 127;~__retres4~0 := 4294967295; {34938#true} is VALID [2022-02-21 03:10:31,988 INFO L290 TraceCheckUtils]: 64: Hoare triple {34938#true} #res := ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 65: Hoare triple {34938#true} assume true; {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {34938#true} {34938#true} #381#return; {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 67: Hoare triple {34938#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L272 TraceCheckUtils]: 68: Hoare triple {34938#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 69: Hoare triple {34938#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 70: Hoare triple {34938#true} assume !(0 == ~m % 4294967296); {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 71: Hoare triple {34938#true} assume !(~m % 4294967296 < 16777216); {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 72: Hoare triple {34938#true} assume !false; {34938#true} is VALID [2022-02-21 03:10:31,989 INFO L290 TraceCheckUtils]: 73: Hoare triple {34938#true} assume !(~m % 4294967296 >= 33554432); {34938#true} is VALID [2022-02-21 03:10:31,990 INFO L290 TraceCheckUtils]: 74: Hoare triple {34938#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {34938#true} is VALID [2022-02-21 03:10:31,990 INFO L290 TraceCheckUtils]: 75: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,990 INFO L290 TraceCheckUtils]: 76: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,990 INFO L290 TraceCheckUtils]: 77: Hoare triple {34938#true} assume 128 + ~e <= 2147483647; {34938#true} is VALID [2022-02-21 03:10:31,990 INFO L290 TraceCheckUtils]: 78: Hoare triple {34938#true} assume 128 + ~e >= -2147483648; {34938#true} is VALID [2022-02-21 03:10:31,990 INFO L290 TraceCheckUtils]: 79: Hoare triple {34938#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {34938#true} is VALID [2022-02-21 03:10:31,991 INFO L290 TraceCheckUtils]: 80: Hoare triple {34938#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {35268#(<= base2flt_~res~0 0)} is VALID [2022-02-21 03:10:31,991 INFO L290 TraceCheckUtils]: 81: Hoare triple {35268#(<= base2flt_~res~0 0)} ~__retres4~0 := ~res~0; {35272#(<= base2flt_~__retres4~0 0)} is VALID [2022-02-21 03:10:31,991 INFO L290 TraceCheckUtils]: 82: Hoare triple {35272#(<= base2flt_~__retres4~0 0)} #res := ~__retres4~0; {35276#(<= |base2flt_#res| 0)} is VALID [2022-02-21 03:10:31,992 INFO L290 TraceCheckUtils]: 83: Hoare triple {35276#(<= |base2flt_#res| 0)} assume true; {35276#(<= |base2flt_#res| 0)} is VALID [2022-02-21 03:10:31,992 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {35276#(<= |base2flt_#res| 0)} {34938#true} #383#return; {35283#(<= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:31,993 INFO L290 TraceCheckUtils]: 85: Hoare triple {35283#(<= |ULTIMATE.start_main_#t~ret25#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {35287#(<= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:31,993 INFO L290 TraceCheckUtils]: 86: Hoare triple {35287#(<= |ULTIMATE.start_mulflt_~b#1| 0)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {35291#(<= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:31,993 INFO L290 TraceCheckUtils]: 87: Hoare triple {35291#(<= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {35291#(<= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:31,994 INFO L290 TraceCheckUtils]: 88: Hoare triple {35291#(<= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~a#1); {35298#(and (<= |ULTIMATE.start_mulflt_~a#1| 0) (not (= |ULTIMATE.start_mulflt_~a#1| 0)))} is VALID [2022-02-21 03:10:31,994 INFO L290 TraceCheckUtils]: 89: Hoare triple {35298#(and (<= |ULTIMATE.start_mulflt_~a#1| 0) (not (= |ULTIMATE.start_mulflt_~a#1| 0)))} assume !false; {35298#(and (<= |ULTIMATE.start_mulflt_~a#1| 0) (not (= |ULTIMATE.start_mulflt_~a#1| 0)))} is VALID [2022-02-21 03:10:31,994 INFO L290 TraceCheckUtils]: 90: Hoare triple {35298#(and (<= |ULTIMATE.start_mulflt_~a#1| 0) (not (= |ULTIMATE.start_mulflt_~a#1| 0)))} assume !false; {35298#(and (<= |ULTIMATE.start_mulflt_~a#1| 0) (not (= |ULTIMATE.start_mulflt_~a#1| 0)))} is VALID [2022-02-21 03:10:31,995 INFO L290 TraceCheckUtils]: 91: Hoare triple {35298#(and (<= |ULTIMATE.start_mulflt_~a#1| 0) (not (= |ULTIMATE.start_mulflt_~a#1| 0)))} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {34939#false} is VALID [2022-02-21 03:10:31,995 INFO L290 TraceCheckUtils]: 92: Hoare triple {34939#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {34939#false} is VALID [2022-02-21 03:10:31,995 INFO L290 TraceCheckUtils]: 93: Hoare triple {34939#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {34939#false} is VALID [2022-02-21 03:10:31,996 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-02-21 03:10:31,996 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:31,996 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1535579515] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:31,996 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:31,996 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [11] total 18 [2022-02-21 03:10:31,996 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2056795123] [2022-02-21 03:10:31,996 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:31,997 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 94 [2022-02-21 03:10:31,997 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:31,997 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:32,035 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:32,036 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-21 03:10:32,036 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:32,036 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-21 03:10:32,036 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=260, Unknown=0, NotChecked=0, Total=306 [2022-02-21 03:10:32,036 INFO L87 Difference]: Start difference. First operand 327 states and 404 transitions. Second operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:33,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:33,369 INFO L93 Difference]: Finished difference Result 662 states and 793 transitions. [2022-02-21 03:10:33,369 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-21 03:10:33,369 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 94 [2022-02-21 03:10:33,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:33,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:33,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 481 transitions. [2022-02-21 03:10:33,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:33,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 481 transitions. [2022-02-21 03:10:33,373 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 481 transitions. [2022-02-21 03:10:33,663 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 481 edges. 481 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:33,682 INFO L225 Difference]: With dead ends: 662 [2022-02-21 03:10:33,682 INFO L226 Difference]: Without dead ends: 610 [2022-02-21 03:10:33,682 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=435, Unknown=0, NotChecked=0, Total=506 [2022-02-21 03:10:33,683 INFO L933 BasicCegarLoop]: 274 mSDtfsCounter, 249 mSDsluCounter, 1520 mSDsCounter, 0 mSdLazyCounter, 255 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 249 SdHoareTripleChecker+Valid, 1794 SdHoareTripleChecker+Invalid, 264 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 255 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:33,683 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [249 Valid, 1794 Invalid, 264 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 255 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-21 03:10:33,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 610 states. [2022-02-21 03:10:33,881 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 610 to 338. [2022-02-21 03:10:33,881 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:33,882 INFO L82 GeneralOperation]: Start isEquivalent. First operand 610 states. Second operand has 338 states, 316 states have (on average 1.2848101265822784) internal successors, (406), 327 states have internal predecessors, (406), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:33,882 INFO L74 IsIncluded]: Start isIncluded. First operand 610 states. Second operand has 338 states, 316 states have (on average 1.2848101265822784) internal successors, (406), 327 states have internal predecessors, (406), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:33,883 INFO L87 Difference]: Start difference. First operand 610 states. Second operand has 338 states, 316 states have (on average 1.2848101265822784) internal successors, (406), 327 states have internal predecessors, (406), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:33,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:33,894 INFO L93 Difference]: Finished difference Result 610 states and 731 transitions. [2022-02-21 03:10:33,894 INFO L276 IsEmpty]: Start isEmpty. Operand 610 states and 731 transitions. [2022-02-21 03:10:33,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:33,895 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:33,896 INFO L74 IsIncluded]: Start isIncluded. First operand has 338 states, 316 states have (on average 1.2848101265822784) internal successors, (406), 327 states have internal predecessors, (406), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Second operand 610 states. [2022-02-21 03:10:33,896 INFO L87 Difference]: Start difference. First operand has 338 states, 316 states have (on average 1.2848101265822784) internal successors, (406), 327 states have internal predecessors, (406), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Second operand 610 states. [2022-02-21 03:10:33,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:33,911 INFO L93 Difference]: Finished difference Result 610 states and 731 transitions. [2022-02-21 03:10:33,911 INFO L276 IsEmpty]: Start isEmpty. Operand 610 states and 731 transitions. [2022-02-21 03:10:33,912 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:33,912 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:33,912 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:33,912 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:33,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 338 states, 316 states have (on average 1.2848101265822784) internal successors, (406), 327 states have internal predecessors, (406), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:33,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 338 states to 338 states and 416 transitions. [2022-02-21 03:10:33,919 INFO L78 Accepts]: Start accepts. Automaton has 338 states and 416 transitions. Word has length 94 [2022-02-21 03:10:33,919 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:33,919 INFO L470 AbstractCegarLoop]: Abstraction has 338 states and 416 transitions. [2022-02-21 03:10:33,919 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.0) internal successors, (45), 8 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:33,919 INFO L276 IsEmpty]: Start isEmpty. Operand 338 states and 416 transitions. [2022-02-21 03:10:33,920 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2022-02-21 03:10:33,920 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:33,920 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 4, 4, 4, 3, 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, 1, 1, 1, 1] [2022-02-21 03:10:33,940 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:34,134 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-02-21 03:10:34,134 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:34,134 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:34,135 INFO L85 PathProgramCache]: Analyzing trace with hash 1204357486, now seen corresponding path program 1 times [2022-02-21 03:10:34,135 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:34,135 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1581753528] [2022-02-21 03:10:34,135 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:34,135 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:34,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:34,189 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:34,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:34,192 INFO L290 TraceCheckUtils]: 0: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {37640#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {37640#true} is VALID [2022-02-21 03:10:34,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {37640#true} #res := ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,193 INFO L290 TraceCheckUtils]: 3: Hoare triple {37640#true} assume true; {37640#true} is VALID [2022-02-21 03:10:34,193 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {37640#true} {37640#true} #377#return; {37640#true} is VALID [2022-02-21 03:10:34,193 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:34,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 0: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 1: Hoare triple {37640#true} assume !(0 == ~m % 4294967296); {37640#true} is VALID [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 2: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 3: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 4: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 5: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,205 INFO L290 TraceCheckUtils]: 6: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 7: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 8: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 9: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 10: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 11: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 12: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 13: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,206 INFO L290 TraceCheckUtils]: 14: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 15: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 16: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 17: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 18: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 19: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 20: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 21: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,207 INFO L290 TraceCheckUtils]: 22: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 24: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 25: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 26: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 27: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 28: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 29: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,208 INFO L290 TraceCheckUtils]: 30: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 32: Hoare triple {37640#true} assume !(~m % 4294967296 < 16777216); {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 33: Hoare triple {37640#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 34: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 35: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 36: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 37: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 38: Hoare triple {37640#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {37640#true} is VALID [2022-02-21 03:10:34,209 INFO L290 TraceCheckUtils]: 39: Hoare triple {37640#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L290 TraceCheckUtils]: 40: Hoare triple {37640#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L290 TraceCheckUtils]: 41: Hoare triple {37640#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; {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L290 TraceCheckUtils]: 42: Hoare triple {37640#true} ~__retres4~0 := ~res~0; {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L290 TraceCheckUtils]: 43: Hoare triple {37640#true} #res := ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L290 TraceCheckUtils]: 44: Hoare triple {37640#true} assume true; {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {37640#true} {37640#true} #379#return; {37640#true} is VALID [2022-02-21 03:10:34,210 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:34,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 0: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {37640#true} assume !(0 == ~m % 4294967296); {37640#true} is VALID [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {37640#true} assume !(~m % 4294967296 < 16777216); {37640#true} is VALID [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 3: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 4: Hoare triple {37640#true} assume ~m % 4294967296 >= 33554432; {37640#true} is VALID [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {37640#true} assume ~e >= 127;~__retres4~0 := 4294967295; {37640#true} is VALID [2022-02-21 03:10:34,214 INFO L290 TraceCheckUtils]: 6: Hoare triple {37640#true} #res := ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,215 INFO L290 TraceCheckUtils]: 7: Hoare triple {37640#true} assume true; {37640#true} is VALID [2022-02-21 03:10:34,215 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {37640#true} {37640#true} #381#return; {37640#true} is VALID [2022-02-21 03:10:34,215 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:34,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:34,238 INFO L290 TraceCheckUtils]: 0: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,238 INFO L290 TraceCheckUtils]: 1: Hoare triple {37640#true} assume !(0 == ~m % 4294967296); {37640#true} is VALID [2022-02-21 03:10:34,238 INFO L290 TraceCheckUtils]: 2: Hoare triple {37640#true} assume !(~m % 4294967296 < 16777216); {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 3: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 4: Hoare triple {37640#true} assume !(~m % 4294967296 >= 33554432); {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 5: Hoare triple {37640#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 6: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 7: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 8: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 9: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,239 INFO L290 TraceCheckUtils]: 10: Hoare triple {37640#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {37640#true} is VALID [2022-02-21 03:10:34,240 INFO L290 TraceCheckUtils]: 11: Hoare triple {37640#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {37722#(<= 0 base2flt_~res~0)} is VALID [2022-02-21 03:10:34,240 INFO L290 TraceCheckUtils]: 12: Hoare triple {37722#(<= 0 base2flt_~res~0)} ~__retres4~0 := ~res~0; {37723#(<= 0 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:34,240 INFO L290 TraceCheckUtils]: 13: Hoare triple {37723#(<= 0 base2flt_~__retres4~0)} #res := ~__retres4~0; {37724#(<= 0 |base2flt_#res|)} is VALID [2022-02-21 03:10:34,241 INFO L290 TraceCheckUtils]: 14: Hoare triple {37724#(<= 0 |base2flt_#res|)} assume true; {37724#(<= 0 |base2flt_#res|)} is VALID [2022-02-21 03:10:34,241 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37724#(<= 0 |base2flt_#res|)} {37640#true} #383#return; {37718#(<= 0 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:34,242 INFO L290 TraceCheckUtils]: 0: Hoare triple {37640#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(22, 2);call #Ultimate.allocInit(12, 3); {37640#true} is VALID [2022-02-21 03:10:34,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {37640#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; {37640#true} is VALID [2022-02-21 03:10:34,242 INFO L272 TraceCheckUtils]: 2: Hoare triple {37640#true} call main_#t~ret22#1 := base2flt(0, 0); {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:34,242 INFO L290 TraceCheckUtils]: 3: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,242 INFO L290 TraceCheckUtils]: 4: Hoare triple {37640#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {37640#true} is VALID [2022-02-21 03:10:34,242 INFO L290 TraceCheckUtils]: 5: Hoare triple {37640#true} #res := ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,243 INFO L290 TraceCheckUtils]: 6: Hoare triple {37640#true} assume true; {37640#true} is VALID [2022-02-21 03:10:34,243 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {37640#true} {37640#true} #377#return; {37640#true} is VALID [2022-02-21 03:10:34,243 INFO L290 TraceCheckUtils]: 8: Hoare triple {37640#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {37640#true} is VALID [2022-02-21 03:10:34,243 INFO L272 TraceCheckUtils]: 9: Hoare triple {37640#true} call main_#t~ret23#1 := base2flt(1, 0); {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:34,243 INFO L290 TraceCheckUtils]: 10: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,243 INFO L290 TraceCheckUtils]: 11: Hoare triple {37640#true} assume !(0 == ~m % 4294967296); {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 12: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 13: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 14: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 15: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 16: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 17: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 18: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,244 INFO L290 TraceCheckUtils]: 19: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 20: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 21: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 22: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 23: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 24: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 25: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 26: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 27: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,245 INFO L290 TraceCheckUtils]: 28: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 29: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 30: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 31: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 32: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 33: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 34: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 35: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 36: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,246 INFO L290 TraceCheckUtils]: 37: Hoare triple {37640#true} assume ~m % 4294967296 < 16777216; {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 38: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 39: Hoare triple {37640#true} assume !(~e <= -128); {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 40: Hoare triple {37640#true} assume ~e - 1 <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 41: Hoare triple {37640#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 42: Hoare triple {37640#true} assume !(~m % 4294967296 < 16777216); {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 43: Hoare triple {37640#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 44: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,247 INFO L290 TraceCheckUtils]: 45: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 46: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 47: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 48: Hoare triple {37640#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 49: Hoare triple {37640#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 50: Hoare triple {37640#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 51: Hoare triple {37640#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; {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 52: Hoare triple {37640#true} ~__retres4~0 := ~res~0; {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 53: Hoare triple {37640#true} #res := ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,248 INFO L290 TraceCheckUtils]: 54: Hoare triple {37640#true} assume true; {37640#true} is VALID [2022-02-21 03:10:34,249 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {37640#true} {37640#true} #379#return; {37640#true} is VALID [2022-02-21 03:10:34,249 INFO L290 TraceCheckUtils]: 56: Hoare triple {37640#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {37640#true} is VALID [2022-02-21 03:10:34,249 INFO L272 TraceCheckUtils]: 57: Hoare triple {37640#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:34,249 INFO L290 TraceCheckUtils]: 58: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 59: Hoare triple {37640#true} assume !(0 == ~m % 4294967296); {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 60: Hoare triple {37640#true} assume !(~m % 4294967296 < 16777216); {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 61: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 62: Hoare triple {37640#true} assume ~m % 4294967296 >= 33554432; {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 63: Hoare triple {37640#true} assume ~e >= 127;~__retres4~0 := 4294967295; {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 64: Hoare triple {37640#true} #res := ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L290 TraceCheckUtils]: 65: Hoare triple {37640#true} assume true; {37640#true} is VALID [2022-02-21 03:10:34,250 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37640#true} {37640#true} #381#return; {37640#true} is VALID [2022-02-21 03:10:34,251 INFO L290 TraceCheckUtils]: 67: Hoare triple {37640#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {37640#true} is VALID [2022-02-21 03:10:34,251 INFO L272 TraceCheckUtils]: 68: Hoare triple {37640#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:34,251 INFO L290 TraceCheckUtils]: 69: Hoare triple {37721#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37640#true} is VALID [2022-02-21 03:10:34,251 INFO L290 TraceCheckUtils]: 70: Hoare triple {37640#true} assume !(0 == ~m % 4294967296); {37640#true} is VALID [2022-02-21 03:10:34,251 INFO L290 TraceCheckUtils]: 71: Hoare triple {37640#true} assume !(~m % 4294967296 < 16777216); {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 72: Hoare triple {37640#true} assume !false; {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 73: Hoare triple {37640#true} assume !(~m % 4294967296 >= 33554432); {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 74: Hoare triple {37640#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 75: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 76: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 77: Hoare triple {37640#true} assume 128 + ~e <= 2147483647; {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 78: Hoare triple {37640#true} assume 128 + ~e >= -2147483648; {37640#true} is VALID [2022-02-21 03:10:34,252 INFO L290 TraceCheckUtils]: 79: Hoare triple {37640#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {37640#true} is VALID [2022-02-21 03:10:34,253 INFO L290 TraceCheckUtils]: 80: Hoare triple {37640#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {37722#(<= 0 base2flt_~res~0)} is VALID [2022-02-21 03:10:34,253 INFO L290 TraceCheckUtils]: 81: Hoare triple {37722#(<= 0 base2flt_~res~0)} ~__retres4~0 := ~res~0; {37723#(<= 0 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:34,253 INFO L290 TraceCheckUtils]: 82: Hoare triple {37723#(<= 0 base2flt_~__retres4~0)} #res := ~__retres4~0; {37724#(<= 0 |base2flt_#res|)} is VALID [2022-02-21 03:10:34,254 INFO L290 TraceCheckUtils]: 83: Hoare triple {37724#(<= 0 |base2flt_#res|)} assume true; {37724#(<= 0 |base2flt_#res|)} is VALID [2022-02-21 03:10:34,254 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {37724#(<= 0 |base2flt_#res|)} {37640#true} #383#return; {37718#(<= 0 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:34,255 INFO L290 TraceCheckUtils]: 85: Hoare triple {37718#(<= 0 |ULTIMATE.start_main_#t~ret25#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {37719#(<= 0 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:34,255 INFO L290 TraceCheckUtils]: 86: Hoare triple {37719#(<= 0 |ULTIMATE.start_mulflt_~b#1|)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:34,255 INFO L290 TraceCheckUtils]: 87: Hoare triple {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:34,256 INFO L290 TraceCheckUtils]: 88: Hoare triple {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:34,256 INFO L290 TraceCheckUtils]: 89: Hoare triple {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:34,256 INFO L290 TraceCheckUtils]: 90: Hoare triple {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:34,256 INFO L290 TraceCheckUtils]: 91: Hoare triple {37720#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {37641#false} is VALID [2022-02-21 03:10:34,256 INFO L290 TraceCheckUtils]: 92: Hoare triple {37641#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {37641#false} is VALID [2022-02-21 03:10:34,257 INFO L290 TraceCheckUtils]: 93: Hoare triple {37641#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {37641#false} is VALID [2022-02-21 03:10:34,257 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-02-21 03:10:34,257 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:34,257 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1581753528] [2022-02-21 03:10:34,257 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1581753528] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:34,257 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:34,258 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-21 03:10:34,258 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1387874420] [2022-02-21 03:10:34,258 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:34,258 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 94 [2022-02-21 03:10:34,258 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:34,259 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:34,289 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:34,289 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-21 03:10:34,289 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:34,290 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-21 03:10:34,290 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2022-02-21 03:10:34,290 INFO L87 Difference]: Start difference. First operand 338 states and 416 transitions. Second operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:35,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:35,402 INFO L93 Difference]: Finished difference Result 645 states and 773 transitions. [2022-02-21 03:10:35,402 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-21 03:10:35,402 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 94 [2022-02-21 03:10:35,402 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:35,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:35,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 397 transitions. [2022-02-21 03:10:35,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:35,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 397 transitions. [2022-02-21 03:10:35,406 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 397 transitions. [2022-02-21 03:10:35,643 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 397 edges. 397 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:35,654 INFO L225 Difference]: With dead ends: 645 [2022-02-21 03:10:35,654 INFO L226 Difference]: Without dead ends: 590 [2022-02-21 03:10:35,655 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=209, Unknown=0, NotChecked=0, Total=272 [2022-02-21 03:10:35,655 INFO L933 BasicCegarLoop]: 128 mSDtfsCounter, 265 mSDsluCounter, 797 mSDsCounter, 0 mSdLazyCounter, 181 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 265 SdHoareTripleChecker+Valid, 925 SdHoareTripleChecker+Invalid, 200 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 181 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:35,655 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [265 Valid, 925 Invalid, 200 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 181 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:35,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 590 states. [2022-02-21 03:10:35,956 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 590 to 361. [2022-02-21 03:10:35,956 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:35,957 INFO L82 GeneralOperation]: Start isEquivalent. First operand 590 states. Second operand has 361 states, 338 states have (on average 1.2840236686390532) internal successors, (434), 349 states have internal predecessors, (434), 4 states have call successors, (4), 4 states have call predecessors, (4), 7 states have return successors, (7), 7 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-21 03:10:35,957 INFO L74 IsIncluded]: Start isIncluded. First operand 590 states. Second operand has 361 states, 338 states have (on average 1.2840236686390532) internal successors, (434), 349 states have internal predecessors, (434), 4 states have call successors, (4), 4 states have call predecessors, (4), 7 states have return successors, (7), 7 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-21 03:10:35,958 INFO L87 Difference]: Start difference. First operand 590 states. Second operand has 361 states, 338 states have (on average 1.2840236686390532) internal successors, (434), 349 states have internal predecessors, (434), 4 states have call successors, (4), 4 states have call predecessors, (4), 7 states have return successors, (7), 7 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-21 03:10:35,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:35,970 INFO L93 Difference]: Finished difference Result 590 states and 706 transitions. [2022-02-21 03:10:35,970 INFO L276 IsEmpty]: Start isEmpty. Operand 590 states and 706 transitions. [2022-02-21 03:10:35,975 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:35,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:35,976 INFO L74 IsIncluded]: Start isIncluded. First operand has 361 states, 338 states have (on average 1.2840236686390532) internal successors, (434), 349 states have internal predecessors, (434), 4 states have call successors, (4), 4 states have call predecessors, (4), 7 states have return successors, (7), 7 states have call predecessors, (7), 4 states have call successors, (7) Second operand 590 states. [2022-02-21 03:10:35,977 INFO L87 Difference]: Start difference. First operand has 361 states, 338 states have (on average 1.2840236686390532) internal successors, (434), 349 states have internal predecessors, (434), 4 states have call successors, (4), 4 states have call predecessors, (4), 7 states have return successors, (7), 7 states have call predecessors, (7), 4 states have call successors, (7) Second operand 590 states. [2022-02-21 03:10:35,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:35,987 INFO L93 Difference]: Finished difference Result 590 states and 706 transitions. [2022-02-21 03:10:35,987 INFO L276 IsEmpty]: Start isEmpty. Operand 590 states and 706 transitions. [2022-02-21 03:10:35,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:35,988 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:35,988 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:35,988 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:35,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 361 states, 338 states have (on average 1.2840236686390532) internal successors, (434), 349 states have internal predecessors, (434), 4 states have call successors, (4), 4 states have call predecessors, (4), 7 states have return successors, (7), 7 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-21 03:10:35,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 361 states to 361 states and 445 transitions. [2022-02-21 03:10:35,993 INFO L78 Accepts]: Start accepts. Automaton has 361 states and 445 transitions. Word has length 94 [2022-02-21 03:10:35,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:35,993 INFO L470 AbstractCegarLoop]: Abstraction has 361 states and 445 transitions. [2022-02-21 03:10:35,994 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.0) internal successors, (45), 7 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:35,994 INFO L276 IsEmpty]: Start isEmpty. Operand 361 states and 445 transitions. [2022-02-21 03:10:35,994 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2022-02-21 03:10:35,994 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:35,995 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 4, 4, 4, 3, 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, 1, 1, 1, 1] [2022-02-21 03:10:35,995 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21 [2022-02-21 03:10:35,995 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:35,995 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:35,995 INFO L85 PathProgramCache]: Analyzing trace with hash 395008938, now seen corresponding path program 1 times [2022-02-21 03:10:35,995 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:35,995 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [485344351] [2022-02-21 03:10:35,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:35,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:36,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,032 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:36,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,034 INFO L290 TraceCheckUtils]: 0: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {40037#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {40037#true} is VALID [2022-02-21 03:10:36,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,035 INFO L290 TraceCheckUtils]: 3: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,035 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40037#true} {40037#true} #377#return; {40037#true} is VALID [2022-02-21 03:10:36,035 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:36,046 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,162 INFO L290 TraceCheckUtils]: 0: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,162 INFO L290 TraceCheckUtils]: 1: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,162 INFO L290 TraceCheckUtils]: 2: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,163 INFO L290 TraceCheckUtils]: 3: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,163 INFO L290 TraceCheckUtils]: 4: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,163 INFO L290 TraceCheckUtils]: 5: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,164 INFO L290 TraceCheckUtils]: 6: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,165 INFO L290 TraceCheckUtils]: 7: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,165 INFO L290 TraceCheckUtils]: 8: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,166 INFO L290 TraceCheckUtils]: 9: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,166 INFO L290 TraceCheckUtils]: 10: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,167 INFO L290 TraceCheckUtils]: 11: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,169 INFO L290 TraceCheckUtils]: 15: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,170 INFO L290 TraceCheckUtils]: 17: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,170 INFO L290 TraceCheckUtils]: 19: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,171 INFO L290 TraceCheckUtils]: 21: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,172 INFO L290 TraceCheckUtils]: 22: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,172 INFO L290 TraceCheckUtils]: 23: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,173 INFO L290 TraceCheckUtils]: 24: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,174 INFO L290 TraceCheckUtils]: 26: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,174 INFO L290 TraceCheckUtils]: 27: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,175 INFO L290 TraceCheckUtils]: 29: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40122#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,178 INFO L290 TraceCheckUtils]: 32: Hoare triple {40122#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,178 INFO L290 TraceCheckUtils]: 33: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,178 INFO L290 TraceCheckUtils]: 34: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,179 INFO L290 TraceCheckUtils]: 35: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,179 INFO L290 TraceCheckUtils]: 36: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,179 INFO L290 TraceCheckUtils]: 37: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,179 INFO L290 TraceCheckUtils]: 38: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,180 INFO L290 TraceCheckUtils]: 39: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,180 INFO L290 TraceCheckUtils]: 40: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,180 INFO L290 TraceCheckUtils]: 41: Hoare triple {40123#(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; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,181 INFO L290 TraceCheckUtils]: 42: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,181 INFO L290 TraceCheckUtils]: 43: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,181 INFO L290 TraceCheckUtils]: 44: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume true; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,182 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {40123#(not (= |base2flt_#in~m| 1))} {40037#true} #379#return; {40038#false} is VALID [2022-02-21 03:10:36,182 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:36,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,186 INFO L290 TraceCheckUtils]: 0: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,186 INFO L290 TraceCheckUtils]: 3: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,186 INFO L290 TraceCheckUtils]: 4: Hoare triple {40037#true} assume ~m % 4294967296 >= 33554432; {40037#true} is VALID [2022-02-21 03:10:36,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {40037#true} assume ~e >= 127;~__retres4~0 := 4294967295; {40037#true} is VALID [2022-02-21 03:10:36,187 INFO L290 TraceCheckUtils]: 6: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,187 INFO L290 TraceCheckUtils]: 7: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,187 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {40037#true} {40038#false} #381#return; {40038#false} is VALID [2022-02-21 03:10:36,187 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:36,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,192 INFO L290 TraceCheckUtils]: 0: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 3: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 4: Hoare triple {40037#true} assume !(~m % 4294967296 >= 33554432); {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {40037#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 6: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,193 INFO L290 TraceCheckUtils]: 10: Hoare triple {40037#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:36,194 INFO L290 TraceCheckUtils]: 11: Hoare triple {40037#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {40037#true} is VALID [2022-02-21 03:10:36,194 INFO L290 TraceCheckUtils]: 12: Hoare triple {40037#true} ~__retres4~0 := ~res~0; {40037#true} is VALID [2022-02-21 03:10:36,194 INFO L290 TraceCheckUtils]: 13: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,194 INFO L290 TraceCheckUtils]: 14: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,194 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {40037#true} {40038#false} #383#return; {40038#false} is VALID [2022-02-21 03:10:36,194 INFO L290 TraceCheckUtils]: 0: Hoare triple {40037#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(22, 2);call #Ultimate.allocInit(12, 3); {40037#true} is VALID [2022-02-21 03:10:36,194 INFO L290 TraceCheckUtils]: 1: Hoare triple {40037#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; {40037#true} is VALID [2022-02-21 03:10:36,195 INFO L272 TraceCheckUtils]: 2: Hoare triple {40037#true} call main_#t~ret22#1 := base2flt(0, 0); {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,195 INFO L290 TraceCheckUtils]: 3: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,195 INFO L290 TraceCheckUtils]: 4: Hoare triple {40037#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {40037#true} is VALID [2022-02-21 03:10:36,195 INFO L290 TraceCheckUtils]: 5: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,195 INFO L290 TraceCheckUtils]: 6: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,196 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {40037#true} {40037#true} #377#return; {40037#true} is VALID [2022-02-21 03:10:36,196 INFO L290 TraceCheckUtils]: 8: Hoare triple {40037#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {40037#true} is VALID [2022-02-21 03:10:36,196 INFO L272 TraceCheckUtils]: 9: Hoare triple {40037#true} call main_#t~ret23#1 := base2flt(1, 0); {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,197 INFO L290 TraceCheckUtils]: 10: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,197 INFO L290 TraceCheckUtils]: 11: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,197 INFO L290 TraceCheckUtils]: 12: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,198 INFO L290 TraceCheckUtils]: 13: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,198 INFO L290 TraceCheckUtils]: 14: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,198 INFO L290 TraceCheckUtils]: 15: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,199 INFO L290 TraceCheckUtils]: 16: Hoare triple {40116#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,200 INFO L290 TraceCheckUtils]: 17: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,201 INFO L290 TraceCheckUtils]: 18: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,201 INFO L290 TraceCheckUtils]: 19: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,202 INFO L290 TraceCheckUtils]: 21: Hoare triple {40117#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,203 INFO L290 TraceCheckUtils]: 22: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,204 INFO L290 TraceCheckUtils]: 23: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,204 INFO L290 TraceCheckUtils]: 24: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,204 INFO L290 TraceCheckUtils]: 25: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,205 INFO L290 TraceCheckUtils]: 26: Hoare triple {40118#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,205 INFO L290 TraceCheckUtils]: 27: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,206 INFO L290 TraceCheckUtils]: 28: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,206 INFO L290 TraceCheckUtils]: 29: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,207 INFO L290 TraceCheckUtils]: 30: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,207 INFO L290 TraceCheckUtils]: 31: Hoare triple {40119#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,208 INFO L290 TraceCheckUtils]: 32: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,208 INFO L290 TraceCheckUtils]: 33: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,209 INFO L290 TraceCheckUtils]: 34: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,209 INFO L290 TraceCheckUtils]: 35: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,210 INFO L290 TraceCheckUtils]: 36: Hoare triple {40120#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,210 INFO L290 TraceCheckUtils]: 37: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,211 INFO L290 TraceCheckUtils]: 38: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,211 INFO L290 TraceCheckUtils]: 39: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,212 INFO L290 TraceCheckUtils]: 40: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,213 INFO L290 TraceCheckUtils]: 41: Hoare triple {40121#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40122#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,214 INFO L290 TraceCheckUtils]: 42: Hoare triple {40122#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,214 INFO L290 TraceCheckUtils]: 43: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,215 INFO L290 TraceCheckUtils]: 44: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,215 INFO L290 TraceCheckUtils]: 45: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,215 INFO L290 TraceCheckUtils]: 46: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,216 INFO L290 TraceCheckUtils]: 47: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,216 INFO L290 TraceCheckUtils]: 48: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,216 INFO L290 TraceCheckUtils]: 49: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,217 INFO L290 TraceCheckUtils]: 50: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,217 INFO L290 TraceCheckUtils]: 51: Hoare triple {40123#(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; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,217 INFO L290 TraceCheckUtils]: 52: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,218 INFO L290 TraceCheckUtils]: 53: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,218 INFO L290 TraceCheckUtils]: 54: Hoare triple {40123#(not (= |base2flt_#in~m| 1))} assume true; {40123#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,219 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {40123#(not (= |base2flt_#in~m| 1))} {40037#true} #379#return; {40038#false} is VALID [2022-02-21 03:10:36,219 INFO L290 TraceCheckUtils]: 56: Hoare triple {40038#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {40038#false} is VALID [2022-02-21 03:10:36,219 INFO L272 TraceCheckUtils]: 57: Hoare triple {40038#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,219 INFO L290 TraceCheckUtils]: 58: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,219 INFO L290 TraceCheckUtils]: 59: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,219 INFO L290 TraceCheckUtils]: 60: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,219 INFO L290 TraceCheckUtils]: 61: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,219 INFO L290 TraceCheckUtils]: 62: Hoare triple {40037#true} assume ~m % 4294967296 >= 33554432; {40037#true} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 63: Hoare triple {40037#true} assume ~e >= 127;~__retres4~0 := 4294967295; {40037#true} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 64: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 65: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,220 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {40037#true} {40038#false} #381#return; {40038#false} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 67: Hoare triple {40038#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {40038#false} is VALID [2022-02-21 03:10:36,220 INFO L272 TraceCheckUtils]: 68: Hoare triple {40038#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 69: Hoare triple {40115#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 70: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,220 INFO L290 TraceCheckUtils]: 71: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 72: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 73: Hoare triple {40037#true} assume !(~m % 4294967296 >= 33554432); {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 74: Hoare triple {40037#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 75: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 76: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 77: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 78: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 79: Hoare triple {40037#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:36,221 INFO L290 TraceCheckUtils]: 80: Hoare triple {40037#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {40037#true} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 81: Hoare triple {40037#true} ~__retres4~0 := ~res~0; {40037#true} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 82: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 83: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,222 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {40037#true} {40038#false} #383#return; {40038#false} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 85: Hoare triple {40038#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {40038#false} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 86: Hoare triple {40038#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {40038#false} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 87: Hoare triple {40038#false} assume !(0 == mulflt_~b#1 % 4294967296); {40038#false} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 88: Hoare triple {40038#false} assume !(0 == mulflt_~a#1); {40038#false} is VALID [2022-02-21 03:10:36,222 INFO L290 TraceCheckUtils]: 89: Hoare triple {40038#false} assume !false; {40038#false} is VALID [2022-02-21 03:10:36,223 INFO L290 TraceCheckUtils]: 90: Hoare triple {40038#false} assume !false; {40038#false} is VALID [2022-02-21 03:10:36,223 INFO L290 TraceCheckUtils]: 91: Hoare triple {40038#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {40038#false} is VALID [2022-02-21 03:10:36,223 INFO L290 TraceCheckUtils]: 92: Hoare triple {40038#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {40038#false} is VALID [2022-02-21 03:10:36,223 INFO L290 TraceCheckUtils]: 93: Hoare triple {40038#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {40038#false} is VALID [2022-02-21 03:10:36,223 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 4 proven. 93 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-21 03:10:36,223 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:36,224 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [485344351] [2022-02-21 03:10:36,224 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [485344351] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:36,224 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [113776215] [2022-02-21 03:10:36,224 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:36,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:36,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:36,225 INFO L229 MonitoredProcess]: Starting monitored process 15 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:36,226 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-02-21 03:10:36,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,293 INFO L263 TraceCheckSpWp]: Trace formula consists of 245 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-21 03:10:36,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,310 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:36,781 INFO L290 TraceCheckUtils]: 0: Hoare triple {40037#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(22, 2);call #Ultimate.allocInit(12, 3); {40037#true} is VALID [2022-02-21 03:10:36,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {40037#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; {40037#true} is VALID [2022-02-21 03:10:36,781 INFO L272 TraceCheckUtils]: 2: Hoare triple {40037#true} call main_#t~ret22#1 := base2flt(0, 0); {40037#true} is VALID [2022-02-21 03:10:36,782 INFO L290 TraceCheckUtils]: 3: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40136#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:36,782 INFO L290 TraceCheckUtils]: 4: Hoare triple {40136#(= base2flt_~m |base2flt_#in~m|)} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {40140#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:36,782 INFO L290 TraceCheckUtils]: 5: Hoare triple {40140#(<= (mod |base2flt_#in~m| 4294967296) 0)} #res := ~__retres4~0; {40140#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:36,783 INFO L290 TraceCheckUtils]: 6: Hoare triple {40140#(<= (mod |base2flt_#in~m| 4294967296) 0)} assume true; {40140#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:36,783 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {40140#(<= (mod |base2flt_#in~m| 4294967296) 0)} {40037#true} #377#return; {40037#true} is VALID [2022-02-21 03:10:36,783 INFO L290 TraceCheckUtils]: 8: Hoare triple {40037#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {40037#true} is VALID [2022-02-21 03:10:36,783 INFO L272 TraceCheckUtils]: 9: Hoare triple {40037#true} call main_#t~ret23#1 := base2flt(1, 0); {40037#true} is VALID [2022-02-21 03:10:36,783 INFO L290 TraceCheckUtils]: 10: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,783 INFO L290 TraceCheckUtils]: 11: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,783 INFO L290 TraceCheckUtils]: 12: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 14: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 15: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 16: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 19: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:36,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 22: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 23: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 24: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 25: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 26: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 27: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:36,785 INFO L290 TraceCheckUtils]: 28: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 29: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 30: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 31: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 32: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 33: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 35: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 36: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:36,786 INFO L290 TraceCheckUtils]: 37: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 38: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 39: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 40: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 41: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 42: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 43: Hoare triple {40037#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 44: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,787 INFO L290 TraceCheckUtils]: 45: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 46: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 47: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 48: Hoare triple {40037#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 49: Hoare triple {40037#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 50: Hoare triple {40037#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 51: Hoare triple {40037#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; {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 52: Hoare triple {40037#true} ~__retres4~0 := ~res~0; {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 53: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,788 INFO L290 TraceCheckUtils]: 54: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {40037#true} {40037#true} #379#return; {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L290 TraceCheckUtils]: 56: Hoare triple {40037#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L272 TraceCheckUtils]: 57: Hoare triple {40037#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L290 TraceCheckUtils]: 58: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L290 TraceCheckUtils]: 59: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L290 TraceCheckUtils]: 60: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L290 TraceCheckUtils]: 61: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,789 INFO L290 TraceCheckUtils]: 62: Hoare triple {40037#true} assume ~m % 4294967296 >= 33554432; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 63: Hoare triple {40037#true} assume ~e >= 127;~__retres4~0 := 4294967295; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 64: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 65: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {40037#true} {40037#true} #381#return; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 67: Hoare triple {40037#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L272 TraceCheckUtils]: 68: Hoare triple {40037#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 69: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 70: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:36,790 INFO L290 TraceCheckUtils]: 71: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 72: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 73: Hoare triple {40037#true} assume !(~m % 4294967296 >= 33554432); {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 74: Hoare triple {40037#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 75: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 76: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 77: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 78: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:36,791 INFO L290 TraceCheckUtils]: 79: Hoare triple {40037#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:36,792 INFO L290 TraceCheckUtils]: 80: Hoare triple {40037#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {40369#(and (= 0 (+ (* (div (+ (* (- 1) base2flt_~res~0) 2147483648) (- 16777216)) 16777216) 2147483648)) (= (mod (* base2flt_~res~0 16777215) 16777216) 0))} is VALID [2022-02-21 03:10:36,793 INFO L290 TraceCheckUtils]: 81: Hoare triple {40369#(and (= 0 (+ (* (div (+ (* (- 1) base2flt_~res~0) 2147483648) (- 16777216)) 16777216) 2147483648)) (= (mod (* base2flt_~res~0 16777215) 16777216) 0))} ~__retres4~0 := ~res~0; {40373#(and (= (mod (* 16777215 base2flt_~__retres4~0) 16777216) 0) (= (+ (* (div (+ (* (- 1) base2flt_~__retres4~0) 2147483648) (- 16777216)) 16777216) 2147483648) 0))} is VALID [2022-02-21 03:10:36,793 INFO L290 TraceCheckUtils]: 82: Hoare triple {40373#(and (= (mod (* 16777215 base2flt_~__retres4~0) 16777216) 0) (= (+ (* (div (+ (* (- 1) base2flt_~__retres4~0) 2147483648) (- 16777216)) 16777216) 2147483648) 0))} #res := ~__retres4~0; {40377#(and (= (mod (* |base2flt_#res| 16777215) 16777216) 0) (= (+ (* (div (+ (* (- 1) |base2flt_#res|) 2147483648) (- 16777216)) 16777216) 2147483648) 0))} is VALID [2022-02-21 03:10:36,794 INFO L290 TraceCheckUtils]: 83: Hoare triple {40377#(and (= (mod (* |base2flt_#res| 16777215) 16777216) 0) (= (+ (* (div (+ (* (- 1) |base2flt_#res|) 2147483648) (- 16777216)) 16777216) 2147483648) 0))} assume true; {40377#(and (= (mod (* |base2flt_#res| 16777215) 16777216) 0) (= (+ (* (div (+ (* (- 1) |base2flt_#res|) 2147483648) (- 16777216)) 16777216) 2147483648) 0))} is VALID [2022-02-21 03:10:36,795 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {40377#(and (= (mod (* |base2flt_#res| 16777215) 16777216) 0) (= (+ (* (div (+ (* (- 1) |base2flt_#res|) 2147483648) (- 16777216)) 16777216) 2147483648) 0))} {40037#true} #383#return; {40384#(and (= (mod (* 16777215 |ULTIMATE.start_main_#t~ret25#1|) 16777216) 0) (= (+ 2147483648 (* 16777216 (div (+ (* (- 1) |ULTIMATE.start_main_#t~ret25#1|) 2147483648) (- 16777216)))) 0))} is VALID [2022-02-21 03:10:36,795 INFO L290 TraceCheckUtils]: 85: Hoare triple {40384#(and (= (mod (* 16777215 |ULTIMATE.start_main_#t~ret25#1|) 16777216) 0) (= (+ 2147483648 (* 16777216 (div (+ (* (- 1) |ULTIMATE.start_main_#t~ret25#1|) 2147483648) (- 16777216)))) 0))} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {40388#(and (= (mod (* 16777215 |ULTIMATE.start_mulflt_~b#1|) 16777216) 0) (= (+ 2147483648 (* 16777216 (div (+ (* (- 1) |ULTIMATE.start_mulflt_~b#1|) 2147483648) (- 16777216)))) 0))} is VALID [2022-02-21 03:10:36,796 INFO L290 TraceCheckUtils]: 86: Hoare triple {40388#(and (= (mod (* 16777215 |ULTIMATE.start_mulflt_~b#1|) 16777216) 0) (= (+ 2147483648 (* 16777216 (div (+ (* (- 1) |ULTIMATE.start_mulflt_~b#1|) 2147483648) (- 16777216)))) 0))} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {40388#(and (= (mod (* 16777215 |ULTIMATE.start_mulflt_~b#1|) 16777216) 0) (= (+ 2147483648 (* 16777216 (div (+ (* (- 1) |ULTIMATE.start_mulflt_~b#1|) 2147483648) (- 16777216)))) 0))} is VALID [2022-02-21 03:10:36,797 INFO L290 TraceCheckUtils]: 87: Hoare triple {40388#(and (= (mod (* 16777215 |ULTIMATE.start_mulflt_~b#1|) 16777216) 0) (= (+ 2147483648 (* 16777216 (div (+ (* (- 1) |ULTIMATE.start_mulflt_~b#1|) 2147483648) (- 16777216)))) 0))} assume !(0 == mulflt_~b#1 % 4294967296); {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L290 TraceCheckUtils]: 88: Hoare triple {40038#false} assume !(0 == mulflt_~a#1); {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L290 TraceCheckUtils]: 89: Hoare triple {40038#false} assume !false; {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L290 TraceCheckUtils]: 90: Hoare triple {40038#false} assume !false; {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L290 TraceCheckUtils]: 91: Hoare triple {40038#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L290 TraceCheckUtils]: 92: Hoare triple {40038#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L290 TraceCheckUtils]: 93: Hoare triple {40038#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {40038#false} is VALID [2022-02-21 03:10:36,798 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 7 proven. 12 refuted. 0 times theorem prover too weak. 99 trivial. 0 not checked. [2022-02-21 03:10:36,799 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 93: Hoare triple {40038#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {40038#false} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 92: Hoare triple {40038#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {40038#false} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 91: Hoare triple {40038#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {40038#false} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 90: Hoare triple {40038#false} assume !false; {40038#false} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 89: Hoare triple {40038#false} assume !false; {40038#false} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 88: Hoare triple {40038#false} assume !(0 == mulflt_~a#1); {40038#false} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 87: Hoare triple {40431#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} assume !(0 == mulflt_~b#1 % 4294967296); {40038#false} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 86: Hoare triple {40431#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {40431#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} is VALID [2022-02-21 03:10:37,168 INFO L290 TraceCheckUtils]: 85: Hoare triple {40438#(= (mod |ULTIMATE.start_main_#t~ret25#1| 4294967296) 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {40431#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} is VALID [2022-02-21 03:10:37,169 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {40445#(= (mod |base2flt_#res| 4294967296) 0)} {40037#true} #383#return; {40438#(= (mod |ULTIMATE.start_main_#t~ret25#1| 4294967296) 0)} is VALID [2022-02-21 03:10:37,169 INFO L290 TraceCheckUtils]: 83: Hoare triple {40445#(= (mod |base2flt_#res| 4294967296) 0)} assume true; {40445#(= (mod |base2flt_#res| 4294967296) 0)} is VALID [2022-02-21 03:10:37,169 INFO L290 TraceCheckUtils]: 82: Hoare triple {40452#(= (mod base2flt_~__retres4~0 4294967296) 0)} #res := ~__retres4~0; {40445#(= (mod |base2flt_#res| 4294967296) 0)} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 81: Hoare triple {40456#(= (mod base2flt_~res~0 4294967296) 0)} ~__retres4~0 := ~res~0; {40452#(= (mod base2flt_~__retres4~0 4294967296) 0)} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 80: Hoare triple {40037#true} assume 0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e));~res~0 := 16777216 * (128 + ~e); {40456#(= (mod base2flt_~res~0 4294967296) 0)} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 79: Hoare triple {40037#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 78: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 77: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 76: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 75: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 74: Hoare triple {40037#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 73: Hoare triple {40037#true} assume !(~m % 4294967296 >= 33554432); {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 72: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 71: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 70: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 69: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L272 TraceCheckUtils]: 68: Hoare triple {40037#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 67: Hoare triple {40037#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {40037#true} {40037#true} #381#return; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 65: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 64: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 63: Hoare triple {40037#true} assume ~e >= 127;~__retres4~0 := 4294967295; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 62: Hoare triple {40037#true} assume ~m % 4294967296 >= 33554432; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 61: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 60: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 59: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 58: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L272 TraceCheckUtils]: 57: Hoare triple {40037#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 56: Hoare triple {40037#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {40037#true} {40037#true} #379#return; {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 54: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 53: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 52: Hoare triple {40037#true} ~__retres4~0 := ~res~0; {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 51: Hoare triple {40037#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; {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 50: Hoare triple {40037#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 49: Hoare triple {40037#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 48: Hoare triple {40037#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 47: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 46: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 45: Hoare triple {40037#true} assume 128 + ~e >= -2147483648; {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 44: Hoare triple {40037#true} assume 128 + ~e <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 43: Hoare triple {40037#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 42: Hoare triple {40037#true} assume !(~m % 4294967296 < 16777216); {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 41: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 40: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 39: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 38: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 37: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 36: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 35: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 33: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 32: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 29: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 28: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 27: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 26: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 25: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 24: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 23: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 22: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 21: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 20: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 19: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 17: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 16: Hoare triple {40037#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 15: Hoare triple {40037#true} assume ~e - 1 <= 2147483647; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {40037#true} assume !(~e <= -128); {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {40037#true} assume !false; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 12: Hoare triple {40037#true} assume ~m % 4294967296 < 16777216; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 11: Hoare triple {40037#true} assume !(0 == ~m % 4294967296); {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 10: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,178 INFO L272 TraceCheckUtils]: 9: Hoare triple {40037#true} call main_#t~ret23#1 := base2flt(1, 0); {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {40037#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {40037#true} {40037#true} #377#return; {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L290 TraceCheckUtils]: 6: Hoare triple {40037#true} assume true; {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L290 TraceCheckUtils]: 5: Hoare triple {40037#true} #res := ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L290 TraceCheckUtils]: 4: Hoare triple {40037#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L290 TraceCheckUtils]: 3: Hoare triple {40037#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {40037#true} is VALID [2022-02-21 03:10:37,179 INFO L272 TraceCheckUtils]: 2: Hoare triple {40037#true} call main_#t~ret22#1 := base2flt(0, 0); {40037#true} is VALID [2022-02-21 03:10:37,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {40037#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; {40037#true} is VALID [2022-02-21 03:10:37,180 INFO L290 TraceCheckUtils]: 0: Hoare triple {40037#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(22, 2);call #Ultimate.allocInit(12, 3); {40037#true} is VALID [2022-02-21 03:10:37,180 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-02-21 03:10:37,180 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [113776215] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:37,180 INFO L191 FreeRefinementEngine]: Found 1 perfect and 2 imperfect interpolant sequences. [2022-02-21 03:10:37,180 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [11, 9] total 23 [2022-02-21 03:10:37,181 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [250179144] [2022-02-21 03:10:37,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:37,183 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 94 [2022-02-21 03:10:37,183 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:37,183 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:37,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:37,238 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-21 03:10:37,238 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:37,238 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-21 03:10:37,238 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=437, Unknown=0, NotChecked=0, Total=506 [2022-02-21 03:10:37,238 INFO L87 Difference]: Start difference. First operand 361 states and 445 transitions. Second operand has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:38,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:38,087 INFO L93 Difference]: Finished difference Result 465 states and 563 transitions. [2022-02-21 03:10:38,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-21 03:10:38,087 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 94 [2022-02-21 03:10:38,094 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:38,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:38,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 235 transitions. [2022-02-21 03:10:38,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:38,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 235 transitions. [2022-02-21 03:10:38,097 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 235 transitions. [2022-02-21 03:10:38,261 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 235 edges. 235 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:38,268 INFO L225 Difference]: With dead ends: 465 [2022-02-21 03:10:38,268 INFO L226 Difference]: Without dead ends: 402 [2022-02-21 03:10:38,268 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 207 GetRequests, 183 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=84, Invalid=566, Unknown=0, NotChecked=0, Total=650 [2022-02-21 03:10:38,269 INFO L933 BasicCegarLoop]: 123 mSDtfsCounter, 46 mSDsluCounter, 588 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 711 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:38,269 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 711 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:10:38,270 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 402 states. [2022-02-21 03:10:38,526 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 402 to 355. [2022-02-21 03:10:38,526 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:38,527 INFO L82 GeneralOperation]: Start isEquivalent. First operand 402 states. Second operand has 355 states, 333 states have (on average 1.2852852852852852) internal successors, (428), 344 states have internal predecessors, (428), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:38,527 INFO L74 IsIncluded]: Start isIncluded. First operand 402 states. Second operand has 355 states, 333 states have (on average 1.2852852852852852) internal successors, (428), 344 states have internal predecessors, (428), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:38,527 INFO L87 Difference]: Start difference. First operand 402 states. Second operand has 355 states, 333 states have (on average 1.2852852852852852) internal successors, (428), 344 states have internal predecessors, (428), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:38,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:38,533 INFO L93 Difference]: Finished difference Result 402 states and 490 transitions. [2022-02-21 03:10:38,533 INFO L276 IsEmpty]: Start isEmpty. Operand 402 states and 490 transitions. [2022-02-21 03:10:38,534 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:38,534 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:38,534 INFO L74 IsIncluded]: Start isIncluded. First operand has 355 states, 333 states have (on average 1.2852852852852852) internal successors, (428), 344 states have internal predecessors, (428), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Second operand 402 states. [2022-02-21 03:10:38,534 INFO L87 Difference]: Start difference. First operand has 355 states, 333 states have (on average 1.2852852852852852) internal successors, (428), 344 states have internal predecessors, (428), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Second operand 402 states. [2022-02-21 03:10:38,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:38,540 INFO L93 Difference]: Finished difference Result 402 states and 490 transitions. [2022-02-21 03:10:38,540 INFO L276 IsEmpty]: Start isEmpty. Operand 402 states and 490 transitions. [2022-02-21 03:10:38,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:38,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:38,541 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:38,541 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:38,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 355 states, 333 states have (on average 1.2852852852852852) internal successors, (428), 344 states have internal predecessors, (428), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:38,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 355 states to 355 states and 438 transitions. [2022-02-21 03:10:38,546 INFO L78 Accepts]: Start accepts. Automaton has 355 states and 438 transitions. Word has length 94 [2022-02-21 03:10:38,546 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:38,547 INFO L470 AbstractCegarLoop]: Abstraction has 355 states and 438 transitions. [2022-02-21 03:10:38,547 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 6.428571428571429) internal successors, (45), 6 states have internal predecessors, (45), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:38,547 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 438 transitions. [2022-02-21 03:10:38,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 96 [2022-02-21 03:10:38,548 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:38,548 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 4, 4, 4, 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, 1, 1, 1] [2022-02-21 03:10:38,565 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-02-21 03:10:38,760 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:38,761 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:38,761 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:38,761 INFO L85 PathProgramCache]: Analyzing trace with hash 62652704, now seen corresponding path program 1 times [2022-02-21 03:10:38,761 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:38,761 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [65841540] [2022-02-21 03:10:38,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:38,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:38,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:38,805 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:38,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:38,808 INFO L290 TraceCheckUtils]: 0: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {42424#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {42424#true} is VALID [2022-02-21 03:10:38,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {42424#true} #res := ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,808 INFO L290 TraceCheckUtils]: 3: Hoare triple {42424#true} assume true; {42424#true} is VALID [2022-02-21 03:10:38,808 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {42424#true} {42424#true} #377#return; {42424#true} is VALID [2022-02-21 03:10:38,808 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:38,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:38,820 INFO L290 TraceCheckUtils]: 0: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {42424#true} assume !(0 == ~m % 4294967296); {42424#true} is VALID [2022-02-21 03:10:38,820 INFO L290 TraceCheckUtils]: 2: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,820 INFO L290 TraceCheckUtils]: 3: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 4: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 6: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 7: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 8: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 9: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 10: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,821 INFO L290 TraceCheckUtils]: 11: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 12: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 13: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 14: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 15: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 16: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 17: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 18: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 19: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,822 INFO L290 TraceCheckUtils]: 20: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 21: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 22: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 23: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 24: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 25: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 26: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 27: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,823 INFO L290 TraceCheckUtils]: 28: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 29: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 30: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 31: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 32: Hoare triple {42424#true} assume !(~m % 4294967296 < 16777216); {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 33: Hoare triple {42424#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 34: Hoare triple {42424#true} assume 128 + ~e <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 35: Hoare triple {42424#true} assume 128 + ~e >= -2147483648; {42424#true} is VALID [2022-02-21 03:10:38,824 INFO L290 TraceCheckUtils]: 36: Hoare triple {42424#true} assume 128 + ~e <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 37: Hoare triple {42424#true} assume 128 + ~e >= -2147483648; {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 38: Hoare triple {42424#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 39: Hoare triple {42424#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 40: Hoare triple {42424#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 41: Hoare triple {42424#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; {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 42: Hoare triple {42424#true} ~__retres4~0 := ~res~0; {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 43: Hoare triple {42424#true} #res := ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L290 TraceCheckUtils]: 44: Hoare triple {42424#true} assume true; {42424#true} is VALID [2022-02-21 03:10:38,825 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {42424#true} {42424#true} #379#return; {42424#true} is VALID [2022-02-21 03:10:38,826 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:38,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:38,829 INFO L290 TraceCheckUtils]: 0: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,829 INFO L290 TraceCheckUtils]: 1: Hoare triple {42424#true} assume !(0 == ~m % 4294967296); {42424#true} is VALID [2022-02-21 03:10:38,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {42424#true} assume !(~m % 4294967296 < 16777216); {42424#true} is VALID [2022-02-21 03:10:38,829 INFO L290 TraceCheckUtils]: 3: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,829 INFO L290 TraceCheckUtils]: 4: Hoare triple {42424#true} assume ~m % 4294967296 >= 33554432; {42424#true} is VALID [2022-02-21 03:10:38,830 INFO L290 TraceCheckUtils]: 5: Hoare triple {42424#true} assume ~e >= 127;~__retres4~0 := 4294967295; {42424#true} is VALID [2022-02-21 03:10:38,830 INFO L290 TraceCheckUtils]: 6: Hoare triple {42424#true} #res := ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,830 INFO L290 TraceCheckUtils]: 7: Hoare triple {42424#true} assume true; {42424#true} is VALID [2022-02-21 03:10:38,830 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {42424#true} {42424#true} #381#return; {42424#true} is VALID [2022-02-21 03:10:38,830 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:38,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:38,862 INFO L290 TraceCheckUtils]: 0: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {42424#true} assume !(0 == ~m % 4294967296); {42424#true} is VALID [2022-02-21 03:10:38,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {42424#true} assume !(~m % 4294967296 < 16777216); {42424#true} is VALID [2022-02-21 03:10:38,862 INFO L290 TraceCheckUtils]: 3: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,862 INFO L290 TraceCheckUtils]: 4: Hoare triple {42424#true} assume !(~m % 4294967296 >= 33554432); {42424#true} is VALID [2022-02-21 03:10:38,863 INFO L290 TraceCheckUtils]: 5: Hoare triple {42424#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,863 INFO L290 TraceCheckUtils]: 6: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,863 INFO L290 TraceCheckUtils]: 7: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,863 INFO L290 TraceCheckUtils]: 8: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,864 INFO L290 TraceCheckUtils]: 10: Hoare triple {42507#(= base2flt_~m 0)} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {42508#(or (= base2flt_~m 0) (not (= (+ (* 16777216 base2flt_~e) 2147483648) 0)))} is VALID [2022-02-21 03:10:38,864 INFO L290 TraceCheckUtils]: 11: Hoare triple {42508#(or (= base2flt_~m 0) (not (= (+ (* 16777216 base2flt_~e) 2147483648) 0)))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {42509#(not (= (+ 128 base2flt_~e) 0))} is VALID [2022-02-21 03:10:38,865 INFO L290 TraceCheckUtils]: 12: Hoare triple {42509#(not (= (+ 128 base2flt_~e) 0))} assume (0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e);~res~0 := ~m; {42425#false} is VALID [2022-02-21 03:10:38,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {42425#false} ~__retres4~0 := ~res~0; {42425#false} is VALID [2022-02-21 03:10:38,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {42425#false} #res := ~__retres4~0; {42425#false} is VALID [2022-02-21 03:10:38,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {42425#false} assume true; {42425#false} is VALID [2022-02-21 03:10:38,865 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42425#false} {42424#true} #383#return; {42503#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:38,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {42424#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(22, 2);call #Ultimate.allocInit(12, 3); {42424#true} is VALID [2022-02-21 03:10:38,866 INFO L290 TraceCheckUtils]: 1: Hoare triple {42424#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; {42424#true} is VALID [2022-02-21 03:10:38,866 INFO L272 TraceCheckUtils]: 2: Hoare triple {42424#true} call main_#t~ret22#1 := base2flt(0, 0); {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:38,866 INFO L290 TraceCheckUtils]: 3: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,866 INFO L290 TraceCheckUtils]: 4: Hoare triple {42424#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {42424#true} is VALID [2022-02-21 03:10:38,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {42424#true} #res := ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,866 INFO L290 TraceCheckUtils]: 6: Hoare triple {42424#true} assume true; {42424#true} is VALID [2022-02-21 03:10:38,867 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {42424#true} {42424#true} #377#return; {42424#true} is VALID [2022-02-21 03:10:38,867 INFO L290 TraceCheckUtils]: 8: Hoare triple {42424#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {42424#true} is VALID [2022-02-21 03:10:38,867 INFO L272 TraceCheckUtils]: 9: Hoare triple {42424#true} call main_#t~ret23#1 := base2flt(1, 0); {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:38,867 INFO L290 TraceCheckUtils]: 10: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,867 INFO L290 TraceCheckUtils]: 11: Hoare triple {42424#true} assume !(0 == ~m % 4294967296); {42424#true} is VALID [2022-02-21 03:10:38,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 13: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 14: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 15: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 16: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 17: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 18: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 19: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,868 INFO L290 TraceCheckUtils]: 20: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 21: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 22: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 23: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 24: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 25: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 26: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 27: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 28: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,869 INFO L290 TraceCheckUtils]: 29: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 30: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 31: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 32: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 33: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 34: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 36: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 37: Hoare triple {42424#true} assume ~m % 4294967296 < 16777216; {42424#true} is VALID [2022-02-21 03:10:38,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 39: Hoare triple {42424#true} assume !(~e <= -128); {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 40: Hoare triple {42424#true} assume ~e - 1 <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 41: Hoare triple {42424#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 42: Hoare triple {42424#true} assume !(~m % 4294967296 < 16777216); {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 43: Hoare triple {42424#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 44: Hoare triple {42424#true} assume 128 + ~e <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 45: Hoare triple {42424#true} assume 128 + ~e >= -2147483648; {42424#true} is VALID [2022-02-21 03:10:38,871 INFO L290 TraceCheckUtils]: 46: Hoare triple {42424#true} assume 128 + ~e <= 2147483647; {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 47: Hoare triple {42424#true} assume 128 + ~e >= -2147483648; {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 48: Hoare triple {42424#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 49: Hoare triple {42424#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 50: Hoare triple {42424#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 51: Hoare triple {42424#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; {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 52: Hoare triple {42424#true} ~__retres4~0 := ~res~0; {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 53: Hoare triple {42424#true} #res := ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L290 TraceCheckUtils]: 54: Hoare triple {42424#true} assume true; {42424#true} is VALID [2022-02-21 03:10:38,872 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {42424#true} {42424#true} #379#return; {42424#true} is VALID [2022-02-21 03:10:38,873 INFO L290 TraceCheckUtils]: 56: Hoare triple {42424#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {42424#true} is VALID [2022-02-21 03:10:38,873 INFO L272 TraceCheckUtils]: 57: Hoare triple {42424#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:38,873 INFO L290 TraceCheckUtils]: 58: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,873 INFO L290 TraceCheckUtils]: 59: Hoare triple {42424#true} assume !(0 == ~m % 4294967296); {42424#true} is VALID [2022-02-21 03:10:38,873 INFO L290 TraceCheckUtils]: 60: Hoare triple {42424#true} assume !(~m % 4294967296 < 16777216); {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L290 TraceCheckUtils]: 61: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L290 TraceCheckUtils]: 62: Hoare triple {42424#true} assume ~m % 4294967296 >= 33554432; {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L290 TraceCheckUtils]: 63: Hoare triple {42424#true} assume ~e >= 127;~__retres4~0 := 4294967295; {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L290 TraceCheckUtils]: 64: Hoare triple {42424#true} #res := ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L290 TraceCheckUtils]: 65: Hoare triple {42424#true} assume true; {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {42424#true} {42424#true} #381#return; {42424#true} is VALID [2022-02-21 03:10:38,874 INFO L290 TraceCheckUtils]: 67: Hoare triple {42424#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {42424#true} is VALID [2022-02-21 03:10:38,875 INFO L272 TraceCheckUtils]: 68: Hoare triple {42424#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:38,875 INFO L290 TraceCheckUtils]: 69: Hoare triple {42506#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {42424#true} is VALID [2022-02-21 03:10:38,875 INFO L290 TraceCheckUtils]: 70: Hoare triple {42424#true} assume !(0 == ~m % 4294967296); {42424#true} is VALID [2022-02-21 03:10:38,875 INFO L290 TraceCheckUtils]: 71: Hoare triple {42424#true} assume !(~m % 4294967296 < 16777216); {42424#true} is VALID [2022-02-21 03:10:38,875 INFO L290 TraceCheckUtils]: 72: Hoare triple {42424#true} assume !false; {42424#true} is VALID [2022-02-21 03:10:38,875 INFO L290 TraceCheckUtils]: 73: Hoare triple {42424#true} assume !(~m % 4294967296 >= 33554432); {42424#true} is VALID [2022-02-21 03:10:38,876 INFO L290 TraceCheckUtils]: 74: Hoare triple {42424#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,876 INFO L290 TraceCheckUtils]: 75: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,876 INFO L290 TraceCheckUtils]: 76: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,876 INFO L290 TraceCheckUtils]: 77: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e <= 2147483647; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,876 INFO L290 TraceCheckUtils]: 78: Hoare triple {42507#(= base2flt_~m 0)} assume 128 + ~e >= -2147483648; {42507#(= base2flt_~m 0)} is VALID [2022-02-21 03:10:38,877 INFO L290 TraceCheckUtils]: 79: Hoare triple {42507#(= base2flt_~m 0)} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {42508#(or (= base2flt_~m 0) (not (= (+ (* 16777216 base2flt_~e) 2147483648) 0)))} is VALID [2022-02-21 03:10:38,877 INFO L290 TraceCheckUtils]: 80: Hoare triple {42508#(or (= base2flt_~m 0) (not (= (+ (* 16777216 base2flt_~e) 2147483648) 0)))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {42509#(not (= (+ 128 base2flt_~e) 0))} is VALID [2022-02-21 03:10:38,878 INFO L290 TraceCheckUtils]: 81: Hoare triple {42509#(not (= (+ 128 base2flt_~e) 0))} assume (0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e);~res~0 := ~m; {42425#false} is VALID [2022-02-21 03:10:38,878 INFO L290 TraceCheckUtils]: 82: Hoare triple {42425#false} ~__retres4~0 := ~res~0; {42425#false} is VALID [2022-02-21 03:10:38,878 INFO L290 TraceCheckUtils]: 83: Hoare triple {42425#false} #res := ~__retres4~0; {42425#false} is VALID [2022-02-21 03:10:38,878 INFO L290 TraceCheckUtils]: 84: Hoare triple {42425#false} assume true; {42425#false} is VALID [2022-02-21 03:10:38,878 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {42425#false} {42424#true} #383#return; {42503#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:38,878 INFO L290 TraceCheckUtils]: 86: Hoare triple {42503#(= |ULTIMATE.start_main_#t~ret25#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {42504#(= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:38,879 INFO L290 TraceCheckUtils]: 87: Hoare triple {42504#(= |ULTIMATE.start_mulflt_~b#1| 0)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {42505#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:38,879 INFO L290 TraceCheckUtils]: 88: Hoare triple {42505#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {42505#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:38,879 INFO L290 TraceCheckUtils]: 89: Hoare triple {42505#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~a#1); {42425#false} is VALID [2022-02-21 03:10:38,879 INFO L290 TraceCheckUtils]: 90: Hoare triple {42425#false} assume !false; {42425#false} is VALID [2022-02-21 03:10:38,879 INFO L290 TraceCheckUtils]: 91: Hoare triple {42425#false} assume !false; {42425#false} is VALID [2022-02-21 03:10:38,880 INFO L290 TraceCheckUtils]: 92: Hoare triple {42425#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {42425#false} is VALID [2022-02-21 03:10:38,880 INFO L290 TraceCheckUtils]: 93: Hoare triple {42425#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {42425#false} is VALID [2022-02-21 03:10:38,880 INFO L290 TraceCheckUtils]: 94: Hoare triple {42425#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {42425#false} is VALID [2022-02-21 03:10:38,880 INFO L134 CoverageAnalysis]: Checked inductivity of 119 backedges. 17 proven. 0 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2022-02-21 03:10:38,880 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:38,880 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [65841540] [2022-02-21 03:10:38,880 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [65841540] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:38,881 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:38,881 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-21 03:10:38,881 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1079681917] [2022-02-21 03:10:38,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:38,882 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 95 [2022-02-21 03:10:38,883 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:38,883 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:38,918 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:38,919 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-21 03:10:38,919 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:38,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-21 03:10:38,919 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-21 03:10:38,920 INFO L87 Difference]: Start difference. First operand 355 states and 438 transitions. Second operand has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:40,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:40,226 INFO L93 Difference]: Finished difference Result 850 states and 1034 transitions. [2022-02-21 03:10:40,226 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-21 03:10:40,226 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 95 [2022-02-21 03:10:40,226 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:40,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:40,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 428 transitions. [2022-02-21 03:10:40,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:40,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 428 transitions. [2022-02-21 03:10:40,230 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 428 transitions. [2022-02-21 03:10:40,514 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 428 edges. 428 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:40,526 INFO L225 Difference]: With dead ends: 850 [2022-02-21 03:10:40,526 INFO L226 Difference]: Without dead ends: 608 [2022-02-21 03:10:40,526 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-02-21 03:10:40,527 INFO L933 BasicCegarLoop]: 173 mSDtfsCounter, 212 mSDsluCounter, 1029 mSDsCounter, 0 mSdLazyCounter, 184 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 212 SdHoareTripleChecker+Valid, 1202 SdHoareTripleChecker+Invalid, 194 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 184 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:40,527 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [212 Valid, 1202 Invalid, 194 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 184 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:40,528 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 608 states. [2022-02-21 03:10:40,751 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 608 to 362. [2022-02-21 03:10:40,751 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:40,752 INFO L82 GeneralOperation]: Start isEquivalent. First operand 608 states. Second operand has 362 states, 340 states have (on average 1.285294117647059) internal successors, (437), 351 states have internal predecessors, (437), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:40,752 INFO L74 IsIncluded]: Start isIncluded. First operand 608 states. Second operand has 362 states, 340 states have (on average 1.285294117647059) internal successors, (437), 351 states have internal predecessors, (437), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:40,752 INFO L87 Difference]: Start difference. First operand 608 states. Second operand has 362 states, 340 states have (on average 1.285294117647059) internal successors, (437), 351 states have internal predecessors, (437), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:40,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:40,763 INFO L93 Difference]: Finished difference Result 608 states and 727 transitions. [2022-02-21 03:10:40,763 INFO L276 IsEmpty]: Start isEmpty. Operand 608 states and 727 transitions. [2022-02-21 03:10:40,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:40,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:40,764 INFO L74 IsIncluded]: Start isIncluded. First operand has 362 states, 340 states have (on average 1.285294117647059) internal successors, (437), 351 states have internal predecessors, (437), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Second operand 608 states. [2022-02-21 03:10:40,764 INFO L87 Difference]: Start difference. First operand has 362 states, 340 states have (on average 1.285294117647059) internal successors, (437), 351 states have internal predecessors, (437), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Second operand 608 states. [2022-02-21 03:10:40,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:40,775 INFO L93 Difference]: Finished difference Result 608 states and 727 transitions. [2022-02-21 03:10:40,775 INFO L276 IsEmpty]: Start isEmpty. Operand 608 states and 727 transitions. [2022-02-21 03:10:40,776 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:40,776 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:40,776 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:40,776 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:40,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 362 states, 340 states have (on average 1.285294117647059) internal successors, (437), 351 states have internal predecessors, (437), 4 states have call successors, (4), 4 states have call predecessors, (4), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-21 03:10:40,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 362 states to 362 states and 447 transitions. [2022-02-21 03:10:40,781 INFO L78 Accepts]: Start accepts. Automaton has 362 states and 447 transitions. Word has length 95 [2022-02-21 03:10:40,781 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:40,781 INFO L470 AbstractCegarLoop]: Abstraction has 362 states and 447 transitions. [2022-02-21 03:10:40,782 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.777777777777778) internal successors, (52), 7 states have internal predecessors, (52), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:40,782 INFO L276 IsEmpty]: Start isEmpty. Operand 362 states and 447 transitions. [2022-02-21 03:10:40,782 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-02-21 03:10:40,782 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:40,783 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:40,783 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23 [2022-02-21 03:10:40,783 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:40,783 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:40,783 INFO L85 PathProgramCache]: Analyzing trace with hash 796776583, now seen corresponding path program 1 times [2022-02-21 03:10:40,784 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:40,784 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [733515521] [2022-02-21 03:10:40,784 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:40,784 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:40,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:40,836 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:40,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:40,838 INFO L290 TraceCheckUtils]: 0: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:40,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {45086#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {45086#true} is VALID [2022-02-21 03:10:40,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:40,839 INFO L290 TraceCheckUtils]: 3: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:40,839 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {45086#true} {45086#true} #377#return; {45086#true} is VALID [2022-02-21 03:10:40,839 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:40,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:40,973 INFO L290 TraceCheckUtils]: 0: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:40,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:40,974 INFO L290 TraceCheckUtils]: 2: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:40,974 INFO L290 TraceCheckUtils]: 3: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:40,974 INFO L290 TraceCheckUtils]: 4: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:40,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:40,975 INFO L290 TraceCheckUtils]: 6: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,976 INFO L290 TraceCheckUtils]: 7: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,977 INFO L290 TraceCheckUtils]: 8: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,978 INFO L290 TraceCheckUtils]: 10: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,979 INFO L290 TraceCheckUtils]: 11: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,979 INFO L290 TraceCheckUtils]: 12: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,982 INFO L290 TraceCheckUtils]: 17: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,982 INFO L290 TraceCheckUtils]: 18: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,982 INFO L290 TraceCheckUtils]: 19: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,983 INFO L290 TraceCheckUtils]: 20: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,983 INFO L290 TraceCheckUtils]: 21: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,984 INFO L290 TraceCheckUtils]: 22: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,984 INFO L290 TraceCheckUtils]: 23: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,985 INFO L290 TraceCheckUtils]: 24: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,985 INFO L290 TraceCheckUtils]: 25: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,986 INFO L290 TraceCheckUtils]: 26: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,987 INFO L290 TraceCheckUtils]: 28: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,988 INFO L290 TraceCheckUtils]: 29: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,988 INFO L290 TraceCheckUtils]: 30: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,989 INFO L290 TraceCheckUtils]: 31: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45173#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:40,990 INFO L290 TraceCheckUtils]: 32: Hoare triple {45173#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,990 INFO L290 TraceCheckUtils]: 33: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,991 INFO L290 TraceCheckUtils]: 34: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,991 INFO L290 TraceCheckUtils]: 35: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,991 INFO L290 TraceCheckUtils]: 36: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,992 INFO L290 TraceCheckUtils]: 37: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,992 INFO L290 TraceCheckUtils]: 38: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,992 INFO L290 TraceCheckUtils]: 39: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,993 INFO L290 TraceCheckUtils]: 40: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,993 INFO L290 TraceCheckUtils]: 41: Hoare triple {45174#(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; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,993 INFO L290 TraceCheckUtils]: 42: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,994 INFO L290 TraceCheckUtils]: 43: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,994 INFO L290 TraceCheckUtils]: 44: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume true; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:40,995 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {45174#(not (= |base2flt_#in~m| 1))} {45086#true} #379#return; {45087#false} is VALID [2022-02-21 03:10:40,995 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:40,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 0: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 3: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 4: Hoare triple {45086#true} assume ~m % 4294967296 >= 33554432; {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 5: Hoare triple {45086#true} assume ~e >= 127;~__retres4~0 := 4294967295; {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 6: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:40,999 INFO L290 TraceCheckUtils]: 7: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,000 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {45086#true} {45087#false} #381#return; {45087#false} is VALID [2022-02-21 03:10:41,000 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:41,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:41,006 INFO L290 TraceCheckUtils]: 0: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 3: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 4: Hoare triple {45086#true} assume !(~m % 4294967296 >= 33554432); {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 5: Hoare triple {45086#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 6: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 10: Hoare triple {45086#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 11: Hoare triple {45086#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 12: Hoare triple {45086#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {45086#true} ~__retres4~0 := ~res~0; {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,008 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {45086#true} {45087#false} #383#return; {45087#false} is VALID [2022-02-21 03:10:41,009 INFO L290 TraceCheckUtils]: 0: Hoare triple {45086#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(22, 2);call #Ultimate.allocInit(12, 3); {45086#true} is VALID [2022-02-21 03:10:41,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,009 INFO L272 TraceCheckUtils]: 2: Hoare triple {45086#true} call main_#t~ret22#1 := base2flt(0, 0); {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:41,009 INFO L290 TraceCheckUtils]: 3: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,010 INFO L290 TraceCheckUtils]: 4: Hoare triple {45086#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {45086#true} is VALID [2022-02-21 03:10:41,010 INFO L290 TraceCheckUtils]: 5: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,010 INFO L290 TraceCheckUtils]: 6: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,010 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {45086#true} {45086#true} #377#return; {45086#true} is VALID [2022-02-21 03:10:41,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {45086#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {45086#true} is VALID [2022-02-21 03:10:41,011 INFO L272 TraceCheckUtils]: 9: Hoare triple {45086#true} call main_#t~ret23#1 := base2flt(1, 0); {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:41,011 INFO L290 TraceCheckUtils]: 10: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:41,011 INFO L290 TraceCheckUtils]: 11: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:41,012 INFO L290 TraceCheckUtils]: 12: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:41,012 INFO L290 TraceCheckUtils]: 13: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:41,012 INFO L290 TraceCheckUtils]: 14: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:41,013 INFO L290 TraceCheckUtils]: 15: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:41,013 INFO L290 TraceCheckUtils]: 16: Hoare triple {45167#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,015 INFO L290 TraceCheckUtils]: 17: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,015 INFO L290 TraceCheckUtils]: 18: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,016 INFO L290 TraceCheckUtils]: 19: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,017 INFO L290 TraceCheckUtils]: 21: Hoare triple {45168#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,018 INFO L290 TraceCheckUtils]: 22: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,018 INFO L290 TraceCheckUtils]: 23: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,019 INFO L290 TraceCheckUtils]: 24: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,019 INFO L290 TraceCheckUtils]: 25: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,020 INFO L290 TraceCheckUtils]: 26: Hoare triple {45169#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,020 INFO L290 TraceCheckUtils]: 27: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,021 INFO L290 TraceCheckUtils]: 28: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,021 INFO L290 TraceCheckUtils]: 29: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,021 INFO L290 TraceCheckUtils]: 30: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,022 INFO L290 TraceCheckUtils]: 31: Hoare triple {45170#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,023 INFO L290 TraceCheckUtils]: 32: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,023 INFO L290 TraceCheckUtils]: 33: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,024 INFO L290 TraceCheckUtils]: 34: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,024 INFO L290 TraceCheckUtils]: 35: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,025 INFO L290 TraceCheckUtils]: 36: Hoare triple {45171#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,025 INFO L290 TraceCheckUtils]: 37: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,026 INFO L290 TraceCheckUtils]: 38: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,026 INFO L290 TraceCheckUtils]: 39: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,027 INFO L290 TraceCheckUtils]: 40: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,027 INFO L290 TraceCheckUtils]: 41: Hoare triple {45172#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45173#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:41,029 INFO L290 TraceCheckUtils]: 42: Hoare triple {45173#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,029 INFO L290 TraceCheckUtils]: 43: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,029 INFO L290 TraceCheckUtils]: 44: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,030 INFO L290 TraceCheckUtils]: 45: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,030 INFO L290 TraceCheckUtils]: 46: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,030 INFO L290 TraceCheckUtils]: 47: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,031 INFO L290 TraceCheckUtils]: 48: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,031 INFO L290 TraceCheckUtils]: 49: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,031 INFO L290 TraceCheckUtils]: 50: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,032 INFO L290 TraceCheckUtils]: 51: Hoare triple {45174#(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; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,032 INFO L290 TraceCheckUtils]: 52: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,033 INFO L290 TraceCheckUtils]: 53: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,033 INFO L290 TraceCheckUtils]: 54: Hoare triple {45174#(not (= |base2flt_#in~m| 1))} assume true; {45174#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:41,034 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {45174#(not (= |base2flt_#in~m| 1))} {45086#true} #379#return; {45087#false} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 56: Hoare triple {45087#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {45087#false} is VALID [2022-02-21 03:10:41,034 INFO L272 TraceCheckUtils]: 57: Hoare triple {45087#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 58: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 59: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 60: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 61: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 62: Hoare triple {45086#true} assume ~m % 4294967296 >= 33554432; {45086#true} is VALID [2022-02-21 03:10:41,034 INFO L290 TraceCheckUtils]: 63: Hoare triple {45086#true} assume ~e >= 127;~__retres4~0 := 4294967295; {45086#true} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 64: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 65: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,035 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {45086#true} {45087#false} #381#return; {45087#false} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 67: Hoare triple {45087#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {45087#false} is VALID [2022-02-21 03:10:41,035 INFO L272 TraceCheckUtils]: 68: Hoare triple {45087#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 69: Hoare triple {45166#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 70: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 71: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,035 INFO L290 TraceCheckUtils]: 72: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 73: Hoare triple {45086#true} assume !(~m % 4294967296 >= 33554432); {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 74: Hoare triple {45086#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 75: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 76: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 77: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 78: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 79: Hoare triple {45086#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 80: Hoare triple {45086#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,036 INFO L290 TraceCheckUtils]: 81: Hoare triple {45086#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45086#true} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 82: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 83: Hoare triple {45086#true} ~__retres4~0 := ~res~0; {45086#true} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 84: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 85: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,037 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {45086#true} {45087#false} #383#return; {45087#false} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 87: Hoare triple {45087#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {45087#false} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 88: Hoare triple {45087#false} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {45087#false} is VALID [2022-02-21 03:10:41,037 INFO L290 TraceCheckUtils]: 89: Hoare triple {45087#false} assume !(0 == mulflt_~b#1 % 4294967296); {45087#false} is VALID [2022-02-21 03:10:41,038 INFO L290 TraceCheckUtils]: 90: Hoare triple {45087#false} assume !(0 == mulflt_~a#1); {45087#false} is VALID [2022-02-21 03:10:41,038 INFO L290 TraceCheckUtils]: 91: Hoare triple {45087#false} assume !false; {45087#false} is VALID [2022-02-21 03:10:41,038 INFO L290 TraceCheckUtils]: 92: Hoare triple {45087#false} assume !false; {45087#false} is VALID [2022-02-21 03:10:41,038 INFO L290 TraceCheckUtils]: 93: Hoare triple {45087#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {45087#false} is VALID [2022-02-21 03:10:41,038 INFO L290 TraceCheckUtils]: 94: Hoare triple {45087#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {45087#false} is VALID [2022-02-21 03:10:41,038 INFO L290 TraceCheckUtils]: 95: Hoare triple {45087#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {45087#false} is VALID [2022-02-21 03:10:41,039 INFO L134 CoverageAnalysis]: Checked inductivity of 120 backedges. 4 proven. 95 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-21 03:10:41,039 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:41,039 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [733515521] [2022-02-21 03:10:41,039 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [733515521] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:41,040 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [104303563] [2022-02-21 03:10:41,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:41,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:41,040 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:41,041 INFO L229 MonitoredProcess]: Starting monitored process 16 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:41,063 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-02-21 03:10:41,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:41,231 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-21 03:10:41,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:41,246 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:41,463 INFO L290 TraceCheckUtils]: 0: Hoare triple {45086#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(22, 2);call #Ultimate.allocInit(12, 3); {45086#true} is VALID [2022-02-21 03:10:41,463 INFO L290 TraceCheckUtils]: 1: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,463 INFO L272 TraceCheckUtils]: 2: Hoare triple {45086#true} call main_#t~ret22#1 := base2flt(0, 0); {45086#true} is VALID [2022-02-21 03:10:41,463 INFO L290 TraceCheckUtils]: 3: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 4: Hoare triple {45086#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 5: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 6: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {45086#true} {45086#true} #377#return; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 8: Hoare triple {45086#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L272 TraceCheckUtils]: 9: Hoare triple {45086#true} call main_#t~ret23#1 := base2flt(1, 0); {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 10: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 11: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 12: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 13: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 14: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 15: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 16: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 18: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 19: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,464 INFO L290 TraceCheckUtils]: 20: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 21: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 22: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 25: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 26: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 27: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,465 INFO L290 TraceCheckUtils]: 28: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 29: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 30: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 31: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 32: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 33: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 34: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 35: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 36: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,466 INFO L290 TraceCheckUtils]: 37: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 38: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 39: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 40: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 41: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 42: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 43: Hoare triple {45086#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 44: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,467 INFO L290 TraceCheckUtils]: 45: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 46: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 47: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 48: Hoare triple {45086#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 49: Hoare triple {45086#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 50: Hoare triple {45086#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 51: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 52: Hoare triple {45086#true} ~__retres4~0 := ~res~0; {45086#true} is VALID [2022-02-21 03:10:41,468 INFO L290 TraceCheckUtils]: 53: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 54: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {45086#true} {45086#true} #379#return; {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 56: Hoare triple {45086#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L272 TraceCheckUtils]: 57: Hoare triple {45086#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 58: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 59: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 60: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 61: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,469 INFO L290 TraceCheckUtils]: 62: Hoare triple {45086#true} assume ~m % 4294967296 >= 33554432; {45086#true} is VALID [2022-02-21 03:10:41,472 INFO L290 TraceCheckUtils]: 63: Hoare triple {45086#true} assume ~e >= 127;~__retres4~0 := 4294967295; {45367#(= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:41,473 INFO L290 TraceCheckUtils]: 64: Hoare triple {45367#(= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {45371#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:41,473 INFO L290 TraceCheckUtils]: 65: Hoare triple {45371#(= |base2flt_#res| 4294967295)} assume true; {45371#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:41,473 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {45371#(= |base2flt_#res| 4294967295)} {45086#true} #381#return; {45378#(= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} is VALID [2022-02-21 03:10:41,474 INFO L290 TraceCheckUtils]: 67: Hoare triple {45378#(= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {45382#(= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:41,474 INFO L272 TraceCheckUtils]: 68: Hoare triple {45382#(= 4294967295 |ULTIMATE.start_main_~a~0#1|)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {45086#true} is VALID [2022-02-21 03:10:41,474 INFO L290 TraceCheckUtils]: 69: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,474 INFO L290 TraceCheckUtils]: 70: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,474 INFO L290 TraceCheckUtils]: 71: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,474 INFO L290 TraceCheckUtils]: 72: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,474 INFO L290 TraceCheckUtils]: 73: Hoare triple {45086#true} assume !(~m % 4294967296 >= 33554432); {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 74: Hoare triple {45086#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 75: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 76: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 77: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 78: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 79: Hoare triple {45086#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 80: Hoare triple {45086#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 81: Hoare triple {45086#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45086#true} is VALID [2022-02-21 03:10:41,475 INFO L290 TraceCheckUtils]: 82: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,476 INFO L290 TraceCheckUtils]: 83: Hoare triple {45086#true} ~__retres4~0 := ~res~0; {45086#true} is VALID [2022-02-21 03:10:41,476 INFO L290 TraceCheckUtils]: 84: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,476 INFO L290 TraceCheckUtils]: 85: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,476 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {45086#true} {45382#(= 4294967295 |ULTIMATE.start_main_~a~0#1|)} #383#return; {45382#(= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:41,477 INFO L290 TraceCheckUtils]: 87: Hoare triple {45382#(= 4294967295 |ULTIMATE.start_main_~a~0#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {45443#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:41,477 INFO L290 TraceCheckUtils]: 88: Hoare triple {45443#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {45087#false} is VALID [2022-02-21 03:10:41,477 INFO L290 TraceCheckUtils]: 89: Hoare triple {45087#false} assume !(0 == mulflt_~b#1 % 4294967296); {45087#false} is VALID [2022-02-21 03:10:41,477 INFO L290 TraceCheckUtils]: 90: Hoare triple {45087#false} assume !(0 == mulflt_~a#1); {45087#false} is VALID [2022-02-21 03:10:41,477 INFO L290 TraceCheckUtils]: 91: Hoare triple {45087#false} assume !false; {45087#false} is VALID [2022-02-21 03:10:41,478 INFO L290 TraceCheckUtils]: 92: Hoare triple {45087#false} assume !false; {45087#false} is VALID [2022-02-21 03:10:41,478 INFO L290 TraceCheckUtils]: 93: Hoare triple {45087#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {45087#false} is VALID [2022-02-21 03:10:41,478 INFO L290 TraceCheckUtils]: 94: Hoare triple {45087#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {45087#false} is VALID [2022-02-21 03:10:41,478 INFO L290 TraceCheckUtils]: 95: Hoare triple {45087#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {45087#false} is VALID [2022-02-21 03:10:41,478 INFO L134 CoverageAnalysis]: Checked inductivity of 120 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 111 trivial. 0 not checked. [2022-02-21 03:10:41,478 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:41,832 INFO L290 TraceCheckUtils]: 95: Hoare triple {45087#false} assume !((if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648); {45087#false} is VALID [2022-02-21 03:10:41,833 INFO L290 TraceCheckUtils]: 94: Hoare triple {45087#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {45087#false} is VALID [2022-02-21 03:10:41,833 INFO L290 TraceCheckUtils]: 93: Hoare triple {45087#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {45087#false} is VALID [2022-02-21 03:10:41,833 INFO L290 TraceCheckUtils]: 92: Hoare triple {45087#false} assume !false; {45087#false} is VALID [2022-02-21 03:10:41,833 INFO L290 TraceCheckUtils]: 91: Hoare triple {45087#false} assume !false; {45087#false} is VALID [2022-02-21 03:10:41,833 INFO L290 TraceCheckUtils]: 90: Hoare triple {45087#false} assume !(0 == mulflt_~a#1); {45087#false} is VALID [2022-02-21 03:10:41,833 INFO L290 TraceCheckUtils]: 89: Hoare triple {45087#false} assume !(0 == mulflt_~b#1 % 4294967296); {45087#false} is VALID [2022-02-21 03:10:41,835 INFO L290 TraceCheckUtils]: 88: Hoare triple {45489#(<= 4294967295 (mod |ULTIMATE.start_mulflt_~a#1| 4294967296))} assume mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296;mulflt_~tmp~1#1 := mulflt_~a#1;mulflt_~a#1 := mulflt_~b#1;mulflt_~b#1 := mulflt_~tmp~1#1; {45087#false} is VALID [2022-02-21 03:10:41,835 INFO L290 TraceCheckUtils]: 87: Hoare triple {45493#(<= 4294967295 (mod |ULTIMATE.start_main_~a~0#1| 4294967296))} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {45489#(<= 4294967295 (mod |ULTIMATE.start_mulflt_~a#1| 4294967296))} is VALID [2022-02-21 03:10:41,836 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {45086#true} {45493#(<= 4294967295 (mod |ULTIMATE.start_main_~a~0#1| 4294967296))} #383#return; {45493#(<= 4294967295 (mod |ULTIMATE.start_main_~a~0#1| 4294967296))} is VALID [2022-02-21 03:10:41,836 INFO L290 TraceCheckUtils]: 85: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,836 INFO L290 TraceCheckUtils]: 84: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,836 INFO L290 TraceCheckUtils]: 83: Hoare triple {45086#true} ~__retres4~0 := ~res~0; {45086#true} is VALID [2022-02-21 03:10:41,836 INFO L290 TraceCheckUtils]: 82: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 81: Hoare triple {45086#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 80: Hoare triple {45086#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 79: Hoare triple {45086#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 78: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 77: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 76: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 75: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 74: Hoare triple {45086#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45086#true} is VALID [2022-02-21 03:10:41,837 INFO L290 TraceCheckUtils]: 73: Hoare triple {45086#true} assume !(~m % 4294967296 >= 33554432); {45086#true} is VALID [2022-02-21 03:10:41,838 INFO L290 TraceCheckUtils]: 72: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,838 INFO L290 TraceCheckUtils]: 71: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,838 INFO L290 TraceCheckUtils]: 70: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,838 INFO L290 TraceCheckUtils]: 69: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,838 INFO L272 TraceCheckUtils]: 68: Hoare triple {45493#(<= 4294967295 (mod |ULTIMATE.start_main_~a~0#1| 4294967296))} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {45086#true} is VALID [2022-02-21 03:10:41,838 INFO L290 TraceCheckUtils]: 67: Hoare triple {45554#(<= 4294967295 (mod |ULTIMATE.start_main_#t~ret24#1| 4294967296))} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {45493#(<= 4294967295 (mod |ULTIMATE.start_main_~a~0#1| 4294967296))} is VALID [2022-02-21 03:10:41,839 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {45561#(<= 4294967295 (mod |base2flt_#res| 4294967296))} {45086#true} #381#return; {45554#(<= 4294967295 (mod |ULTIMATE.start_main_#t~ret24#1| 4294967296))} is VALID [2022-02-21 03:10:41,839 INFO L290 TraceCheckUtils]: 65: Hoare triple {45561#(<= 4294967295 (mod |base2flt_#res| 4294967296))} assume true; {45561#(<= 4294967295 (mod |base2flt_#res| 4294967296))} is VALID [2022-02-21 03:10:41,840 INFO L290 TraceCheckUtils]: 64: Hoare triple {45568#(<= 4294967295 (mod base2flt_~__retres4~0 4294967296))} #res := ~__retres4~0; {45561#(<= 4294967295 (mod |base2flt_#res| 4294967296))} is VALID [2022-02-21 03:10:41,840 INFO L290 TraceCheckUtils]: 63: Hoare triple {45086#true} assume ~e >= 127;~__retres4~0 := 4294967295; {45568#(<= 4294967295 (mod base2flt_~__retres4~0 4294967296))} is VALID [2022-02-21 03:10:41,840 INFO L290 TraceCheckUtils]: 62: Hoare triple {45086#true} assume ~m % 4294967296 >= 33554432; {45086#true} is VALID [2022-02-21 03:10:41,840 INFO L290 TraceCheckUtils]: 61: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,840 INFO L290 TraceCheckUtils]: 60: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L290 TraceCheckUtils]: 59: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L290 TraceCheckUtils]: 58: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L272 TraceCheckUtils]: 57: Hoare triple {45086#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L290 TraceCheckUtils]: 56: Hoare triple {45086#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {45086#true} {45086#true} #379#return; {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L290 TraceCheckUtils]: 54: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L290 TraceCheckUtils]: 53: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,841 INFO L290 TraceCheckUtils]: 52: Hoare triple {45086#true} ~__retres4~0 := ~res~0; {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 51: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 50: Hoare triple {45086#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 49: Hoare triple {45086#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 48: Hoare triple {45086#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 47: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 46: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 45: Hoare triple {45086#true} assume 128 + ~e >= -2147483648; {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 44: Hoare triple {45086#true} assume 128 + ~e <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,842 INFO L290 TraceCheckUtils]: 43: Hoare triple {45086#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 42: Hoare triple {45086#true} assume !(~m % 4294967296 < 16777216); {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 41: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 40: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 39: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 38: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 37: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 36: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,843 INFO L290 TraceCheckUtils]: 35: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 34: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 33: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 32: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 31: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 30: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 29: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 28: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 27: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,844 INFO L290 TraceCheckUtils]: 26: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 25: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 24: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 23: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 22: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 18: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,845 INFO L290 TraceCheckUtils]: 17: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 16: Hoare triple {45086#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 15: Hoare triple {45086#true} assume ~e - 1 <= 2147483647; {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 14: Hoare triple {45086#true} assume !(~e <= -128); {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {45086#true} assume !false; {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {45086#true} assume ~m % 4294967296 < 16777216; {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 11: Hoare triple {45086#true} assume !(0 == ~m % 4294967296); {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L290 TraceCheckUtils]: 10: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,846 INFO L272 TraceCheckUtils]: 9: Hoare triple {45086#true} call main_#t~ret23#1 := base2flt(1, 0); {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 8: Hoare triple {45086#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {45086#true} {45086#true} #377#return; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 6: Hoare triple {45086#true} assume true; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {45086#true} #res := ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 4: Hoare triple {45086#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 3: Hoare triple {45086#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L272 TraceCheckUtils]: 2: Hoare triple {45086#true} call main_#t~ret22#1 := base2flt(0, 0); {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {45086#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; {45086#true} is VALID [2022-02-21 03:10:41,847 INFO L290 TraceCheckUtils]: 0: Hoare triple {45086#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(22, 2);call #Ultimate.allocInit(12, 3); {45086#true} is VALID [2022-02-21 03:10:41,848 INFO L134 CoverageAnalysis]: Checked inductivity of 120 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 111 trivial. 0 not checked. [2022-02-21 03:10:41,848 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [104303563] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:41,848 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:41,848 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7, 7] total 21 [2022-02-21 03:10:41,848 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [645033055] [2022-02-21 03:10:41,848 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:41,849 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) Word has length 96 [2022-02-21 03:10:41,850 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:41,850 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-21 03:10:41,944 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:41,944 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-21 03:10:41,944 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:41,945 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-21 03:10:41,945 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=364, Unknown=0, NotChecked=0, Total=420 [2022-02-21 03:10:41,945 INFO L87 Difference]: Start difference. First operand 362 states and 447 transitions. Second operand has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-21 03:10:45,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:45,251 INFO L93 Difference]: Finished difference Result 1047 states and 1303 transitions. [2022-02-21 03:10:45,251 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-02-21 03:10:45,252 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) Word has length 96 [2022-02-21 03:10:45,252 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:45,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-21 03:10:45,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 507 transitions. [2022-02-21 03:10:45,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-21 03:10:45,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 507 transitions. [2022-02-21 03:10:45,257 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 507 transitions. [2022-02-21 03:10:45,604 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 507 edges. 507 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:45,624 INFO L225 Difference]: With dead ends: 1047 [2022-02-21 03:10:45,625 INFO L226 Difference]: Without dead ends: 775 [2022-02-21 03:10:45,625 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 228 GetRequests, 194 SyntacticMatches, 0 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 145 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=241, Invalid=1019, Unknown=0, NotChecked=0, Total=1260 [2022-02-21 03:10:45,626 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 714 mSDsluCounter, 1466 mSDsCounter, 0 mSdLazyCounter, 783 mSolverCounterSat, 70 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 714 SdHoareTripleChecker+Valid, 1586 SdHoareTripleChecker+Invalid, 853 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 70 IncrementalHoareTripleChecker+Valid, 783 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:45,626 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [714 Valid, 1586 Invalid, 853 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [70 Valid, 783 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-21 03:10:45,626 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 775 states. [2022-02-21 03:10:45,899 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 775 to 383. [2022-02-21 03:10:45,899 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:45,900 INFO L82 GeneralOperation]: Start isEquivalent. First operand 775 states. Second operand has 383 states, 359 states have (on average 1.267409470752089) internal successors, (455), 368 states have internal predecessors, (455), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:45,900 INFO L74 IsIncluded]: Start isIncluded. First operand 775 states. Second operand has 383 states, 359 states have (on average 1.267409470752089) internal successors, (455), 368 states have internal predecessors, (455), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:45,900 INFO L87 Difference]: Start difference. First operand 775 states. Second operand has 383 states, 359 states have (on average 1.267409470752089) internal successors, (455), 368 states have internal predecessors, (455), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:45,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:45,919 INFO L93 Difference]: Finished difference Result 775 states and 953 transitions. [2022-02-21 03:10:45,919 INFO L276 IsEmpty]: Start isEmpty. Operand 775 states and 953 transitions. [2022-02-21 03:10:45,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:45,921 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:45,922 INFO L74 IsIncluded]: Start isIncluded. First operand has 383 states, 359 states have (on average 1.267409470752089) internal successors, (455), 368 states have internal predecessors, (455), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) Second operand 775 states. [2022-02-21 03:10:45,922 INFO L87 Difference]: Start difference. First operand has 383 states, 359 states have (on average 1.267409470752089) internal successors, (455), 368 states have internal predecessors, (455), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) Second operand 775 states. [2022-02-21 03:10:45,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:45,941 INFO L93 Difference]: Finished difference Result 775 states and 953 transitions. [2022-02-21 03:10:45,941 INFO L276 IsEmpty]: Start isEmpty. Operand 775 states and 953 transitions. [2022-02-21 03:10:45,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:45,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:45,942 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:45,942 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:45,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 383 states, 359 states have (on average 1.267409470752089) internal successors, (455), 368 states have internal predecessors, (455), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:45,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 383 states to 383 states and 470 transitions. [2022-02-21 03:10:45,948 INFO L78 Accepts]: Start accepts. Automaton has 383 states and 470 transitions. Word has length 96 [2022-02-21 03:10:45,948 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:45,948 INFO L470 AbstractCegarLoop]: Abstraction has 383 states and 470 transitions. [2022-02-21 03:10:45,948 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 4.761904761904762) internal successors, (100), 18 states have internal predecessors, (100), 4 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (9), 6 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-21 03:10:45,948 INFO L276 IsEmpty]: Start isEmpty. Operand 383 states and 470 transitions. [2022-02-21 03:10:45,949 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-02-21 03:10:45,949 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:45,949 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 6, 4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:45,968 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:46,163 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:46,163 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting ULTIMATE.startErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:46,164 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:46,164 INFO L85 PathProgramCache]: Analyzing trace with hash -831220988, now seen corresponding path program 1 times [2022-02-21 03:10:46,164 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:46,164 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [298794129] [2022-02-21 03:10:46,164 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:46,164 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:46,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,218 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:46,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,220 INFO L290 TraceCheckUtils]: 0: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {48939#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {48939#true} is VALID [2022-02-21 03:10:46,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,221 INFO L290 TraceCheckUtils]: 3: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,221 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {48939#true} {48939#true} #377#return; {48939#true} is VALID [2022-02-21 03:10:46,221 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:46,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,378 INFO L290 TraceCheckUtils]: 0: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,379 INFO L290 TraceCheckUtils]: 2: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,379 INFO L290 TraceCheckUtils]: 3: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,379 INFO L290 TraceCheckUtils]: 4: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,380 INFO L290 TraceCheckUtils]: 6: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,382 INFO L290 TraceCheckUtils]: 8: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,383 INFO L290 TraceCheckUtils]: 10: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,384 INFO L290 TraceCheckUtils]: 11: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,385 INFO L290 TraceCheckUtils]: 12: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,385 INFO L290 TraceCheckUtils]: 13: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,385 INFO L290 TraceCheckUtils]: 14: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,386 INFO L290 TraceCheckUtils]: 15: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,387 INFO L290 TraceCheckUtils]: 16: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,387 INFO L290 TraceCheckUtils]: 17: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,387 INFO L290 TraceCheckUtils]: 18: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,388 INFO L290 TraceCheckUtils]: 19: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,388 INFO L290 TraceCheckUtils]: 20: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,388 INFO L290 TraceCheckUtils]: 21: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,389 INFO L290 TraceCheckUtils]: 22: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,390 INFO L290 TraceCheckUtils]: 23: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,390 INFO L290 TraceCheckUtils]: 24: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,390 INFO L290 TraceCheckUtils]: 25: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,391 INFO L290 TraceCheckUtils]: 26: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,392 INFO L290 TraceCheckUtils]: 27: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,392 INFO L290 TraceCheckUtils]: 28: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,393 INFO L290 TraceCheckUtils]: 30: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,394 INFO L290 TraceCheckUtils]: 31: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,394 INFO L290 TraceCheckUtils]: 32: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,394 INFO L290 TraceCheckUtils]: 33: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !false; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,395 INFO L290 TraceCheckUtils]: 34: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,395 INFO L290 TraceCheckUtils]: 35: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,396 INFO L290 TraceCheckUtils]: 36: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49023#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,397 INFO L290 TraceCheckUtils]: 37: Hoare triple {49023#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,397 INFO L290 TraceCheckUtils]: 38: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,397 INFO L290 TraceCheckUtils]: 39: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,398 INFO L290 TraceCheckUtils]: 40: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,398 INFO L290 TraceCheckUtils]: 41: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,398 INFO L290 TraceCheckUtils]: 42: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,399 INFO L290 TraceCheckUtils]: 43: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,399 INFO L290 TraceCheckUtils]: 44: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,399 INFO L290 TraceCheckUtils]: 45: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,400 INFO L290 TraceCheckUtils]: 46: Hoare triple {49024#(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; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,400 INFO L290 TraceCheckUtils]: 47: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,400 INFO L290 TraceCheckUtils]: 48: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,400 INFO L290 TraceCheckUtils]: 49: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume true; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,401 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {49024#(not (= |base2flt_#in~m| 1))} {48939#true} #379#return; {48940#false} is VALID [2022-02-21 03:10:46,401 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 62 [2022-02-21 03:10:46,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,405 INFO L290 TraceCheckUtils]: 0: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,405 INFO L290 TraceCheckUtils]: 3: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,406 INFO L290 TraceCheckUtils]: 4: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:46,406 INFO L290 TraceCheckUtils]: 5: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:46,406 INFO L290 TraceCheckUtils]: 6: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,406 INFO L290 TraceCheckUtils]: 7: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,406 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {48939#true} {48940#false} #381#return; {48940#false} is VALID [2022-02-21 03:10:46,406 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 73 [2022-02-21 03:10:46,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 0: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 3: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 4: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 5: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:46,410 INFO L290 TraceCheckUtils]: 6: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,411 INFO L290 TraceCheckUtils]: 7: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,411 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {48939#true} {48940#false} #383#return; {48940#false} is VALID [2022-02-21 03:10:46,411 INFO L290 TraceCheckUtils]: 0: Hoare triple {48939#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(22, 2);call #Ultimate.allocInit(12, 3); {48939#true} is VALID [2022-02-21 03:10:46,411 INFO L290 TraceCheckUtils]: 1: Hoare triple {48939#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; {48939#true} is VALID [2022-02-21 03:10:46,411 INFO L272 TraceCheckUtils]: 2: Hoare triple {48939#true} call main_#t~ret22#1 := base2flt(0, 0); {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:46,412 INFO L290 TraceCheckUtils]: 3: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,412 INFO L290 TraceCheckUtils]: 4: Hoare triple {48939#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {48939#true} is VALID [2022-02-21 03:10:46,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,412 INFO L290 TraceCheckUtils]: 6: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,412 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {48939#true} {48939#true} #377#return; {48939#true} is VALID [2022-02-21 03:10:46,412 INFO L290 TraceCheckUtils]: 8: Hoare triple {48939#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {48939#true} is VALID [2022-02-21 03:10:46,413 INFO L272 TraceCheckUtils]: 9: Hoare triple {48939#true} call main_#t~ret23#1 := base2flt(1, 0); {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:46,413 INFO L290 TraceCheckUtils]: 10: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,413 INFO L290 TraceCheckUtils]: 11: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,414 INFO L290 TraceCheckUtils]: 13: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,414 INFO L290 TraceCheckUtils]: 14: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:46,416 INFO L290 TraceCheckUtils]: 16: Hoare triple {49016#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,418 INFO L290 TraceCheckUtils]: 17: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,418 INFO L290 TraceCheckUtils]: 18: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,419 INFO L290 TraceCheckUtils]: 19: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,419 INFO L290 TraceCheckUtils]: 20: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,420 INFO L290 TraceCheckUtils]: 21: Hoare triple {49017#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,421 INFO L290 TraceCheckUtils]: 22: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,421 INFO L290 TraceCheckUtils]: 23: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,422 INFO L290 TraceCheckUtils]: 24: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,422 INFO L290 TraceCheckUtils]: 25: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,423 INFO L290 TraceCheckUtils]: 26: Hoare triple {49018#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,423 INFO L290 TraceCheckUtils]: 27: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,423 INFO L290 TraceCheckUtils]: 28: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,424 INFO L290 TraceCheckUtils]: 29: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,424 INFO L290 TraceCheckUtils]: 30: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,425 INFO L290 TraceCheckUtils]: 31: Hoare triple {49019#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,425 INFO L290 TraceCheckUtils]: 32: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,426 INFO L290 TraceCheckUtils]: 33: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,426 INFO L290 TraceCheckUtils]: 34: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,426 INFO L290 TraceCheckUtils]: 35: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,427 INFO L290 TraceCheckUtils]: 36: Hoare triple {49020#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,428 INFO L290 TraceCheckUtils]: 37: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,428 INFO L290 TraceCheckUtils]: 38: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,429 INFO L290 TraceCheckUtils]: 39: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,429 INFO L290 TraceCheckUtils]: 40: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,430 INFO L290 TraceCheckUtils]: 41: Hoare triple {49021#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,430 INFO L290 TraceCheckUtils]: 42: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,430 INFO L290 TraceCheckUtils]: 43: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !false; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,431 INFO L290 TraceCheckUtils]: 44: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,431 INFO L290 TraceCheckUtils]: 45: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,432 INFO L290 TraceCheckUtils]: 46: Hoare triple {49022#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {49023#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:46,433 INFO L290 TraceCheckUtils]: 47: Hoare triple {49023#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,433 INFO L290 TraceCheckUtils]: 48: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,433 INFO L290 TraceCheckUtils]: 49: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,434 INFO L290 TraceCheckUtils]: 50: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,434 INFO L290 TraceCheckUtils]: 51: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,434 INFO L290 TraceCheckUtils]: 52: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,435 INFO L290 TraceCheckUtils]: 53: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,435 INFO L290 TraceCheckUtils]: 54: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,435 INFO L290 TraceCheckUtils]: 55: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,436 INFO L290 TraceCheckUtils]: 56: Hoare triple {49024#(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; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,436 INFO L290 TraceCheckUtils]: 57: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,436 INFO L290 TraceCheckUtils]: 58: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,437 INFO L290 TraceCheckUtils]: 59: Hoare triple {49024#(not (= |base2flt_#in~m| 1))} assume true; {49024#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:46,437 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {49024#(not (= |base2flt_#in~m| 1))} {48939#true} #379#return; {48940#false} is VALID [2022-02-21 03:10:46,437 INFO L290 TraceCheckUtils]: 61: Hoare triple {48940#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {48940#false} is VALID [2022-02-21 03:10:46,437 INFO L272 TraceCheckUtils]: 62: Hoare triple {48940#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:46,437 INFO L290 TraceCheckUtils]: 63: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 64: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 65: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 66: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 67: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 68: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 69: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 70: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,438 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {48939#true} {48940#false} #381#return; {48940#false} is VALID [2022-02-21 03:10:46,438 INFO L290 TraceCheckUtils]: 72: Hoare triple {48940#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {48940#false} is VALID [2022-02-21 03:10:46,439 INFO L272 TraceCheckUtils]: 73: Hoare triple {48940#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 74: Hoare triple {49015#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 75: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 76: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 77: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 78: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 79: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:46,439 INFO L290 TraceCheckUtils]: 80: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 81: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,440 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {48939#true} {48940#false} #383#return; {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 83: Hoare triple {48940#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 84: Hoare triple {48940#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 85: Hoare triple {48940#false} assume !(0 == mulflt_~b#1 % 4294967296); {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 86: Hoare triple {48940#false} assume !(0 == mulflt_~a#1); {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 87: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 88: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,440 INFO L290 TraceCheckUtils]: 89: Hoare triple {48940#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {48940#false} is VALID [2022-02-21 03:10:46,441 INFO L290 TraceCheckUtils]: 90: Hoare triple {48940#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 91: Hoare triple {48940#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~ea~1#1 := (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 92: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 93: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 94: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 95: Hoare triple {48940#false} assume mulflt_~ma~1#1 >= 0;abs_173 := (if mulflt_~ma~1#1 < 16777216 then 16777216 else mulflt_~ma~1#1);assume mulflt_~ma~1#1 >= 0;assume mulflt_~ma~1#1 >= abs_173; {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 96: Hoare triple {48940#false} assume !(0 == mulflt_~b#1); {48940#false} is VALID [2022-02-21 03:10:46,442 INFO L290 TraceCheckUtils]: 97: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 98: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 99: Hoare triple {48940#false} assume mulflt_~b#1 >= 0;abs_174 := (if mulflt_~b#1 < 16777215 then mulflt_~b#1 else 16777215);assume mulflt_~b#1 >= 0;assume mulflt_~mb~1#1 < abs_174; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 100: Hoare triple {48940#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 101: Hoare triple {48940#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~eb~1#1 := (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 102: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 103: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 104: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,443 INFO L290 TraceCheckUtils]: 105: Hoare triple {48940#false} assume mulflt_~mb~1#1 >= 0;abs_176 := (if mulflt_~mb~1#1 < 16777216 then 16777216 else mulflt_~mb~1#1);assume mulflt_~mb~1#1 >= 0;assume mulflt_~mb~1#1 >= abs_176; {48940#false} is VALID [2022-02-21 03:10:46,444 INFO L290 TraceCheckUtils]: 106: Hoare triple {48940#false} assume !(mulflt_~ea~1#1 + mulflt_~eb~1#1 <= 2147483647); {48940#false} is VALID [2022-02-21 03:10:46,444 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 4 proven. 115 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:46,444 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:46,444 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [298794129] [2022-02-21 03:10:46,444 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [298794129] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:46,444 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [706325716] [2022-02-21 03:10:46,445 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:46,445 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:46,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:46,448 INFO L229 MonitoredProcess]: Starting monitored process 17 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:46,449 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-02-21 03:10:46,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-21 03:10:46,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:46,546 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:46,859 INFO L290 TraceCheckUtils]: 0: Hoare triple {48939#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(22, 2);call #Ultimate.allocInit(12, 3); {48939#true} is VALID [2022-02-21 03:10:46,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {48939#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; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L272 TraceCheckUtils]: 2: Hoare triple {48939#true} call main_#t~ret22#1 := base2flt(0, 0); {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L290 TraceCheckUtils]: 3: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L290 TraceCheckUtils]: 4: Hoare triple {48939#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L290 TraceCheckUtils]: 6: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {48939#true} {48939#true} #377#return; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {48939#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {48939#true} is VALID [2022-02-21 03:10:46,860 INFO L272 TraceCheckUtils]: 9: Hoare triple {48939#true} call main_#t~ret23#1 := base2flt(1, 0); {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 10: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 11: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 12: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 13: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 14: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 15: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 16: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,861 INFO L290 TraceCheckUtils]: 17: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 18: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 19: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 21: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 22: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 23: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 24: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 25: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,862 INFO L290 TraceCheckUtils]: 26: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 27: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 28: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 29: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 30: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 31: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 32: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 33: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,863 INFO L290 TraceCheckUtils]: 34: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 35: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 36: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 37: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 38: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 39: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 40: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 41: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 42: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:46,864 INFO L290 TraceCheckUtils]: 43: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 44: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 45: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 46: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 47: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 48: Hoare triple {48939#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 49: Hoare triple {48939#true} assume 128 + ~e <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 50: Hoare triple {48939#true} assume 128 + ~e >= -2147483648; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 51: Hoare triple {48939#true} assume 128 + ~e <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:46,865 INFO L290 TraceCheckUtils]: 52: Hoare triple {48939#true} assume 128 + ~e >= -2147483648; {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 53: Hoare triple {48939#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 54: Hoare triple {48939#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 55: Hoare triple {48939#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 56: Hoare triple {48939#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; {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 57: Hoare triple {48939#true} ~__retres4~0 := ~res~0; {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 58: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L290 TraceCheckUtils]: 59: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,866 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {48939#true} {48939#true} #379#return; {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L290 TraceCheckUtils]: 61: Hoare triple {48939#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L272 TraceCheckUtils]: 62: Hoare triple {48939#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L290 TraceCheckUtils]: 63: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L290 TraceCheckUtils]: 64: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L290 TraceCheckUtils]: 65: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L290 TraceCheckUtils]: 66: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,867 INFO L290 TraceCheckUtils]: 67: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:46,868 INFO L290 TraceCheckUtils]: 68: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {49232#(<= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:46,868 INFO L290 TraceCheckUtils]: 69: Hoare triple {49232#(<= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {49236#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:46,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {49236#(<= 4294967295 |base2flt_#res|)} assume true; {49236#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:46,869 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {49236#(<= 4294967295 |base2flt_#res|)} {48939#true} #381#return; {49243#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} is VALID [2022-02-21 03:10:46,869 INFO L290 TraceCheckUtils]: 72: Hoare triple {49243#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {49247#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:46,869 INFO L272 TraceCheckUtils]: 73: Hoare triple {49247#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {48939#true} is VALID [2022-02-21 03:10:46,869 INFO L290 TraceCheckUtils]: 74: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 75: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 76: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 77: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 78: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 79: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 80: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:46,870 INFO L290 TraceCheckUtils]: 81: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:46,871 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {48939#true} {49247#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} #383#return; {49247#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:46,871 INFO L290 TraceCheckUtils]: 83: Hoare triple {49247#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:46,871 INFO L290 TraceCheckUtils]: 84: Hoare triple {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:46,872 INFO L290 TraceCheckUtils]: 85: Hoare triple {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:46,872 INFO L290 TraceCheckUtils]: 86: Hoare triple {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:46,872 INFO L290 TraceCheckUtils]: 87: Hoare triple {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:46,872 INFO L290 TraceCheckUtils]: 88: Hoare triple {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:46,873 INFO L290 TraceCheckUtils]: 89: Hoare triple {49281#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} is VALID [2022-02-21 03:10:46,874 INFO L290 TraceCheckUtils]: 90: Hoare triple {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} is VALID [2022-02-21 03:10:46,874 INFO L290 TraceCheckUtils]: 91: Hoare triple {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~ea~1#1 := (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} is VALID [2022-02-21 03:10:46,874 INFO L290 TraceCheckUtils]: 92: Hoare triple {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} assume !false; {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} is VALID [2022-02-21 03:10:46,875 INFO L290 TraceCheckUtils]: 93: Hoare triple {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} assume !false; {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} is VALID [2022-02-21 03:10:46,875 INFO L290 TraceCheckUtils]: 94: Hoare triple {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} assume !false; {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} is VALID [2022-02-21 03:10:46,875 INFO L290 TraceCheckUtils]: 95: Hoare triple {49300#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777215)} assume mulflt_~ma~1#1 >= 0;abs_173 := (if mulflt_~ma~1#1 < 16777216 then 16777216 else mulflt_~ma~1#1);assume mulflt_~ma~1#1 >= 0;assume mulflt_~ma~1#1 >= abs_173; {48940#false} is VALID [2022-02-21 03:10:46,875 INFO L290 TraceCheckUtils]: 96: Hoare triple {48940#false} assume !(0 == mulflt_~b#1); {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 97: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 98: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 99: Hoare triple {48940#false} assume mulflt_~b#1 >= 0;abs_174 := (if mulflt_~b#1 < 16777215 then mulflt_~b#1 else 16777215);assume mulflt_~b#1 >= 0;assume mulflt_~mb~1#1 < abs_174; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 100: Hoare triple {48940#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 101: Hoare triple {48940#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~eb~1#1 := (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 102: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 103: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,876 INFO L290 TraceCheckUtils]: 104: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:46,877 INFO L290 TraceCheckUtils]: 105: Hoare triple {48940#false} assume mulflt_~mb~1#1 >= 0;abs_176 := (if mulflt_~mb~1#1 < 16777216 then 16777216 else mulflt_~mb~1#1);assume mulflt_~mb~1#1 >= 0;assume mulflt_~mb~1#1 >= abs_176; {48940#false} is VALID [2022-02-21 03:10:46,877 INFO L290 TraceCheckUtils]: 106: Hoare triple {48940#false} assume !(mulflt_~ea~1#1 + mulflt_~eb~1#1 <= 2147483647); {48940#false} is VALID [2022-02-21 03:10:46,877 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 132 trivial. 0 not checked. [2022-02-21 03:10:46,877 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:47,177 INFO L290 TraceCheckUtils]: 106: Hoare triple {48940#false} assume !(mulflt_~ea~1#1 + mulflt_~eb~1#1 <= 2147483647); {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 105: Hoare triple {48940#false} assume mulflt_~mb~1#1 >= 0;abs_176 := (if mulflt_~mb~1#1 < 16777216 then 16777216 else mulflt_~mb~1#1);assume mulflt_~mb~1#1 >= 0;assume mulflt_~mb~1#1 >= abs_176; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 104: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 103: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 102: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 101: Hoare triple {48940#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~eb~1#1 := (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 100: Hoare triple {48940#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 99: Hoare triple {48940#false} assume mulflt_~b#1 >= 0;abs_174 := (if mulflt_~b#1 < 16777215 then mulflt_~b#1 else 16777215);assume mulflt_~b#1 >= 0;assume mulflt_~mb~1#1 < abs_174; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 98: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 97: Hoare triple {48940#false} assume !false; {48940#false} is VALID [2022-02-21 03:10:47,178 INFO L290 TraceCheckUtils]: 96: Hoare triple {48940#false} assume !(0 == mulflt_~b#1); {48940#false} is VALID [2022-02-21 03:10:47,179 INFO L290 TraceCheckUtils]: 95: Hoare triple {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} assume mulflt_~ma~1#1 >= 0;abs_173 := (if mulflt_~ma~1#1 < 16777216 then 16777216 else mulflt_~ma~1#1);assume mulflt_~ma~1#1 >= 0;assume mulflt_~ma~1#1 >= abs_173; {48940#false} is VALID [2022-02-21 03:10:47,179 INFO L290 TraceCheckUtils]: 94: Hoare triple {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} assume !false; {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} is VALID [2022-02-21 03:10:47,179 INFO L290 TraceCheckUtils]: 93: Hoare triple {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} assume !false; {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} is VALID [2022-02-21 03:10:47,180 INFO L290 TraceCheckUtils]: 92: Hoare triple {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} assume !false; {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} is VALID [2022-02-21 03:10:47,180 INFO L290 TraceCheckUtils]: 91: Hoare triple {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~ea~1#1 := (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} is VALID [2022-02-21 03:10:47,180 INFO L290 TraceCheckUtils]: 90: Hoare triple {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} is VALID [2022-02-21 03:10:47,181 INFO L290 TraceCheckUtils]: 89: Hoare triple {48939#true} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {49385#(< |ULTIMATE.start_mulflt_~ma~1#1| 16777216)} is VALID [2022-02-21 03:10:47,181 INFO L290 TraceCheckUtils]: 88: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,181 INFO L290 TraceCheckUtils]: 87: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 86: Hoare triple {48939#true} assume !(0 == mulflt_~a#1); {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 85: Hoare triple {48939#true} assume !(0 == mulflt_~b#1 % 4294967296); {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 84: Hoare triple {48939#true} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 83: Hoare triple {48939#true} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {48939#true} {48939#true} #383#return; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 81: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 80: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 79: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 78: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 77: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 76: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 75: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 74: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L272 TraceCheckUtils]: 73: Hoare triple {48939#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L290 TraceCheckUtils]: 72: Hoare triple {48939#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {48939#true} is VALID [2022-02-21 03:10:47,182 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {48939#true} {48939#true} #381#return; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 70: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 69: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 68: Hoare triple {48939#true} assume ~e >= 127;~__retres4~0 := 4294967295; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 67: Hoare triple {48939#true} assume ~m % 4294967296 >= 33554432; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 66: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 65: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 64: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 63: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L272 TraceCheckUtils]: 62: Hoare triple {48939#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 61: Hoare triple {48939#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {48939#true} {48939#true} #379#return; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 59: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 58: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 57: Hoare triple {48939#true} ~__retres4~0 := ~res~0; {48939#true} is VALID [2022-02-21 03:10:47,183 INFO L290 TraceCheckUtils]: 56: Hoare triple {48939#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; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 55: Hoare triple {48939#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 54: Hoare triple {48939#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 53: Hoare triple {48939#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 52: Hoare triple {48939#true} assume 128 + ~e >= -2147483648; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 51: Hoare triple {48939#true} assume 128 + ~e <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 50: Hoare triple {48939#true} assume 128 + ~e >= -2147483648; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 49: Hoare triple {48939#true} assume 128 + ~e <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 48: Hoare triple {48939#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 47: Hoare triple {48939#true} assume !(~m % 4294967296 < 16777216); {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 46: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 45: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 44: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 43: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 42: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 41: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,184 INFO L290 TraceCheckUtils]: 40: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,185 INFO L290 TraceCheckUtils]: 39: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,185 INFO L290 TraceCheckUtils]: 38: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,185 INFO L290 TraceCheckUtils]: 37: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,185 INFO L290 TraceCheckUtils]: 36: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,185 INFO L290 TraceCheckUtils]: 35: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,189 INFO L290 TraceCheckUtils]: 34: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,189 INFO L290 TraceCheckUtils]: 33: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,189 INFO L290 TraceCheckUtils]: 32: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,189 INFO L290 TraceCheckUtils]: 31: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 30: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 28: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 27: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 26: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 25: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 24: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 23: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 22: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 21: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 20: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,190 INFO L290 TraceCheckUtils]: 19: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 18: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 16: Hoare triple {48939#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 15: Hoare triple {48939#true} assume ~e - 1 <= 2147483647; {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 14: Hoare triple {48939#true} assume !(~e <= -128); {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 13: Hoare triple {48939#true} assume !false; {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 12: Hoare triple {48939#true} assume ~m % 4294967296 < 16777216; {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 11: Hoare triple {48939#true} assume !(0 == ~m % 4294967296); {48939#true} is VALID [2022-02-21 03:10:47,191 INFO L290 TraceCheckUtils]: 10: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L272 TraceCheckUtils]: 9: Hoare triple {48939#true} call main_#t~ret23#1 := base2flt(1, 0); {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {48939#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {48939#true} {48939#true} #377#return; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L290 TraceCheckUtils]: 6: Hoare triple {48939#true} assume true; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {48939#true} #res := ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L290 TraceCheckUtils]: 4: Hoare triple {48939#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L290 TraceCheckUtils]: 3: Hoare triple {48939#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {48939#true} is VALID [2022-02-21 03:10:47,192 INFO L272 TraceCheckUtils]: 2: Hoare triple {48939#true} call main_#t~ret22#1 := base2flt(0, 0); {48939#true} is VALID [2022-02-21 03:10:47,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {48939#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; {48939#true} is VALID [2022-02-21 03:10:47,193 INFO L290 TraceCheckUtils]: 0: Hoare triple {48939#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(22, 2);call #Ultimate.allocInit(12, 3); {48939#true} is VALID [2022-02-21 03:10:47,193 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 141 trivial. 0 not checked. [2022-02-21 03:10:47,193 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [706325716] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:47,193 INFO L191 FreeRefinementEngine]: Found 1 perfect and 2 imperfect interpolant sequences. [2022-02-21 03:10:47,193 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [12, 8] total 19 [2022-02-21 03:10:47,194 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [401411344] [2022-02-21 03:10:47,194 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:47,194 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 107 [2022-02-21 03:10:47,194 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:47,194 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:47,236 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:47,236 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-21 03:10:47,236 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:47,236 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-21 03:10:47,236 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=292, Unknown=0, NotChecked=0, Total=342 [2022-02-21 03:10:47,236 INFO L87 Difference]: Start difference. First operand 383 states and 470 transitions. Second operand has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:47,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:47,610 INFO L93 Difference]: Finished difference Result 461 states and 559 transitions. [2022-02-21 03:10:47,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-21 03:10:47,610 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 107 [2022-02-21 03:10:47,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:47,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:47,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 184 transitions. [2022-02-21 03:10:47,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:47,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 184 transitions. [2022-02-21 03:10:47,612 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 184 transitions. [2022-02-21 03:10:47,724 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 184 edges. 184 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:47,730 INFO L225 Difference]: With dead ends: 461 [2022-02-21 03:10:47,730 INFO L226 Difference]: Without dead ends: 410 [2022-02-21 03:10:47,731 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 231 GetRequests, 214 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=292, Unknown=0, NotChecked=0, Total=342 [2022-02-21 03:10:47,731 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 8 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 225 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:47,731 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 225 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:10:47,732 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 410 states. [2022-02-21 03:10:47,968 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 410 to 401. [2022-02-21 03:10:47,968 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:47,968 INFO L82 GeneralOperation]: Start isEquivalent. First operand 410 states. Second operand has 401 states, 377 states have (on average 1.259946949602122) internal successors, (475), 386 states have internal predecessors, (475), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:47,969 INFO L74 IsIncluded]: Start isIncluded. First operand 410 states. Second operand has 401 states, 377 states have (on average 1.259946949602122) internal successors, (475), 386 states have internal predecessors, (475), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:47,969 INFO L87 Difference]: Start difference. First operand 410 states. Second operand has 401 states, 377 states have (on average 1.259946949602122) internal successors, (475), 386 states have internal predecessors, (475), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:47,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:47,976 INFO L93 Difference]: Finished difference Result 410 states and 497 transitions. [2022-02-21 03:10:47,977 INFO L276 IsEmpty]: Start isEmpty. Operand 410 states and 497 transitions. [2022-02-21 03:10:47,977 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:47,977 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:47,978 INFO L74 IsIncluded]: Start isIncluded. First operand has 401 states, 377 states have (on average 1.259946949602122) internal successors, (475), 386 states have internal predecessors, (475), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) Second operand 410 states. [2022-02-21 03:10:47,978 INFO L87 Difference]: Start difference. First operand has 401 states, 377 states have (on average 1.259946949602122) internal successors, (475), 386 states have internal predecessors, (475), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) Second operand 410 states. [2022-02-21 03:10:47,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:47,984 INFO L93 Difference]: Finished difference Result 410 states and 497 transitions. [2022-02-21 03:10:47,984 INFO L276 IsEmpty]: Start isEmpty. Operand 410 states and 497 transitions. [2022-02-21 03:10:47,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:47,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:47,985 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:47,985 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:47,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 401 states, 377 states have (on average 1.259946949602122) internal successors, (475), 386 states have internal predecessors, (475), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:47,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 401 states to 401 states and 490 transitions. [2022-02-21 03:10:47,992 INFO L78 Accepts]: Start accepts. Automaton has 401 states and 490 transitions. Word has length 107 [2022-02-21 03:10:47,992 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:47,992 INFO L470 AbstractCegarLoop]: Abstraction has 401 states and 490 transitions. [2022-02-21 03:10:47,992 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 1 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:47,992 INFO L276 IsEmpty]: Start isEmpty. Operand 401 states and 490 transitions. [2022-02-21 03:10:47,993 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-02-21 03:10:47,993 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:47,993 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 6, 4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:48,013 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:48,199 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-02-21 03:10:48,199 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:48,200 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:48,200 INFO L85 PathProgramCache]: Analyzing trace with hash -573055550, now seen corresponding path program 1 times [2022-02-21 03:10:48,200 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:48,200 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1842500277] [2022-02-21 03:10:48,200 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:48,200 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:48,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,237 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:48,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,239 INFO L290 TraceCheckUtils]: 0: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {51450#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {51450#true} is VALID [2022-02-21 03:10:48,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,240 INFO L290 TraceCheckUtils]: 3: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,240 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {51450#true} {51450#true} #377#return; {51450#true} is VALID [2022-02-21 03:10:48,240 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:48,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,384 INFO L290 TraceCheckUtils]: 0: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,385 INFO L290 TraceCheckUtils]: 2: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,385 INFO L290 TraceCheckUtils]: 3: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,385 INFO L290 TraceCheckUtils]: 4: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,386 INFO L290 TraceCheckUtils]: 5: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,386 INFO L290 TraceCheckUtils]: 6: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,388 INFO L290 TraceCheckUtils]: 9: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,389 INFO L290 TraceCheckUtils]: 10: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,391 INFO L290 TraceCheckUtils]: 12: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,392 INFO L290 TraceCheckUtils]: 15: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,393 INFO L290 TraceCheckUtils]: 16: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,393 INFO L290 TraceCheckUtils]: 17: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,393 INFO L290 TraceCheckUtils]: 18: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,394 INFO L290 TraceCheckUtils]: 19: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,394 INFO L290 TraceCheckUtils]: 21: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,395 INFO L290 TraceCheckUtils]: 22: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,396 INFO L290 TraceCheckUtils]: 23: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,396 INFO L290 TraceCheckUtils]: 24: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,396 INFO L290 TraceCheckUtils]: 25: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,397 INFO L290 TraceCheckUtils]: 26: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,398 INFO L290 TraceCheckUtils]: 27: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,398 INFO L290 TraceCheckUtils]: 28: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,399 INFO L290 TraceCheckUtils]: 29: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,399 INFO L290 TraceCheckUtils]: 30: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,400 INFO L290 TraceCheckUtils]: 31: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,400 INFO L290 TraceCheckUtils]: 32: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,400 INFO L290 TraceCheckUtils]: 33: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !false; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,401 INFO L290 TraceCheckUtils]: 34: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,401 INFO L290 TraceCheckUtils]: 35: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,402 INFO L290 TraceCheckUtils]: 36: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51534#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,402 INFO L290 TraceCheckUtils]: 37: Hoare triple {51534#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,403 INFO L290 TraceCheckUtils]: 38: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,403 INFO L290 TraceCheckUtils]: 39: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,403 INFO L290 TraceCheckUtils]: 40: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,404 INFO L290 TraceCheckUtils]: 41: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,404 INFO L290 TraceCheckUtils]: 42: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,404 INFO L290 TraceCheckUtils]: 43: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,405 INFO L290 TraceCheckUtils]: 44: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,405 INFO L290 TraceCheckUtils]: 45: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,405 INFO L290 TraceCheckUtils]: 46: Hoare triple {51535#(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; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,405 INFO L290 TraceCheckUtils]: 47: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,406 INFO L290 TraceCheckUtils]: 48: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,406 INFO L290 TraceCheckUtils]: 49: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume true; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,407 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {51535#(not (= |base2flt_#in~m| 1))} {51450#true} #379#return; {51451#false} is VALID [2022-02-21 03:10:48,407 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 62 [2022-02-21 03:10:48,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,410 INFO L290 TraceCheckUtils]: 0: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 1: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 2: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 3: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 4: Hoare triple {51450#true} assume ~m % 4294967296 >= 33554432; {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 5: Hoare triple {51450#true} assume ~e >= 127;~__retres4~0 := 4294967295; {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 6: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L290 TraceCheckUtils]: 7: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,411 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {51450#true} {51451#false} #381#return; {51451#false} is VALID [2022-02-21 03:10:48,412 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 73 [2022-02-21 03:10:48,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,415 INFO L290 TraceCheckUtils]: 0: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,415 INFO L290 TraceCheckUtils]: 1: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,415 INFO L290 TraceCheckUtils]: 2: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 3: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 4: Hoare triple {51450#true} assume ~m % 4294967296 >= 33554432; {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 5: Hoare triple {51450#true} assume ~e >= 127;~__retres4~0 := 4294967295; {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 6: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 7: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {51450#true} {51451#false} #383#return; {51451#false} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 0: Hoare triple {51450#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(22, 2);call #Ultimate.allocInit(12, 3); {51450#true} is VALID [2022-02-21 03:10:48,416 INFO L290 TraceCheckUtils]: 1: Hoare triple {51450#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; {51450#true} is VALID [2022-02-21 03:10:48,417 INFO L272 TraceCheckUtils]: 2: Hoare triple {51450#true} call main_#t~ret22#1 := base2flt(0, 0); {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:48,417 INFO L290 TraceCheckUtils]: 3: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,417 INFO L290 TraceCheckUtils]: 4: Hoare triple {51450#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {51450#true} is VALID [2022-02-21 03:10:48,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,417 INFO L290 TraceCheckUtils]: 6: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,417 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {51450#true} {51450#true} #377#return; {51450#true} is VALID [2022-02-21 03:10:48,418 INFO L290 TraceCheckUtils]: 8: Hoare triple {51450#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {51450#true} is VALID [2022-02-21 03:10:48,418 INFO L272 TraceCheckUtils]: 9: Hoare triple {51450#true} call main_#t~ret23#1 := base2flt(1, 0); {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:48,418 INFO L290 TraceCheckUtils]: 10: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,419 INFO L290 TraceCheckUtils]: 11: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,419 INFO L290 TraceCheckUtils]: 12: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,425 INFO L290 TraceCheckUtils]: 13: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,426 INFO L290 TraceCheckUtils]: 14: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,426 INFO L290 TraceCheckUtils]: 15: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:48,426 INFO L290 TraceCheckUtils]: 16: Hoare triple {51527#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,428 INFO L290 TraceCheckUtils]: 17: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,428 INFO L290 TraceCheckUtils]: 18: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,429 INFO L290 TraceCheckUtils]: 19: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,429 INFO L290 TraceCheckUtils]: 20: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,430 INFO L290 TraceCheckUtils]: 21: Hoare triple {51528#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,431 INFO L290 TraceCheckUtils]: 22: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,431 INFO L290 TraceCheckUtils]: 23: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,432 INFO L290 TraceCheckUtils]: 24: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,432 INFO L290 TraceCheckUtils]: 25: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,433 INFO L290 TraceCheckUtils]: 26: Hoare triple {51529#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,433 INFO L290 TraceCheckUtils]: 27: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,433 INFO L290 TraceCheckUtils]: 28: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,434 INFO L290 TraceCheckUtils]: 29: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,434 INFO L290 TraceCheckUtils]: 30: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,434 INFO L290 TraceCheckUtils]: 31: Hoare triple {51530#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,435 INFO L290 TraceCheckUtils]: 32: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,436 INFO L290 TraceCheckUtils]: 33: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,436 INFO L290 TraceCheckUtils]: 34: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,436 INFO L290 TraceCheckUtils]: 35: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,437 INFO L290 TraceCheckUtils]: 36: Hoare triple {51531#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,438 INFO L290 TraceCheckUtils]: 37: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,438 INFO L290 TraceCheckUtils]: 38: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,438 INFO L290 TraceCheckUtils]: 39: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,439 INFO L290 TraceCheckUtils]: 40: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,440 INFO L290 TraceCheckUtils]: 41: Hoare triple {51532#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,440 INFO L290 TraceCheckUtils]: 42: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,440 INFO L290 TraceCheckUtils]: 43: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !false; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,440 INFO L290 TraceCheckUtils]: 44: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,441 INFO L290 TraceCheckUtils]: 45: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,442 INFO L290 TraceCheckUtils]: 46: Hoare triple {51533#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51534#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:48,442 INFO L290 TraceCheckUtils]: 47: Hoare triple {51534#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,442 INFO L290 TraceCheckUtils]: 48: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,443 INFO L290 TraceCheckUtils]: 49: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,443 INFO L290 TraceCheckUtils]: 50: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,443 INFO L290 TraceCheckUtils]: 51: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,444 INFO L290 TraceCheckUtils]: 52: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,444 INFO L290 TraceCheckUtils]: 53: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,444 INFO L290 TraceCheckUtils]: 54: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,444 INFO L290 TraceCheckUtils]: 55: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,445 INFO L290 TraceCheckUtils]: 56: Hoare triple {51535#(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; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,445 INFO L290 TraceCheckUtils]: 57: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,445 INFO L290 TraceCheckUtils]: 58: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,446 INFO L290 TraceCheckUtils]: 59: Hoare triple {51535#(not (= |base2flt_#in~m| 1))} assume true; {51535#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:48,446 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {51535#(not (= |base2flt_#in~m| 1))} {51450#true} #379#return; {51451#false} is VALID [2022-02-21 03:10:48,446 INFO L290 TraceCheckUtils]: 61: Hoare triple {51451#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {51451#false} is VALID [2022-02-21 03:10:48,446 INFO L272 TraceCheckUtils]: 62: Hoare triple {51451#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 63: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 64: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 65: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 66: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 67: Hoare triple {51450#true} assume ~m % 4294967296 >= 33554432; {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 68: Hoare triple {51450#true} assume ~e >= 127;~__retres4~0 := 4294967295; {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 69: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L290 TraceCheckUtils]: 70: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,447 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {51450#true} {51451#false} #381#return; {51451#false} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 72: Hoare triple {51451#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {51451#false} is VALID [2022-02-21 03:10:48,448 INFO L272 TraceCheckUtils]: 73: Hoare triple {51451#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 74: Hoare triple {51526#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 75: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 76: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 77: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 78: Hoare triple {51450#true} assume ~m % 4294967296 >= 33554432; {51450#true} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 79: Hoare triple {51450#true} assume ~e >= 127;~__retres4~0 := 4294967295; {51450#true} is VALID [2022-02-21 03:10:48,448 INFO L290 TraceCheckUtils]: 80: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 81: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,449 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {51450#true} {51451#false} #383#return; {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 83: Hoare triple {51451#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 84: Hoare triple {51451#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 85: Hoare triple {51451#false} assume !(0 == mulflt_~b#1 % 4294967296); {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 86: Hoare triple {51451#false} assume !(0 == mulflt_~a#1); {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 87: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 88: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,449 INFO L290 TraceCheckUtils]: 89: Hoare triple {51451#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 90: Hoare triple {51451#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 91: Hoare triple {51451#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~ea~1#1 := (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 92: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 93: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 94: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 95: Hoare triple {51451#false} assume !(mulflt_~ma~1#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet13#1;havoc mulflt_#t~nondet13#1; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 96: Hoare triple {51451#false} assume !(0 == mulflt_~b#1); {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 97: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,450 INFO L290 TraceCheckUtils]: 98: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 99: Hoare triple {51451#false} assume mulflt_~b#1 >= 0;abs_174 := (if mulflt_~b#1 < 16777215 then mulflt_~b#1 else 16777215);assume mulflt_~b#1 >= 0;assume mulflt_~mb~1#1 < abs_174; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 100: Hoare triple {51451#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 101: Hoare triple {51451#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~eb~1#1 := (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 102: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 103: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 104: Hoare triple {51451#false} assume !false; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 105: Hoare triple {51451#false} assume mulflt_~mb~1#1 >= 0;abs_176 := (if mulflt_~mb~1#1 < 16777216 then 16777216 else mulflt_~mb~1#1);assume mulflt_~mb~1#1 >= 0;assume mulflt_~mb~1#1 >= abs_176; {51451#false} is VALID [2022-02-21 03:10:48,451 INFO L290 TraceCheckUtils]: 106: Hoare triple {51451#false} assume !(mulflt_~ea~1#1 + mulflt_~eb~1#1 <= 2147483647); {51451#false} is VALID [2022-02-21 03:10:48,452 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 4 proven. 115 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:48,452 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:48,452 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1842500277] [2022-02-21 03:10:48,452 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1842500277] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:48,452 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [512179788] [2022-02-21 03:10:48,452 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:48,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:48,453 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:48,454 INFO L229 MonitoredProcess]: Starting monitored process 18 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:48,455 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-02-21 03:10:48,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,527 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-21 03:10:48,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:48,540 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 0: Hoare triple {51450#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(22, 2);call #Ultimate.allocInit(12, 3); {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {51450#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; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L272 TraceCheckUtils]: 2: Hoare triple {51450#true} call main_#t~ret22#1 := base2flt(0, 0); {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 3: Hoare triple {51450#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 4: Hoare triple {51450#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 6: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {51450#true} {51450#true} #377#return; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {51450#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {51450#true} is VALID [2022-02-21 03:10:48,864 INFO L272 TraceCheckUtils]: 9: Hoare triple {51450#true} call main_#t~ret23#1 := base2flt(1, 0); {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 10: Hoare triple {51450#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 11: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 12: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 17: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 19: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 22: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 23: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 24: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 25: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 26: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,865 INFO L290 TraceCheckUtils]: 27: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 28: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 29: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 30: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 31: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 32: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 33: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 34: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 35: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 36: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 37: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 38: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 39: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 40: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 41: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 42: Hoare triple {51450#true} assume ~m % 4294967296 < 16777216; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 43: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,866 INFO L290 TraceCheckUtils]: 44: Hoare triple {51450#true} assume !(~e <= -128); {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 45: Hoare triple {51450#true} assume ~e - 1 <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 46: Hoare triple {51450#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 47: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 48: Hoare triple {51450#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 49: Hoare triple {51450#true} assume 128 + ~e <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 50: Hoare triple {51450#true} assume 128 + ~e >= -2147483648; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 51: Hoare triple {51450#true} assume 128 + ~e <= 2147483647; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 52: Hoare triple {51450#true} assume 128 + ~e >= -2147483648; {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 53: Hoare triple {51450#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 54: Hoare triple {51450#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {51450#true} is VALID [2022-02-21 03:10:48,867 INFO L290 TraceCheckUtils]: 55: Hoare triple {51450#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 56: Hoare triple {51450#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; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 57: Hoare triple {51450#true} ~__retres4~0 := ~res~0; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 58: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 59: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {51450#true} {51450#true} #379#return; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 61: Hoare triple {51450#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L272 TraceCheckUtils]: 62: Hoare triple {51450#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 63: Hoare triple {51450#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,868 INFO L290 TraceCheckUtils]: 64: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 65: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 66: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 67: Hoare triple {51450#true} assume ~m % 4294967296 >= 33554432; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 68: Hoare triple {51450#true} assume ~e >= 127;~__retres4~0 := 4294967295; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 69: Hoare triple {51450#true} #res := ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 70: Hoare triple {51450#true} assume true; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {51450#true} {51450#true} #381#return; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L290 TraceCheckUtils]: 72: Hoare triple {51450#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {51450#true} is VALID [2022-02-21 03:10:48,869 INFO L272 TraceCheckUtils]: 73: Hoare triple {51450#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {51450#true} is VALID [2022-02-21 03:10:48,870 INFO L290 TraceCheckUtils]: 74: Hoare triple {51450#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {51450#true} is VALID [2022-02-21 03:10:48,870 INFO L290 TraceCheckUtils]: 75: Hoare triple {51450#true} assume !(0 == ~m % 4294967296); {51450#true} is VALID [2022-02-21 03:10:48,870 INFO L290 TraceCheckUtils]: 76: Hoare triple {51450#true} assume !(~m % 4294967296 < 16777216); {51450#true} is VALID [2022-02-21 03:10:48,870 INFO L290 TraceCheckUtils]: 77: Hoare triple {51450#true} assume !false; {51450#true} is VALID [2022-02-21 03:10:48,870 INFO L290 TraceCheckUtils]: 78: Hoare triple {51450#true} assume ~m % 4294967296 >= 33554432; {51450#true} is VALID [2022-02-21 03:10:48,871 INFO L290 TraceCheckUtils]: 79: Hoare triple {51450#true} assume ~e >= 127;~__retres4~0 := 4294967295; {51776#(<= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:48,871 INFO L290 TraceCheckUtils]: 80: Hoare triple {51776#(<= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {51780#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:48,872 INFO L290 TraceCheckUtils]: 81: Hoare triple {51780#(<= 4294967295 |base2flt_#res|)} assume true; {51780#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:48,873 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {51780#(<= 4294967295 |base2flt_#res|)} {51450#true} #383#return; {51787#(<= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:48,873 INFO L290 TraceCheckUtils]: 83: Hoare triple {51787#(<= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,873 INFO L290 TraceCheckUtils]: 84: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,874 INFO L290 TraceCheckUtils]: 85: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,874 INFO L290 TraceCheckUtils]: 86: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !(0 == mulflt_~a#1); {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,874 INFO L290 TraceCheckUtils]: 87: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,874 INFO L290 TraceCheckUtils]: 88: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,875 INFO L290 TraceCheckUtils]: 89: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,875 INFO L290 TraceCheckUtils]: 90: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,875 INFO L290 TraceCheckUtils]: 91: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~ea~1#1 := (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,875 INFO L290 TraceCheckUtils]: 92: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,876 INFO L290 TraceCheckUtils]: 93: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,876 INFO L290 TraceCheckUtils]: 94: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,876 INFO L290 TraceCheckUtils]: 95: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !(mulflt_~ma~1#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet13#1;havoc mulflt_#t~nondet13#1; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,877 INFO L290 TraceCheckUtils]: 96: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !(0 == mulflt_~b#1); {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,877 INFO L290 TraceCheckUtils]: 97: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,877 INFO L290 TraceCheckUtils]: 98: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume !false; {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:48,878 INFO L290 TraceCheckUtils]: 99: Hoare triple {51791#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} assume mulflt_~b#1 >= 0;abs_174 := (if mulflt_~b#1 < 16777215 then mulflt_~b#1 else 16777215);assume mulflt_~b#1 >= 0;assume mulflt_~mb~1#1 < abs_174; {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} is VALID [2022-02-21 03:10:48,878 INFO L290 TraceCheckUtils]: 100: Hoare triple {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} is VALID [2022-02-21 03:10:48,878 INFO L290 TraceCheckUtils]: 101: Hoare triple {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~eb~1#1 := (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} is VALID [2022-02-21 03:10:48,878 INFO L290 TraceCheckUtils]: 102: Hoare triple {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} assume !false; {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} is VALID [2022-02-21 03:10:48,879 INFO L290 TraceCheckUtils]: 103: Hoare triple {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} assume !false; {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} is VALID [2022-02-21 03:10:48,879 INFO L290 TraceCheckUtils]: 104: Hoare triple {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} assume !false; {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} is VALID [2022-02-21 03:10:48,880 INFO L290 TraceCheckUtils]: 105: Hoare triple {51840#(< |ULTIMATE.start_mulflt_~mb~1#1| 16777215)} assume mulflt_~mb~1#1 >= 0;abs_176 := (if mulflt_~mb~1#1 < 16777216 then 16777216 else mulflt_~mb~1#1);assume mulflt_~mb~1#1 >= 0;assume mulflt_~mb~1#1 >= abs_176; {51451#false} is VALID [2022-02-21 03:10:48,880 INFO L290 TraceCheckUtils]: 106: Hoare triple {51451#false} assume !(mulflt_~ea~1#1 + mulflt_~eb~1#1 <= 2147483647); {51451#false} is VALID [2022-02-21 03:10:48,880 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 132 trivial. 0 not checked. [2022-02-21 03:10:48,880 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:48,880 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [512179788] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:48,880 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:48,881 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [12] total 17 [2022-02-21 03:10:48,881 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [927184127] [2022-02-21 03:10:48,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:48,881 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 107 [2022-02-21 03:10:48,881 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:48,882 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:48,934 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:48,934 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-21 03:10:48,934 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:48,934 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-21 03:10:48,934 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=227, Unknown=0, NotChecked=0, Total=272 [2022-02-21 03:10:48,935 INFO L87 Difference]: Start difference. First operand 401 states and 490 transitions. Second operand has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:49,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:49,557 INFO L93 Difference]: Finished difference Result 474 states and 573 transitions. [2022-02-21 03:10:49,557 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-21 03:10:49,557 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 107 [2022-02-21 03:10:49,558 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:49,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:49,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 228 transitions. [2022-02-21 03:10:49,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:49,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 228 transitions. [2022-02-21 03:10:49,560 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 228 transitions. [2022-02-21 03:10:49,702 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 228 edges. 228 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:49,709 INFO L225 Difference]: With dead ends: 474 [2022-02-21 03:10:49,709 INFO L226 Difference]: Without dead ends: 444 [2022-02-21 03:10:49,710 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 110 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=53, Invalid=289, Unknown=0, NotChecked=0, Total=342 [2022-02-21 03:10:49,710 INFO L933 BasicCegarLoop]: 113 mSDtfsCounter, 45 mSDsluCounter, 550 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 663 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:49,710 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 663 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:49,711 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 444 states. [2022-02-21 03:10:49,976 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 444 to 407. [2022-02-21 03:10:49,976 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:49,977 INFO L82 GeneralOperation]: Start isEquivalent. First operand 444 states. Second operand has 407 states, 383 states have (on average 1.2584856396866841) internal successors, (482), 392 states have internal predecessors, (482), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:49,977 INFO L74 IsIncluded]: Start isIncluded. First operand 444 states. Second operand has 407 states, 383 states have (on average 1.2584856396866841) internal successors, (482), 392 states have internal predecessors, (482), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:49,977 INFO L87 Difference]: Start difference. First operand 444 states. Second operand has 407 states, 383 states have (on average 1.2584856396866841) internal successors, (482), 392 states have internal predecessors, (482), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:49,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:49,983 INFO L93 Difference]: Finished difference Result 444 states and 537 transitions. [2022-02-21 03:10:49,984 INFO L276 IsEmpty]: Start isEmpty. Operand 444 states and 537 transitions. [2022-02-21 03:10:49,984 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:49,984 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:49,984 INFO L74 IsIncluded]: Start isIncluded. First operand has 407 states, 383 states have (on average 1.2584856396866841) internal successors, (482), 392 states have internal predecessors, (482), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) Second operand 444 states. [2022-02-21 03:10:49,984 INFO L87 Difference]: Start difference. First operand has 407 states, 383 states have (on average 1.2584856396866841) internal successors, (482), 392 states have internal predecessors, (482), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) Second operand 444 states. [2022-02-21 03:10:49,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:49,991 INFO L93 Difference]: Finished difference Result 444 states and 537 transitions. [2022-02-21 03:10:49,991 INFO L276 IsEmpty]: Start isEmpty. Operand 444 states and 537 transitions. [2022-02-21 03:10:49,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:49,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:49,991 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:49,991 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:49,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 407 states, 383 states have (on average 1.2584856396866841) internal successors, (482), 392 states have internal predecessors, (482), 5 states have call successors, (5), 4 states have call predecessors, (5), 7 states have return successors, (10), 10 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-21 03:10:49,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 407 states to 407 states and 497 transitions. [2022-02-21 03:10:49,998 INFO L78 Accepts]: Start accepts. Automaton has 407 states and 497 transitions. Word has length 107 [2022-02-21 03:10:49,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:49,998 INFO L470 AbstractCegarLoop]: Abstraction has 407 states and 497 transitions. [2022-02-21 03:10:49,998 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 8.285714285714286) internal successors, (58), 6 states have internal predecessors, (58), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-21 03:10:49,998 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 497 transitions. [2022-02-21 03:10:49,999 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-02-21 03:10:49,999 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:49,999 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 6, 4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:10:50,019 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:50,216 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-02-21 03:10:50,216 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr4ASSERT_VIOLATIONINTEGER_OVERFLOW === [base2fltErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, base2fltErr2ASSERT_VIOLATIONINTEGER_OVERFLOW (and 19 more)] === [2022-02-21 03:10:50,216 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:50,216 INFO L85 PathProgramCache]: Analyzing trace with hash -573055488, now seen corresponding path program 1 times [2022-02-21 03:10:50,216 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:50,217 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2139671434] [2022-02-21 03:10:50,217 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:50,217 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:50,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,261 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:50,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,264 INFO L290 TraceCheckUtils]: 0: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {53732#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {53732#true} is VALID [2022-02-21 03:10:50,264 INFO L290 TraceCheckUtils]: 2: Hoare triple {53732#true} #res := ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,264 INFO L290 TraceCheckUtils]: 3: Hoare triple {53732#true} assume true; {53732#true} is VALID [2022-02-21 03:10:50,264 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {53732#true} {53732#true} #377#return; {53732#true} is VALID [2022-02-21 03:10:50,265 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:50,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,404 INFO L290 TraceCheckUtils]: 0: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,405 INFO L290 TraceCheckUtils]: 3: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,405 INFO L290 TraceCheckUtils]: 4: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,406 INFO L290 TraceCheckUtils]: 5: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,406 INFO L290 TraceCheckUtils]: 6: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,408 INFO L290 TraceCheckUtils]: 7: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,408 INFO L290 TraceCheckUtils]: 8: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,408 INFO L290 TraceCheckUtils]: 9: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,409 INFO L290 TraceCheckUtils]: 10: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,410 INFO L290 TraceCheckUtils]: 11: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,410 INFO L290 TraceCheckUtils]: 12: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,411 INFO L290 TraceCheckUtils]: 14: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,412 INFO L290 TraceCheckUtils]: 15: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,413 INFO L290 TraceCheckUtils]: 16: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,413 INFO L290 TraceCheckUtils]: 17: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,413 INFO L290 TraceCheckUtils]: 18: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,414 INFO L290 TraceCheckUtils]: 19: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,414 INFO L290 TraceCheckUtils]: 21: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,415 INFO L290 TraceCheckUtils]: 22: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,416 INFO L290 TraceCheckUtils]: 23: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,417 INFO L290 TraceCheckUtils]: 25: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,417 INFO L290 TraceCheckUtils]: 26: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,418 INFO L290 TraceCheckUtils]: 27: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,418 INFO L290 TraceCheckUtils]: 28: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,419 INFO L290 TraceCheckUtils]: 29: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,419 INFO L290 TraceCheckUtils]: 30: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,420 INFO L290 TraceCheckUtils]: 31: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,420 INFO L290 TraceCheckUtils]: 32: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,420 INFO L290 TraceCheckUtils]: 33: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !false; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,421 INFO L290 TraceCheckUtils]: 34: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,421 INFO L290 TraceCheckUtils]: 35: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,422 INFO L290 TraceCheckUtils]: 36: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53816#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,422 INFO L290 TraceCheckUtils]: 37: Hoare triple {53816#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,423 INFO L290 TraceCheckUtils]: 38: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,423 INFO L290 TraceCheckUtils]: 39: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,423 INFO L290 TraceCheckUtils]: 40: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,424 INFO L290 TraceCheckUtils]: 41: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,424 INFO L290 TraceCheckUtils]: 42: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,424 INFO L290 TraceCheckUtils]: 43: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,425 INFO L290 TraceCheckUtils]: 44: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,425 INFO L290 TraceCheckUtils]: 45: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,425 INFO L290 TraceCheckUtils]: 46: Hoare triple {53817#(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; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,425 INFO L290 TraceCheckUtils]: 47: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,426 INFO L290 TraceCheckUtils]: 48: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,426 INFO L290 TraceCheckUtils]: 49: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume true; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,427 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {53817#(not (= |base2flt_#in~m| 1))} {53732#true} #379#return; {53733#false} is VALID [2022-02-21 03:10:50,427 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 62 [2022-02-21 03:10:50,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 0: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {53732#true} assume !(0 == ~m % 4294967296); {53732#true} is VALID [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 2: Hoare triple {53732#true} assume !(~m % 4294967296 < 16777216); {53732#true} is VALID [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 3: Hoare triple {53732#true} assume !false; {53732#true} is VALID [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 4: Hoare triple {53732#true} assume ~m % 4294967296 >= 33554432; {53732#true} is VALID [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 5: Hoare triple {53732#true} assume ~e >= 127;~__retres4~0 := 4294967295; {53732#true} is VALID [2022-02-21 03:10:50,431 INFO L290 TraceCheckUtils]: 6: Hoare triple {53732#true} #res := ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,432 INFO L290 TraceCheckUtils]: 7: Hoare triple {53732#true} assume true; {53732#true} is VALID [2022-02-21 03:10:50,432 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {53732#true} {53733#false} #381#return; {53733#false} is VALID [2022-02-21 03:10:50,432 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 73 [2022-02-21 03:10:50,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,435 INFO L290 TraceCheckUtils]: 0: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,435 INFO L290 TraceCheckUtils]: 1: Hoare triple {53732#true} assume !(0 == ~m % 4294967296); {53732#true} is VALID [2022-02-21 03:10:50,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {53732#true} assume !(~m % 4294967296 < 16777216); {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 3: Hoare triple {53732#true} assume !false; {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 4: Hoare triple {53732#true} assume ~m % 4294967296 >= 33554432; {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {53732#true} assume ~e >= 127;~__retres4~0 := 4294967295; {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 6: Hoare triple {53732#true} #res := ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {53732#true} assume true; {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {53732#true} {53733#false} #383#return; {53733#false} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 0: Hoare triple {53732#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(22, 2);call #Ultimate.allocInit(12, 3); {53732#true} is VALID [2022-02-21 03:10:50,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {53732#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; {53732#true} is VALID [2022-02-21 03:10:50,437 INFO L272 TraceCheckUtils]: 2: Hoare triple {53732#true} call main_#t~ret22#1 := base2flt(0, 0); {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:50,437 INFO L290 TraceCheckUtils]: 3: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,437 INFO L290 TraceCheckUtils]: 4: Hoare triple {53732#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {53732#true} is VALID [2022-02-21 03:10:50,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {53732#true} #res := ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,438 INFO L290 TraceCheckUtils]: 6: Hoare triple {53732#true} assume true; {53732#true} is VALID [2022-02-21 03:10:50,438 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {53732#true} {53732#true} #377#return; {53732#true} is VALID [2022-02-21 03:10:50,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {53732#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {53732#true} is VALID [2022-02-21 03:10:50,438 INFO L272 TraceCheckUtils]: 9: Hoare triple {53732#true} call main_#t~ret23#1 := base2flt(1, 0); {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:50,439 INFO L290 TraceCheckUtils]: 10: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,439 INFO L290 TraceCheckUtils]: 12: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,440 INFO L290 TraceCheckUtils]: 15: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:50,441 INFO L290 TraceCheckUtils]: 16: Hoare triple {53809#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,442 INFO L290 TraceCheckUtils]: 17: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,443 INFO L290 TraceCheckUtils]: 18: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,443 INFO L290 TraceCheckUtils]: 19: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,444 INFO L290 TraceCheckUtils]: 21: Hoare triple {53810#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,445 INFO L290 TraceCheckUtils]: 22: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,445 INFO L290 TraceCheckUtils]: 23: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,446 INFO L290 TraceCheckUtils]: 25: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {53811#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,447 INFO L290 TraceCheckUtils]: 27: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,447 INFO L290 TraceCheckUtils]: 28: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,448 INFO L290 TraceCheckUtils]: 29: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,448 INFO L290 TraceCheckUtils]: 30: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,449 INFO L290 TraceCheckUtils]: 31: Hoare triple {53812#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,449 INFO L290 TraceCheckUtils]: 32: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,450 INFO L290 TraceCheckUtils]: 33: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,450 INFO L290 TraceCheckUtils]: 34: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,453 INFO L290 TraceCheckUtils]: 35: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,454 INFO L290 TraceCheckUtils]: 36: Hoare triple {53813#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,455 INFO L290 TraceCheckUtils]: 37: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,455 INFO L290 TraceCheckUtils]: 38: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,456 INFO L290 TraceCheckUtils]: 39: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,456 INFO L290 TraceCheckUtils]: 40: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,457 INFO L290 TraceCheckUtils]: 41: Hoare triple {53814#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,457 INFO L290 TraceCheckUtils]: 42: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,457 INFO L290 TraceCheckUtils]: 43: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !false; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,458 INFO L290 TraceCheckUtils]: 44: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,458 INFO L290 TraceCheckUtils]: 45: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,459 INFO L290 TraceCheckUtils]: 46: Hoare triple {53815#(or (and (<= 64 base2flt_~m) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {53816#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:50,459 INFO L290 TraceCheckUtils]: 47: Hoare triple {53816#(or (and (<= base2flt_~m 128) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,460 INFO L290 TraceCheckUtils]: 48: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,460 INFO L290 TraceCheckUtils]: 49: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,460 INFO L290 TraceCheckUtils]: 50: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,461 INFO L290 TraceCheckUtils]: 51: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,461 INFO L290 TraceCheckUtils]: 52: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,461 INFO L290 TraceCheckUtils]: 53: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,461 INFO L290 TraceCheckUtils]: 54: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,462 INFO L290 TraceCheckUtils]: 55: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,462 INFO L290 TraceCheckUtils]: 56: Hoare triple {53817#(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; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,462 INFO L290 TraceCheckUtils]: 57: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,463 INFO L290 TraceCheckUtils]: 58: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,463 INFO L290 TraceCheckUtils]: 59: Hoare triple {53817#(not (= |base2flt_#in~m| 1))} assume true; {53817#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:50,464 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {53817#(not (= |base2flt_#in~m| 1))} {53732#true} #379#return; {53733#false} is VALID [2022-02-21 03:10:50,464 INFO L290 TraceCheckUtils]: 61: Hoare triple {53733#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {53733#false} is VALID [2022-02-21 03:10:50,464 INFO L272 TraceCheckUtils]: 62: Hoare triple {53733#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:50,464 INFO L290 TraceCheckUtils]: 63: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,464 INFO L290 TraceCheckUtils]: 64: Hoare triple {53732#true} assume !(0 == ~m % 4294967296); {53732#true} is VALID [2022-02-21 03:10:50,464 INFO L290 TraceCheckUtils]: 65: Hoare triple {53732#true} assume !(~m % 4294967296 < 16777216); {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 66: Hoare triple {53732#true} assume !false; {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 67: Hoare triple {53732#true} assume ~m % 4294967296 >= 33554432; {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 68: Hoare triple {53732#true} assume ~e >= 127;~__retres4~0 := 4294967295; {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 69: Hoare triple {53732#true} #res := ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 70: Hoare triple {53732#true} assume true; {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {53732#true} {53733#false} #381#return; {53733#false} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 72: Hoare triple {53733#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {53733#false} is VALID [2022-02-21 03:10:50,465 INFO L272 TraceCheckUtils]: 73: Hoare triple {53733#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 74: Hoare triple {53808#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,465 INFO L290 TraceCheckUtils]: 75: Hoare triple {53732#true} assume !(0 == ~m % 4294967296); {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 76: Hoare triple {53732#true} assume !(~m % 4294967296 < 16777216); {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 77: Hoare triple {53732#true} assume !false; {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 78: Hoare triple {53732#true} assume ~m % 4294967296 >= 33554432; {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 79: Hoare triple {53732#true} assume ~e >= 127;~__retres4~0 := 4294967295; {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 80: Hoare triple {53732#true} #res := ~__retres4~0; {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 81: Hoare triple {53732#true} assume true; {53732#true} is VALID [2022-02-21 03:10:50,466 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {53732#true} {53733#false} #383#return; {53733#false} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 83: Hoare triple {53733#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1;assume { :begin_inline_mulflt } true;mulflt_#in~a#1, mulflt_#in~b#1 := main_~a~0#1, main_~b~0#1;havoc mulflt_#res#1;havoc mulflt_#t~nondet12#1, mulflt_#t~nondet13#1, mulflt_#t~nondet14#1, mulflt_#t~nondet15#1, mulflt_#t~nondet16#1, mulflt_#t~nondet17#1, mulflt_~a#1, mulflt_~b#1, mulflt_~res~2#1, mulflt_~ma~1#1, mulflt_~mb~1#1, mulflt_~accu~0#1, mulflt_~ea~1#1, mulflt_~eb~1#1, mulflt_~tmp~1#1, mulflt_~__retres10~1#1;mulflt_~a#1 := mulflt_#in~a#1;mulflt_~b#1 := mulflt_#in~b#1;havoc mulflt_~res~2#1;havoc mulflt_~ma~1#1;havoc mulflt_~mb~1#1;havoc mulflt_~accu~0#1;havoc mulflt_~ea~1#1;havoc mulflt_~eb~1#1;havoc mulflt_~tmp~1#1;havoc mulflt_~__retres10~1#1; {53733#false} is VALID [2022-02-21 03:10:50,466 INFO L290 TraceCheckUtils]: 84: Hoare triple {53733#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 85: Hoare triple {53733#false} assume !(0 == mulflt_~b#1 % 4294967296); {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 86: Hoare triple {53733#false} assume !(0 == mulflt_~a#1); {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 87: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 88: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 89: Hoare triple {53733#false} assume mulflt_~a#1 >= 0;abs_171 := (if mulflt_~a#1 < 16777215 then mulflt_~a#1 else 16777215);assume mulflt_~a#1 >= 0;assume mulflt_~ma~1#1 < abs_171; {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 90: Hoare triple {53733#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 91: Hoare triple {53733#false} assume (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~ea~1#1 := (if mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~a#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {53733#false} is VALID [2022-02-21 03:10:50,467 INFO L290 TraceCheckUtils]: 92: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 93: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 94: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 95: Hoare triple {53733#false} assume !(mulflt_~ma~1#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet13#1;havoc mulflt_#t~nondet13#1; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 96: Hoare triple {53733#false} assume !(0 == mulflt_~b#1); {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 97: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 98: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 99: Hoare triple {53733#false} assume mulflt_~b#1 >= 0;abs_174 := (if mulflt_~b#1 < 16777215 then mulflt_~b#1 else 16777215);assume mulflt_~b#1 >= 0;assume mulflt_~mb~1#1 < abs_174; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 100: Hoare triple {53733#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 <= 2147483647; {53733#false} is VALID [2022-02-21 03:10:50,468 INFO L290 TraceCheckUtils]: 101: Hoare triple {53733#false} assume (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128 >= -2147483648;mulflt_~eb~1#1 := (if mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 <= 2147483647 then mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 else mulflt_~b#1 / 16777216 % 4294967296 % 4294967296 - 4294967296) - 128; {53733#false} is VALID [2022-02-21 03:10:50,469 INFO L290 TraceCheckUtils]: 102: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,469 INFO L290 TraceCheckUtils]: 103: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,469 INFO L290 TraceCheckUtils]: 104: Hoare triple {53733#false} assume !false; {53733#false} is VALID [2022-02-21 03:10:50,469 INFO L290 TraceCheckUtils]: 105: Hoare triple {53733#false} assume !(mulflt_~mb~1#1 >= 0);mulflt_~mb~1#1 := mulflt_#t~nondet15#1;havoc mulflt_#t~nondet15#1; {53733#false} is VALID [2022-02-21 03:10:50,469 INFO L290 TraceCheckUtils]: 106: Hoare triple {53733#false} assume !(mulflt_~ea~1#1 + mulflt_~eb~1#1 <= 2147483647); {53733#false} is VALID [2022-02-21 03:10:50,469 INFO L134 CoverageAnalysis]: Checked inductivity of 141 backedges. 4 proven. 115 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:50,470 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:50,470 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2139671434] [2022-02-21 03:10:50,470 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2139671434] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:50,470 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1986404248] [2022-02-21 03:10:50,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:50,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:50,470 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:50,471 INFO L229 MonitoredProcess]: Starting monitored process 19 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:50,472 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-02-21 03:10:50,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,653 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-21 03:10:50,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:50,680 INFO L286 TraceCheckSpWp]: Computing forward predicates...