./Ultimate.py --spec ../sv-benchmarks/c/properties/no-overflow.prp --file ../sv-benchmarks/c/bitvector/soft_float_2a.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_2a.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 f330893f1140a32f6e6dacd6cc5115391759545d59ea17334f6f3b644ed5a51c --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-21 03:09:50,440 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-21 03:09:50,442 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-21 03:09:50,465 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-21 03:09:50,466 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-21 03:09:50,467 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-21 03:09:50,468 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-21 03:09:50,470 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-21 03:09:50,472 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-21 03:09:50,472 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-21 03:09:50,473 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-21 03:09:50,474 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-21 03:09:50,475 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-21 03:09:50,476 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-21 03:09:50,477 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-21 03:09:50,478 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-21 03:09:50,478 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-21 03:09:50,479 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-21 03:09:50,481 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-21 03:09:50,482 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-21 03:09:50,484 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-21 03:09:50,486 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-21 03:09:50,487 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-21 03:09:50,487 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-21 03:09:50,490 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-21 03:09:50,490 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-21 03:09:50,490 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-21 03:09:50,491 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-21 03:09:50,492 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-21 03:09:50,492 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-21 03:09:50,493 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-21 03:09:50,493 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-21 03:09:50,494 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-21 03:09:50,495 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-21 03:09:50,496 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-21 03:09:50,496 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-21 03:09:50,497 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-21 03:09:50,497 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-21 03:09:50,497 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-21 03:09:50,498 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-21 03:09:50,499 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-21 03:09:50,501 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:50,529 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-21 03:09:50,532 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-21 03:09:50,532 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-21 03:09:50,533 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-21 03:09:50,534 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-21 03:09:50,534 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-21 03:09:50,534 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-21 03:09:50,535 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-21 03:09:50,535 INFO L138 SettingsManager]: * Use SBE=true [2022-02-21 03:09:50,535 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-21 03:09:50,536 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-21 03:09:50,536 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-21 03:09:50,536 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-21 03:09:50,537 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-21 03:09:50,537 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-21 03:09:50,537 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-21 03:09:50,537 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-21 03:09:50,537 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-21 03:09:50,538 INFO L138 SettingsManager]: * Check absence of signed integer overflows=true [2022-02-21 03:09:50,539 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-21 03:09:50,539 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-21 03:09:50,540 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-21 03:09:50,541 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-21 03:09:50,543 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-21 03:09:50,543 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-21 03:09:50,543 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-21 03:09:50,543 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:09:50,544 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-21 03:09:50,544 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-21 03:09:50,544 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-21 03:09:50,544 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-21 03:09:50,544 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-21 03:09:50,544 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-21 03:09:50,544 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 -> f330893f1140a32f6e6dacd6cc5115391759545d59ea17334f6f3b644ed5a51c [2022-02-21 03:09:50,789 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-21 03:09:50,815 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-21 03:09:50,817 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-21 03:09:50,817 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-21 03:09:50,818 INFO L275 PluginConnector]: CDTParser initialized [2022-02-21 03:09:50,819 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/bitvector/soft_float_2a.c.cil.c [2022-02-21 03:09:50,886 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d6e4abc0c/d7d85d80fa7347bcb7c467fdd67aa188/FLAGc22f8b614 [2022-02-21 03:09:51,239 INFO L306 CDTParser]: Found 1 translation units. [2022-02-21 03:09:51,239 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/bitvector/soft_float_2a.c.cil.c [2022-02-21 03:09:51,246 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d6e4abc0c/d7d85d80fa7347bcb7c467fdd67aa188/FLAGc22f8b614 [2022-02-21 03:09:51,630 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d6e4abc0c/d7d85d80fa7347bcb7c467fdd67aa188 [2022-02-21 03:09:51,632 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-21 03:09:51,637 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-21 03:09:51,641 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-21 03:09:51,641 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-21 03:09:51,643 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-21 03:09:51,645 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:09:51" (1/1) ... [2022-02-21 03:09:51,646 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4c67ac7c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:51, skipping insertion in model container [2022-02-21 03:09:51,646 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.02 03:09:51" (1/1) ... [2022-02-21 03:09:51,652 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-21 03:09:51,674 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-21 03:09:51,830 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_2a.c.cil.c[728,741] [2022-02-21 03:09:51,909 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:09:51,924 INFO L203 MainTranslator]: Completed pre-run [2022-02-21 03:09:51,938 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_2a.c.cil.c[728,741] [2022-02-21 03:09:51,975 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-21 03:09:51,989 INFO L208 MainTranslator]: Completed translation [2022-02-21 03:09:51,989 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:51 WrapperNode [2022-02-21 03:09:51,989 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-21 03:09:51,990 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-21 03:09:51,990 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-21 03:09:51,990 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-21 03:09:51,996 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:51" (1/1) ... [2022-02-21 03:09:52,010 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:51" (1/1) ... [2022-02-21 03:09:52,051 INFO L137 Inliner]: procedures = 17, calls = 15, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 192 [2022-02-21 03:09:52,052 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-21 03:09:52,053 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-21 03:09:52,053 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-21 03:09:52,053 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-21 03:09:52,061 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:51" (1/1) ... [2022-02-21 03:09:52,061 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:51" (1/1) ... [2022-02-21 03:09:52,064 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:51" (1/1) ... [2022-02-21 03:09:52,064 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:51" (1/1) ... [2022-02-21 03:09:52,071 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:51" (1/1) ... [2022-02-21 03:09:52,077 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:51" (1/1) ... [2022-02-21 03:09:52,079 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:51" (1/1) ... [2022-02-21 03:09:52,082 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-21 03:09:52,097 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-21 03:09:52,098 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-21 03:09:52,098 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-21 03:09:52,099 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:51" (1/1) ... [2022-02-21 03:09:52,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-21 03:09:52,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:52,132 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:52,135 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:52,165 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-21 03:09:52,165 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-21 03:09:52,165 INFO L130 BoogieDeclarations]: Found specification of procedure base2flt [2022-02-21 03:09:52,165 INFO L138 BoogieDeclarations]: Found implementation of procedure base2flt [2022-02-21 03:09:52,166 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-21 03:09:52,166 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-21 03:09:52,166 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-21 03:09:52,167 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-21 03:09:52,233 INFO L234 CfgBuilder]: Building ICFG [2022-02-21 03:09:52,234 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-21 03:09:52,830 INFO L275 CfgBuilder]: Performing block encoding [2022-02-21 03:09:52,843 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-21 03:09:52,844 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-21 03:09:52,848 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:09:52 BoogieIcfgContainer [2022-02-21 03:09:52,848 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-21 03:09:52,849 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-21 03:09:52,849 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-21 03:09:52,853 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-21 03:09:52,854 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 21.02 03:09:51" (1/3) ... [2022-02-21 03:09:52,855 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69aa18ab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:09:52, skipping insertion in model container [2022-02-21 03:09:52,855 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.02 03:09:51" (2/3) ... [2022-02-21 03:09:52,855 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69aa18ab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.02 03:09:52, skipping insertion in model container [2022-02-21 03:09:52,856 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.02 03:09:52" (3/3) ... [2022-02-21 03:09:52,860 INFO L111 eAbstractionObserver]: Analyzing ICFG soft_float_2a.c.cil.c [2022-02-21 03:09:52,866 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-21 03:09:52,866 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 22 error locations. [2022-02-21 03:09:52,912 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-21 03:09:52,920 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:52,922 INFO L340 AbstractCegarLoop]: Starting to check reachability of 22 error locations. [2022-02-21 03:09:52,955 INFO L276 IsEmpty]: Start isEmpty. Operand has 128 states, 98 states have (on average 1.7857142857142858) internal successors, (175), 121 states have internal predecessors, (175), 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:52,960 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:09:52,960 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:52,960 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:52,961 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:52,970 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:52,970 INFO L85 PathProgramCache]: Analyzing trace with hash -650612023, now seen corresponding path program 1 times [2022-02-21 03:09:52,979 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:52,980 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [463102673] [2022-02-21 03:09:52,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:52,981 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:53,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:53,152 INFO L290 TraceCheckUtils]: 0: Hoare triple {131#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); {131#true} is VALID [2022-02-21 03:09:53,152 INFO L290 TraceCheckUtils]: 1: Hoare triple {131#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {131#true} is VALID [2022-02-21 03:09:53,153 INFO L272 TraceCheckUtils]: 2: Hoare triple {131#true} call main_#t~ret22#1 := base2flt(0, 0); {131#true} is VALID [2022-02-21 03:09:53,153 INFO L290 TraceCheckUtils]: 3: Hoare triple {131#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {131#true} is VALID [2022-02-21 03:09:53,154 INFO L290 TraceCheckUtils]: 4: Hoare triple {131#true} assume !(0 == ~m % 4294967296); {131#true} is VALID [2022-02-21 03:09:53,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {131#true} assume !(~m % 4294967296 < 16777216); {131#true} is VALID [2022-02-21 03:09:53,155 INFO L290 TraceCheckUtils]: 6: Hoare triple {131#true} assume !true; {132#false} is VALID [2022-02-21 03:09:53,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {132#false} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {132#false} is VALID [2022-02-21 03:09:53,155 INFO L290 TraceCheckUtils]: 8: Hoare triple {132#false} assume !(128 + ~e <= 2147483647); {132#false} is VALID [2022-02-21 03:09:53,156 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:53,157 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:53,158 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [463102673] [2022-02-21 03:09:53,158 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [463102673] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:53,159 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:53,160 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-21 03:09:53,163 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [867064777] [2022-02-21 03:09:53,164 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:53,170 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:53,172 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:53,175 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:53,188 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:53,189 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-21 03:09:53,189 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:53,219 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-21 03:09:53,220 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-21 03:09:53,225 INFO L87 Difference]: Start difference. First operand has 128 states, 98 states have (on average 1.7857142857142858) internal successors, (175), 121 states have internal predecessors, (175), 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:53,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:53,408 INFO L93 Difference]: Finished difference Result 251 states and 371 transitions. [2022-02-21 03:09:53,408 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-21 03:09:53,408 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:53,409 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:53,410 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:53,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 371 transitions. [2022-02-21 03:09:53,423 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:53,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 371 transitions. [2022-02-21 03:09:53,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 371 transitions. [2022-02-21 03:09:53,777 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 371 edges. 371 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:53,787 INFO L225 Difference]: With dead ends: 251 [2022-02-21 03:09:53,787 INFO L226 Difference]: Without dead ends: 105 [2022-02-21 03:09:53,791 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:53,794 INFO L933 BasicCegarLoop]: 168 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, 168 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:53,795 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 168 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:53,809 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states. [2022-02-21 03:09:53,831 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 105. [2022-02-21 03:09:53,831 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:53,836 INFO L82 GeneralOperation]: Start isEquivalent. First operand 105 states. Second operand has 105 states, 80 states have (on average 1.5875) internal successors, (127), 99 states have internal predecessors, (127), 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:53,839 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand has 105 states, 80 states have (on average 1.5875) internal successors, (127), 99 states have internal predecessors, (127), 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:53,840 INFO L87 Difference]: Start difference. First operand 105 states. Second operand has 105 states, 80 states have (on average 1.5875) internal successors, (127), 99 states have internal predecessors, (127), 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:53,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:53,870 INFO L93 Difference]: Finished difference Result 105 states and 135 transitions. [2022-02-21 03:09:53,870 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 135 transitions. [2022-02-21 03:09:53,872 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:53,872 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:53,874 INFO L74 IsIncluded]: Start isIncluded. First operand has 105 states, 80 states have (on average 1.5875) internal successors, (127), 99 states have internal predecessors, (127), 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 105 states. [2022-02-21 03:09:53,874 INFO L87 Difference]: Start difference. First operand has 105 states, 80 states have (on average 1.5875) internal successors, (127), 99 states have internal predecessors, (127), 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 105 states. [2022-02-21 03:09:53,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:53,884 INFO L93 Difference]: Finished difference Result 105 states and 135 transitions. [2022-02-21 03:09:53,884 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 135 transitions. [2022-02-21 03:09:53,888 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:53,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:53,890 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:53,891 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:53,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 105 states, 80 states have (on average 1.5875) internal successors, (127), 99 states have internal predecessors, (127), 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:53,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 135 transitions. [2022-02-21 03:09:53,900 INFO L78 Accepts]: Start accepts. Automaton has 105 states and 135 transitions. Word has length 9 [2022-02-21 03:09:53,900 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:53,901 INFO L470 AbstractCegarLoop]: Abstraction has 105 states and 135 transitions. [2022-02-21 03:09:53,901 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:53,902 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 135 transitions. [2022-02-21 03:09:53,902 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-21 03:09:53,902 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:53,903 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:53,903 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-21 03:09:53,904 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:53,908 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:53,908 INFO L85 PathProgramCache]: Analyzing trace with hash -651553371, now seen corresponding path program 1 times [2022-02-21 03:09:53,910 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:53,911 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2112143731] [2022-02-21 03:09:53,911 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:53,911 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:53,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:53,979 INFO L290 TraceCheckUtils]: 0: Hoare triple {737#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); {737#true} is VALID [2022-02-21 03:09:53,980 INFO L290 TraceCheckUtils]: 1: Hoare triple {737#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {737#true} is VALID [2022-02-21 03:09:53,980 INFO L272 TraceCheckUtils]: 2: Hoare triple {737#true} call main_#t~ret22#1 := base2flt(0, 0); {739#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:53,981 INFO L290 TraceCheckUtils]: 3: Hoare triple {739#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {740#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:53,982 INFO L290 TraceCheckUtils]: 4: Hoare triple {740#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {740#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:53,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {740#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {740#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:53,983 INFO L290 TraceCheckUtils]: 6: Hoare triple {740#(= base2flt_~e 0)} assume !false; {740#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:53,983 INFO L290 TraceCheckUtils]: 7: Hoare triple {740#(= base2flt_~e 0)} assume !(~e <= -128); {740#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:53,984 INFO L290 TraceCheckUtils]: 8: Hoare triple {740#(= base2flt_~e 0)} assume !(~e - 1 <= 2147483647); {738#false} is VALID [2022-02-21 03:09:53,984 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:53,984 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:53,984 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2112143731] [2022-02-21 03:09:53,985 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2112143731] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:53,985 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:53,985 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-21 03:09:53,985 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1987066239] [2022-02-21 03:09:53,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:53,987 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:53,987 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:53,987 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:54,000 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:54,001 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:54,001 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:54,002 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:54,002 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:09:54,002 INFO L87 Difference]: Start difference. First operand 105 states and 135 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:54,362 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:54,362 INFO L93 Difference]: Finished difference Result 269 states and 363 transitions. [2022-02-21 03:09:54,362 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:09:54,363 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:54,363 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:54,363 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:54,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 363 transitions. [2022-02-21 03:09:54,368 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:54,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 363 transitions. [2022-02-21 03:09:54,373 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 363 transitions. [2022-02-21 03:09:54,671 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 363 edges. 363 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:54,678 INFO L225 Difference]: With dead ends: 269 [2022-02-21 03:09:54,678 INFO L226 Difference]: Without dead ends: 167 [2022-02-21 03:09:54,679 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:54,680 INFO L933 BasicCegarLoop]: 117 mSDtfsCounter, 106 mSDsluCounter, 232 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 106 SdHoareTripleChecker+Valid, 349 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:54,681 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [106 Valid, 349 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:54,682 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 167 states. [2022-02-21 03:09:54,690 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 167 to 154. [2022-02-21 03:09:54,690 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:54,691 INFO L82 GeneralOperation]: Start isEquivalent. First operand 167 states. Second operand has 154 states, 128 states have (on average 1.578125) internal successors, (202), 147 states have internal predecessors, (202), 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:54,691 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand has 154 states, 128 states have (on average 1.578125) internal successors, (202), 147 states have internal predecessors, (202), 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:54,692 INFO L87 Difference]: Start difference. First operand 167 states. Second operand has 154 states, 128 states have (on average 1.578125) internal successors, (202), 147 states have internal predecessors, (202), 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:54,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:54,698 INFO L93 Difference]: Finished difference Result 167 states and 217 transitions. [2022-02-21 03:09:54,698 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 217 transitions. [2022-02-21 03:09:54,699 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:54,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:54,700 INFO L74 IsIncluded]: Start isIncluded. First operand has 154 states, 128 states have (on average 1.578125) internal successors, (202), 147 states have internal predecessors, (202), 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 167 states. [2022-02-21 03:09:54,701 INFO L87 Difference]: Start difference. First operand has 154 states, 128 states have (on average 1.578125) internal successors, (202), 147 states have internal predecessors, (202), 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 167 states. [2022-02-21 03:09:54,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:54,707 INFO L93 Difference]: Finished difference Result 167 states and 217 transitions. [2022-02-21 03:09:54,707 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 217 transitions. [2022-02-21 03:09:54,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:54,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:54,708 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:54,709 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:54,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 128 states have (on average 1.578125) internal successors, (202), 147 states have internal predecessors, (202), 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:54,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 210 transitions. [2022-02-21 03:09:54,715 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 210 transitions. Word has length 9 [2022-02-21 03:09:54,715 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:54,715 INFO L470 AbstractCegarLoop]: Abstraction has 154 states and 210 transitions. [2022-02-21 03:09:54,716 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:54,716 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 210 transitions. [2022-02-21 03:09:54,716 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-21 03:09:54,716 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:54,717 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:54,717 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-21 03:09:54,717 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:54,718 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:54,718 INFO L85 PathProgramCache]: Analyzing trace with hash 1699191166, now seen corresponding path program 1 times [2022-02-21 03:09:54,718 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:54,718 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [639839836] [2022-02-21 03:09:54,718 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:54,719 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:54,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:54,779 INFO L290 TraceCheckUtils]: 0: Hoare triple {1545#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); {1545#true} is VALID [2022-02-21 03:09:54,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {1545#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {1545#true} is VALID [2022-02-21 03:09:54,780 INFO L272 TraceCheckUtils]: 2: Hoare triple {1545#true} call main_#t~ret22#1 := base2flt(0, 0); {1547#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:54,781 INFO L290 TraceCheckUtils]: 3: Hoare triple {1547#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {1548#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:54,781 INFO L290 TraceCheckUtils]: 4: Hoare triple {1548#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {1548#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:54,782 INFO L290 TraceCheckUtils]: 5: Hoare triple {1548#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {1548#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:54,782 INFO L290 TraceCheckUtils]: 6: Hoare triple {1548#(= base2flt_~e 0)} assume !false; {1548#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:54,783 INFO L290 TraceCheckUtils]: 7: Hoare triple {1548#(= base2flt_~e 0)} assume !(~e <= -128); {1548#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:54,783 INFO L290 TraceCheckUtils]: 8: Hoare triple {1548#(= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {1548#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:54,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {1548#(= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {1549#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:54,784 INFO L290 TraceCheckUtils]: 10: Hoare triple {1549#(<= (+ base2flt_~e 1) 0)} assume !(~m % 4294967296 < 16777216); {1549#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:54,785 INFO L290 TraceCheckUtils]: 11: Hoare triple {1549#(<= (+ base2flt_~e 1) 0)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {1549#(<= (+ base2flt_~e 1) 0)} is VALID [2022-02-21 03:09:54,785 INFO L290 TraceCheckUtils]: 12: Hoare triple {1549#(<= (+ base2flt_~e 1) 0)} assume !(128 + ~e <= 2147483647); {1546#false} is VALID [2022-02-21 03:09:54,785 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:54,786 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:54,786 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [639839836] [2022-02-21 03:09:54,786 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [639839836] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:54,786 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:54,786 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-21 03:09:54,786 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [935151339] [2022-02-21 03:09:54,786 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:54,787 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:54,787 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:54,787 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:54,798 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:54,798 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:54,798 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:54,798 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:54,799 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-21 03:09:54,799 INFO L87 Difference]: Start difference. First operand 154 states and 210 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:55,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:55,250 INFO L93 Difference]: Finished difference Result 189 states and 251 transitions. [2022-02-21 03:09:55,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:09:55,250 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:55,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:55,250 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:55,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 251 transitions. [2022-02-21 03:09:55,256 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:55,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 251 transitions. [2022-02-21 03:09:55,262 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 251 transitions. [2022-02-21 03:09:55,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 251 edges. 251 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:55,475 INFO L225 Difference]: With dead ends: 189 [2022-02-21 03:09:55,476 INFO L226 Difference]: Without dead ends: 186 [2022-02-21 03:09:55,476 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:55,477 INFO L933 BasicCegarLoop]: 124 mSDtfsCounter, 161 mSDsluCounter, 344 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 161 SdHoareTripleChecker+Valid, 468 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:55,477 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [161 Valid, 468 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:55,478 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 186 states. [2022-02-21 03:09:55,500 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 186 to 161. [2022-02-21 03:09:55,501 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:55,502 INFO L82 GeneralOperation]: Start isEquivalent. First operand 186 states. Second operand has 161 states, 135 states have (on average 1.5777777777777777) internal successors, (213), 154 states have internal predecessors, (213), 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:55,503 INFO L74 IsIncluded]: Start isIncluded. First operand 186 states. Second operand has 161 states, 135 states have (on average 1.5777777777777777) internal successors, (213), 154 states have internal predecessors, (213), 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:55,507 INFO L87 Difference]: Start difference. First operand 186 states. Second operand has 161 states, 135 states have (on average 1.5777777777777777) internal successors, (213), 154 states have internal predecessors, (213), 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:55,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:55,514 INFO L93 Difference]: Finished difference Result 186 states and 248 transitions. [2022-02-21 03:09:55,514 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 248 transitions. [2022-02-21 03:09:55,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:55,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:55,516 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 135 states have (on average 1.5777777777777777) internal successors, (213), 154 states have internal predecessors, (213), 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 186 states. [2022-02-21 03:09:55,517 INFO L87 Difference]: Start difference. First operand has 161 states, 135 states have (on average 1.5777777777777777) internal successors, (213), 154 states have internal predecessors, (213), 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 186 states. [2022-02-21 03:09:55,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:55,524 INFO L93 Difference]: Finished difference Result 186 states and 248 transitions. [2022-02-21 03:09:55,524 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 248 transitions. [2022-02-21 03:09:55,524 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:55,525 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:55,525 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:55,525 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:55,526 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 135 states have (on average 1.5777777777777777) internal successors, (213), 154 states have internal predecessors, (213), 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:55,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 221 transitions. [2022-02-21 03:09:55,530 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 221 transitions. Word has length 13 [2022-02-21 03:09:55,530 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:55,530 INFO L470 AbstractCegarLoop]: Abstraction has 161 states and 221 transitions. [2022-02-21 03:09:55,531 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:55,531 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 221 transitions. [2022-02-21 03:09:55,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-21 03:09:55,531 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:55,531 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:55,532 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-21 03:09:55,532 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:55,533 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:55,533 INFO L85 PathProgramCache]: Analyzing trace with hash 1135318715, now seen corresponding path program 1 times [2022-02-21 03:09:55,533 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:55,533 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [435912310] [2022-02-21 03:09:55,533 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:55,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:55,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:55,605 INFO L290 TraceCheckUtils]: 0: Hoare triple {2317#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); {2317#true} is VALID [2022-02-21 03:09:55,606 INFO L290 TraceCheckUtils]: 1: Hoare triple {2317#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {2317#true} is VALID [2022-02-21 03:09:55,611 INFO L272 TraceCheckUtils]: 2: Hoare triple {2317#true} call main_#t~ret22#1 := base2flt(0, 0); {2319#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:55,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {2319#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {2320#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:55,613 INFO L290 TraceCheckUtils]: 4: Hoare triple {2320#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {2320#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:55,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {2320#(= base2flt_~e 0)} assume ~m % 4294967296 < 16777216; {2320#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:55,613 INFO L290 TraceCheckUtils]: 6: Hoare triple {2320#(= base2flt_~e 0)} assume !false; {2320#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:55,614 INFO L290 TraceCheckUtils]: 7: Hoare triple {2320#(= base2flt_~e 0)} assume !(~e <= -128); {2320#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:55,614 INFO L290 TraceCheckUtils]: 8: Hoare triple {2320#(= base2flt_~e 0)} assume ~e - 1 <= 2147483647; {2320#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:55,614 INFO L290 TraceCheckUtils]: 9: Hoare triple {2320#(= base2flt_~e 0)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {2321#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:55,615 INFO L290 TraceCheckUtils]: 10: Hoare triple {2321#(<= 0 (+ base2flt_~e 1))} assume !(~m % 4294967296 < 16777216); {2321#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:55,615 INFO L290 TraceCheckUtils]: 11: Hoare triple {2321#(<= 0 (+ base2flt_~e 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {2321#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:55,616 INFO L290 TraceCheckUtils]: 12: Hoare triple {2321#(<= 0 (+ base2flt_~e 1))} assume 128 + ~e <= 2147483647; {2321#(<= 0 (+ base2flt_~e 1))} is VALID [2022-02-21 03:09:55,616 INFO L290 TraceCheckUtils]: 13: Hoare triple {2321#(<= 0 (+ base2flt_~e 1))} assume !(128 + ~e >= -2147483648); {2318#false} is VALID [2022-02-21 03:09:55,616 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:55,617 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:55,617 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [435912310] [2022-02-21 03:09:55,617 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [435912310] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:55,617 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:55,617 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-21 03:09:55,618 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1386935469] [2022-02-21 03:09:55,618 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:55,618 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:55,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:55,619 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:55,628 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:55,629 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:55,629 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:55,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:55,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-21 03:09:55,630 INFO L87 Difference]: Start difference. First operand 161 states and 221 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:09:56,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,013 INFO L93 Difference]: Finished difference Result 354 states and 486 transitions. [2022-02-21 03:09:56,013 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:09:56,013 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:56,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:56,027 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:09:56,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 388 transitions. [2022-02-21 03:09:56,032 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:09:56,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 388 transitions. [2022-02-21 03:09:56,037 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 388 transitions. [2022-02-21 03:09:56,315 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 388 edges. 388 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:56,319 INFO L225 Difference]: With dead ends: 354 [2022-02-21 03:09:56,319 INFO L226 Difference]: Without dead ends: 196 [2022-02-21 03:09:56,320 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:09:56,321 INFO L933 BasicCegarLoop]: 115 mSDtfsCounter, 190 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 190 SdHoareTripleChecker+Valid, 370 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:56,321 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [190 Valid, 370 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:09:56,322 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 196 states. [2022-02-21 03:09:56,334 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 196 to 165. [2022-02-21 03:09:56,335 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:56,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 196 states. Second operand has 165 states, 139 states have (on average 1.5539568345323742) internal successors, (216), 158 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,336 INFO L74 IsIncluded]: Start isIncluded. First operand 196 states. Second operand has 165 states, 139 states have (on average 1.5539568345323742) internal successors, (216), 158 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,336 INFO L87 Difference]: Start difference. First operand 196 states. Second operand has 165 states, 139 states have (on average 1.5539568345323742) internal successors, (216), 158 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,342 INFO L93 Difference]: Finished difference Result 196 states and 258 transitions. [2022-02-21 03:09:56,342 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 258 transitions. [2022-02-21 03:09:56,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,344 INFO L74 IsIncluded]: Start isIncluded. First operand has 165 states, 139 states have (on average 1.5539568345323742) internal successors, (216), 158 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 196 states. [2022-02-21 03:09:56,344 INFO L87 Difference]: Start difference. First operand has 165 states, 139 states have (on average 1.5539568345323742) internal successors, (216), 158 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 196 states. [2022-02-21 03:09:56,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,350 INFO L93 Difference]: Finished difference Result 196 states and 258 transitions. [2022-02-21 03:09:56,350 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 258 transitions. [2022-02-21 03:09:56,351 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,351 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,351 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:56,351 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:56,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 165 states, 139 states have (on average 1.5539568345323742) internal successors, (216), 158 states have internal predecessors, (216), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 224 transitions. [2022-02-21 03:09:56,357 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 224 transitions. Word has length 14 [2022-02-21 03:09:56,357 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:56,357 INFO L470 AbstractCegarLoop]: Abstraction has 165 states and 224 transitions. [2022-02-21 03:09:56,357 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:09:56,357 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 224 transitions. [2022-02-21 03:09:56,358 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-21 03:09:56,358 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:56,358 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:56,358 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-21 03:09:56,358 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:09:56,359 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:56,359 INFO L85 PathProgramCache]: Analyzing trace with hash -783591725, now seen corresponding path program 1 times [2022-02-21 03:09:56,359 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:56,359 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1857372479] [2022-02-21 03:09:56,359 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:56,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:56,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:56,389 INFO L290 TraceCheckUtils]: 0: Hoare triple {3298#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); {3298#true} is VALID [2022-02-21 03:09:56,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {3298#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {3298#true} is VALID [2022-02-21 03:09:56,389 INFO L272 TraceCheckUtils]: 2: Hoare triple {3298#true} call main_#t~ret22#1 := base2flt(0, 0); {3298#true} is VALID [2022-02-21 03:09:56,389 INFO L290 TraceCheckUtils]: 3: Hoare triple {3298#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {3298#true} is VALID [2022-02-21 03:09:56,390 INFO L290 TraceCheckUtils]: 4: Hoare triple {3298#true} assume !(0 == ~m % 4294967296); {3298#true} is VALID [2022-02-21 03:09:56,390 INFO L290 TraceCheckUtils]: 5: Hoare triple {3298#true} assume !(~m % 4294967296 < 16777216); {3298#true} is VALID [2022-02-21 03:09:56,390 INFO L290 TraceCheckUtils]: 6: Hoare triple {3298#true} assume !false; {3298#true} is VALID [2022-02-21 03:09:56,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {3298#true} assume ~m % 4294967296 >= 33554432; {3298#true} is VALID [2022-02-21 03:09:56,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {3298#true} assume !(~e >= 127); {3298#true} is VALID [2022-02-21 03:09:56,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {3298#true} assume 1 + ~e <= 2147483647; {3298#true} is VALID [2022-02-21 03:09:56,391 INFO L290 TraceCheckUtils]: 10: Hoare triple {3298#true} assume 1 + ~e >= -2147483648;~e := 1 + ~e;~m := ~m / 2; {3298#true} is VALID [2022-02-21 03:09:56,391 INFO L290 TraceCheckUtils]: 11: Hoare triple {3298#true} assume !false; {3298#true} is VALID [2022-02-21 03:09:56,391 INFO L290 TraceCheckUtils]: 12: Hoare triple {3298#true} assume ~m % 4294967296 >= 33554432; {3298#true} is VALID [2022-02-21 03:09:56,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {3298#true} assume !(~e >= 127); {3300#(<= base2flt_~e 126)} is VALID [2022-02-21 03:09:56,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {3300#(<= base2flt_~e 126)} assume !(1 + ~e <= 2147483647); {3299#false} is VALID [2022-02-21 03:09:56,392 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:09:56,393 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:56,393 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1857372479] [2022-02-21 03:09:56,393 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1857372479] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:56,393 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:56,393 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-21 03:09:56,393 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018297] [2022-02-21 03:09:56,393 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:56,394 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:09:56,394 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:56,394 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:09:56,402 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:56,403 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-21 03:09:56,403 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:56,403 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-21 03:09:56,403 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-21 03:09:56,403 INFO L87 Difference]: Start difference. First operand 165 states and 224 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:09:56,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,564 INFO L93 Difference]: Finished difference Result 173 states and 234 transitions. [2022-02-21 03:09:56,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-21 03:09:56,564 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:09:56,565 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:56,565 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:09:56,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 142 transitions. [2022-02-21 03:09:56,567 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:09:56,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 142 transitions. [2022-02-21 03:09:56,569 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 142 transitions. [2022-02-21 03:09:56,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:56,681 INFO L225 Difference]: With dead ends: 173 [2022-02-21 03:09:56,681 INFO L226 Difference]: Without dead ends: 172 [2022-02-21 03:09:56,681 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:09:56,682 INFO L933 BasicCegarLoop]: 138 mSDtfsCounter, 5 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 248 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:09:56,683 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 248 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:56,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 172 states. [2022-02-21 03:09:56,704 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 172 to 163. [2022-02-21 03:09:56,704 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:56,705 INFO L82 GeneralOperation]: Start isEquivalent. First operand 172 states. Second operand has 163 states, 138 states have (on average 1.5434782608695652) internal successors, (213), 156 states have internal predecessors, (213), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,705 INFO L74 IsIncluded]: Start isIncluded. First operand 172 states. Second operand has 163 states, 138 states have (on average 1.5434782608695652) internal successors, (213), 156 states have internal predecessors, (213), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,706 INFO L87 Difference]: Start difference. First operand 172 states. Second operand has 163 states, 138 states have (on average 1.5434782608695652) internal successors, (213), 156 states have internal predecessors, (213), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,713 INFO L93 Difference]: Finished difference Result 172 states and 232 transitions. [2022-02-21 03:09:56,713 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 232 transitions. [2022-02-21 03:09:56,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,714 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,715 INFO L74 IsIncluded]: Start isIncluded. First operand has 163 states, 138 states have (on average 1.5434782608695652) internal successors, (213), 156 states have internal predecessors, (213), 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 172 states. [2022-02-21 03:09:56,716 INFO L87 Difference]: Start difference. First operand has 163 states, 138 states have (on average 1.5434782608695652) internal successors, (213), 156 states have internal predecessors, (213), 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 172 states. [2022-02-21 03:09:56,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:56,721 INFO L93 Difference]: Finished difference Result 172 states and 232 transitions. [2022-02-21 03:09:56,721 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 232 transitions. [2022-02-21 03:09:56,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:56,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:56,722 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:56,722 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:56,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 163 states, 138 states have (on average 1.5434782608695652) internal successors, (213), 156 states have internal predecessors, (213), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:56,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 163 states to 163 states and 221 transitions. [2022-02-21 03:09:56,728 INFO L78 Accepts]: Start accepts. Automaton has 163 states and 221 transitions. Word has length 15 [2022-02-21 03:09:56,728 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:56,728 INFO L470 AbstractCegarLoop]: Abstraction has 163 states and 221 transitions. [2022-02-21 03:09:56,728 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:09:56,729 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 221 transitions. [2022-02-21 03:09:56,729 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-21 03:09:56,729 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:56,729 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:56,729 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-21 03:09:56,730 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:09:56,730 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:56,730 INFO L85 PathProgramCache]: Analyzing trace with hash -783589465, now seen corresponding path program 1 times [2022-02-21 03:09:56,731 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:56,731 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1884821552] [2022-02-21 03:09:56,731 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:56,731 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:56,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:56,770 INFO L290 TraceCheckUtils]: 0: Hoare triple {4023#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); {4023#true} is VALID [2022-02-21 03:09:56,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {4023#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {4023#true} is VALID [2022-02-21 03:09:56,771 INFO L272 TraceCheckUtils]: 2: Hoare triple {4023#true} call main_#t~ret22#1 := base2flt(0, 0); {4025#(= |base2flt_#in~e| 0)} is VALID [2022-02-21 03:09:56,772 INFO L290 TraceCheckUtils]: 3: Hoare triple {4025#(= |base2flt_#in~e| 0)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,772 INFO L290 TraceCheckUtils]: 4: Hoare triple {4026#(= base2flt_~e 0)} assume !(0 == ~m % 4294967296); {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {4026#(= base2flt_~e 0)} assume !(~m % 4294967296 < 16777216); {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,773 INFO L290 TraceCheckUtils]: 6: Hoare triple {4026#(= base2flt_~e 0)} assume !false; {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {4026#(= base2flt_~e 0)} assume ~m % 4294967296 >= 33554432; {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,774 INFO L290 TraceCheckUtils]: 8: Hoare triple {4026#(= base2flt_~e 0)} assume !(~e >= 127); {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,774 INFO L290 TraceCheckUtils]: 9: Hoare triple {4026#(= base2flt_~e 0)} assume 1 + ~e <= 2147483647; {4026#(= base2flt_~e 0)} is VALID [2022-02-21 03:09:56,775 INFO L290 TraceCheckUtils]: 10: Hoare triple {4026#(= base2flt_~e 0)} assume 1 + ~e >= -2147483648;~e := 1 + ~e;~m := ~m / 2; {4027#(<= base2flt_~e 1)} is VALID [2022-02-21 03:09:56,775 INFO L290 TraceCheckUtils]: 11: Hoare triple {4027#(<= base2flt_~e 1)} assume !false; {4027#(<= base2flt_~e 1)} is VALID [2022-02-21 03:09:56,776 INFO L290 TraceCheckUtils]: 12: Hoare triple {4027#(<= base2flt_~e 1)} assume !(~m % 4294967296 >= 33554432); {4027#(<= base2flt_~e 1)} is VALID [2022-02-21 03:09:56,776 INFO L290 TraceCheckUtils]: 13: Hoare triple {4027#(<= base2flt_~e 1)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {4027#(<= base2flt_~e 1)} is VALID [2022-02-21 03:09:56,777 INFO L290 TraceCheckUtils]: 14: Hoare triple {4027#(<= base2flt_~e 1)} assume !(128 + ~e <= 2147483647); {4024#false} is VALID [2022-02-21 03:09:56,777 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:09:56,777 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:56,777 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1884821552] [2022-02-21 03:09:56,777 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1884821552] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:09:56,778 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [679538919] [2022-02-21 03:09:56,778 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:56,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:56,778 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:56,780 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:09:56,790 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-21 03:09:56,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:56,844 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-21 03:09:56,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:56,862 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:09:57,008 INFO L290 TraceCheckUtils]: 0: Hoare triple {4023#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); {4023#true} is VALID [2022-02-21 03:09:57,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {4023#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {4023#true} is VALID [2022-02-21 03:09:57,009 INFO L272 TraceCheckUtils]: 2: Hoare triple {4023#true} call main_#t~ret22#1 := base2flt(0, 0); {4023#true} is VALID [2022-02-21 03:09:57,009 INFO L290 TraceCheckUtils]: 3: Hoare triple {4023#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4023#true} is VALID [2022-02-21 03:09:57,009 INFO L290 TraceCheckUtils]: 4: Hoare triple {4023#true} assume !(0 == ~m % 4294967296); {4023#true} is VALID [2022-02-21 03:09:57,009 INFO L290 TraceCheckUtils]: 5: Hoare triple {4023#true} assume !(~m % 4294967296 < 16777216); {4023#true} is VALID [2022-02-21 03:09:57,009 INFO L290 TraceCheckUtils]: 6: Hoare triple {4023#true} assume !false; {4023#true} is VALID [2022-02-21 03:09:57,010 INFO L290 TraceCheckUtils]: 7: Hoare triple {4023#true} assume ~m % 4294967296 >= 33554432; {4023#true} is VALID [2022-02-21 03:09:57,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {4023#true} assume !(~e >= 127); {4055#(not (<= 127 base2flt_~e))} is VALID [2022-02-21 03:09:57,011 INFO L290 TraceCheckUtils]: 9: Hoare triple {4055#(not (<= 127 base2flt_~e))} assume 1 + ~e <= 2147483647; {4055#(not (<= 127 base2flt_~e))} is VALID [2022-02-21 03:09:57,011 INFO L290 TraceCheckUtils]: 10: Hoare triple {4055#(not (<= 127 base2flt_~e))} assume 1 + ~e >= -2147483648;~e := 1 + ~e;~m := ~m / 2; {4062#(< base2flt_~e 128)} is VALID [2022-02-21 03:09:57,012 INFO L290 TraceCheckUtils]: 11: Hoare triple {4062#(< base2flt_~e 128)} assume !false; {4062#(< base2flt_~e 128)} is VALID [2022-02-21 03:09:57,012 INFO L290 TraceCheckUtils]: 12: Hoare triple {4062#(< base2flt_~e 128)} assume !(~m % 4294967296 >= 33554432); {4062#(< base2flt_~e 128)} is VALID [2022-02-21 03:09:57,013 INFO L290 TraceCheckUtils]: 13: Hoare triple {4062#(< base2flt_~e 128)} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {4062#(< base2flt_~e 128)} is VALID [2022-02-21 03:09:57,013 INFO L290 TraceCheckUtils]: 14: Hoare triple {4062#(< base2flt_~e 128)} assume !(128 + ~e <= 2147483647); {4024#false} is VALID [2022-02-21 03:09:57,013 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-21 03:09:57,013 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:09:57,014 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [679538919] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:57,014 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:09:57,014 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [4] total 6 [2022-02-21 03:09:57,014 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [380642623] [2022-02-21 03:09:57,014 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:57,015 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:09:57,015 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:57,015 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:09:57,026 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:09:57,027 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:57,027 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:57,027 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:57,027 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-21 03:09:57,028 INFO L87 Difference]: Start difference. First operand 163 states and 221 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:09:57,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:57,330 INFO L93 Difference]: Finished difference Result 201 states and 276 transitions. [2022-02-21 03:09:57,330 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:09:57,330 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:09:57,331 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:57,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:09:57,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 177 transitions. [2022-02-21 03:09:57,334 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:09:57,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 177 transitions. [2022-02-21 03:09:57,335 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 177 transitions. [2022-02-21 03:09:57,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:57,488 INFO L225 Difference]: With dead ends: 201 [2022-02-21 03:09:57,488 INFO L226 Difference]: Without dead ends: 199 [2022-02-21 03:09:57,488 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:09:57,492 INFO L933 BasicCegarLoop]: 153 mSDtfsCounter, 26 mSDsluCounter, 238 mSDsCounter, 0 mSdLazyCounter, 63 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 391 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.0s IncrementalHoareTripleChecker+Time [2022-02-21 03:09:57,492 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 391 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 63 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:57,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 199 states. [2022-02-21 03:09:57,509 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 199 to 165. [2022-02-21 03:09:57,509 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:57,510 INFO L82 GeneralOperation]: Start isEquivalent. First operand 199 states. Second operand has 165 states, 140 states have (on average 1.5357142857142858) internal successors, (215), 158 states have internal predecessors, (215), 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:57,511 INFO L74 IsIncluded]: Start isIncluded. First operand 199 states. Second operand has 165 states, 140 states have (on average 1.5357142857142858) internal successors, (215), 158 states have internal predecessors, (215), 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:57,511 INFO L87 Difference]: Start difference. First operand 199 states. Second operand has 165 states, 140 states have (on average 1.5357142857142858) internal successors, (215), 158 states have internal predecessors, (215), 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:57,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:57,516 INFO L93 Difference]: Finished difference Result 199 states and 272 transitions. [2022-02-21 03:09:57,517 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 272 transitions. [2022-02-21 03:09:57,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:57,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:57,518 INFO L74 IsIncluded]: Start isIncluded. First operand has 165 states, 140 states have (on average 1.5357142857142858) internal successors, (215), 158 states have internal predecessors, (215), 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 199 states. [2022-02-21 03:09:57,518 INFO L87 Difference]: Start difference. First operand has 165 states, 140 states have (on average 1.5357142857142858) internal successors, (215), 158 states have internal predecessors, (215), 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 199 states. [2022-02-21 03:09:57,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:57,523 INFO L93 Difference]: Finished difference Result 199 states and 272 transitions. [2022-02-21 03:09:57,523 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 272 transitions. [2022-02-21 03:09:57,524 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:57,524 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:57,524 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:57,524 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:57,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 165 states, 140 states have (on average 1.5357142857142858) internal successors, (215), 158 states have internal predecessors, (215), 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:57,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 223 transitions. [2022-02-21 03:09:57,528 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 223 transitions. Word has length 15 [2022-02-21 03:09:57,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:57,529 INFO L470 AbstractCegarLoop]: Abstraction has 165 states and 223 transitions. [2022-02-21 03:09:57,529 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:09:57,529 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 223 transitions. [2022-02-21 03:09:57,529 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-21 03:09:57,530 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:57,530 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-21 03:09:57,557 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-21 03:09:57,743 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:09:57,743 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:09:57,744 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:57,744 INFO L85 PathProgramCache]: Analyzing trace with hash 842807383, now seen corresponding path program 1 times [2022-02-21 03:09:57,744 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:57,744 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1811169825] [2022-02-21 03:09:57,744 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:57,744 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:57,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:57,786 INFO L290 TraceCheckUtils]: 0: Hoare triple {4883#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); {4883#true} is VALID [2022-02-21 03:09:57,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {4883#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L272 TraceCheckUtils]: 2: Hoare triple {4883#true} call main_#t~ret22#1 := base2flt(0, 0); {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L290 TraceCheckUtils]: 3: Hoare triple {4883#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L290 TraceCheckUtils]: 4: Hoare triple {4883#true} assume !(0 == ~m % 4294967296); {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L290 TraceCheckUtils]: 5: Hoare triple {4883#true} assume ~m % 4294967296 < 16777216; {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L290 TraceCheckUtils]: 6: Hoare triple {4883#true} assume !false; {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L290 TraceCheckUtils]: 7: Hoare triple {4883#true} assume !(~e <= -128); {4883#true} is VALID [2022-02-21 03:09:57,787 INFO L290 TraceCheckUtils]: 8: Hoare triple {4883#true} assume ~e - 1 <= 2147483647; {4883#true} is VALID [2022-02-21 03:09:57,788 INFO L290 TraceCheckUtils]: 9: Hoare triple {4883#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {4883#true} is VALID [2022-02-21 03:09:57,788 INFO L290 TraceCheckUtils]: 10: Hoare triple {4883#true} assume ~m % 4294967296 < 16777216; {4883#true} is VALID [2022-02-21 03:09:57,788 INFO L290 TraceCheckUtils]: 11: Hoare triple {4883#true} assume !false; {4883#true} is VALID [2022-02-21 03:09:57,788 INFO L290 TraceCheckUtils]: 12: Hoare triple {4883#true} assume !(~e <= -128); {4885#(<= 0 (+ base2flt_~e 127))} is VALID [2022-02-21 03:09:57,789 INFO L290 TraceCheckUtils]: 13: Hoare triple {4885#(<= 0 (+ base2flt_~e 127))} assume ~e - 1 <= 2147483647; {4885#(<= 0 (+ base2flt_~e 127))} is VALID [2022-02-21 03:09:57,789 INFO L290 TraceCheckUtils]: 14: Hoare triple {4885#(<= 0 (+ base2flt_~e 127))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {4886#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:57,790 INFO L290 TraceCheckUtils]: 15: Hoare triple {4886#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {4886#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:57,790 INFO L290 TraceCheckUtils]: 16: Hoare triple {4886#(<= 0 (+ 128 base2flt_~e))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {4886#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:57,791 INFO L290 TraceCheckUtils]: 17: Hoare triple {4886#(<= 0 (+ 128 base2flt_~e))} assume 128 + ~e <= 2147483647; {4886#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:57,791 INFO L290 TraceCheckUtils]: 18: Hoare triple {4886#(<= 0 (+ 128 base2flt_~e))} assume !(128 + ~e >= -2147483648); {4884#false} is VALID [2022-02-21 03:09:57,792 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:09:57,792 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:57,792 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1811169825] [2022-02-21 03:09:57,792 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1811169825] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:57,792 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:09:57,792 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-21 03:09:57,792 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1793829981] [2022-02-21 03:09:57,792 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:57,793 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:09:57,793 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:57,793 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:09:57,805 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:09:57,805 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-21 03:09:57,805 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:57,806 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-21 03:09:57,806 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-21 03:09:57,806 INFO L87 Difference]: Start difference. First operand 165 states and 223 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:09:58,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,099 INFO L93 Difference]: Finished difference Result 207 states and 285 transitions. [2022-02-21 03:09:58,099 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-21 03:09:58,099 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:09:58,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:58,100 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:09:58,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 174 transitions. [2022-02-21 03:09:58,102 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:09:58,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 174 transitions. [2022-02-21 03:09:58,103 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 174 transitions. [2022-02-21 03:09:58,234 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:58,238 INFO L225 Difference]: With dead ends: 207 [2022-02-21 03:09:58,238 INFO L226 Difference]: Without dead ends: 204 [2022-02-21 03:09:58,238 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:09:58,239 INFO L933 BasicCegarLoop]: 141 mSDtfsCounter, 27 mSDsluCounter, 229 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 370 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:09:58,239 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 370 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-21 03:09:58,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 204 states. [2022-02-21 03:09:58,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 204 to 170. [2022-02-21 03:09:58,258 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:58,259 INFO L82 GeneralOperation]: Start isEquivalent. First operand 204 states. Second operand has 170 states, 146 states have (on average 1.5273972602739727) internal successors, (223), 163 states have internal predecessors, (223), 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:58,260 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand has 170 states, 146 states have (on average 1.5273972602739727) internal successors, (223), 163 states have internal predecessors, (223), 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:58,260 INFO L87 Difference]: Start difference. First operand 204 states. Second operand has 170 states, 146 states have (on average 1.5273972602739727) internal successors, (223), 163 states have internal predecessors, (223), 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:58,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,265 INFO L93 Difference]: Finished difference Result 204 states and 279 transitions. [2022-02-21 03:09:58,265 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 279 transitions. [2022-02-21 03:09:58,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:58,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:58,267 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 146 states have (on average 1.5273972602739727) internal successors, (223), 163 states have internal predecessors, (223), 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 204 states. [2022-02-21 03:09:58,267 INFO L87 Difference]: Start difference. First operand has 170 states, 146 states have (on average 1.5273972602739727) internal successors, (223), 163 states have internal predecessors, (223), 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 204 states. [2022-02-21 03:09:58,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:58,272 INFO L93 Difference]: Finished difference Result 204 states and 279 transitions. [2022-02-21 03:09:58,273 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 279 transitions. [2022-02-21 03:09:58,273 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:58,273 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:58,274 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:58,274 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:58,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 146 states have (on average 1.5273972602739727) internal successors, (223), 163 states have internal predecessors, (223), 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:58,278 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 231 transitions. [2022-02-21 03:09:58,278 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 231 transitions. Word has length 19 [2022-02-21 03:09:58,278 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:58,278 INFO L470 AbstractCegarLoop]: Abstraction has 170 states and 231 transitions. [2022-02-21 03:09:58,278 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:09:58,279 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 231 transitions. [2022-02-21 03:09:58,279 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-21 03:09:58,279 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:58,279 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:09:58,280 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-21 03:09:58,280 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:09:58,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:58,280 INFO L85 PathProgramCache]: Analyzing trace with hash 1397629671, now seen corresponding path program 1 times [2022-02-21 03:09:58,280 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:58,281 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [682642437] [2022-02-21 03:09:58,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:58,286 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:58,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,360 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:09:58,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,372 INFO L290 TraceCheckUtils]: 0: Hoare triple {5737#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {5722#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5722#true} is VALID [2022-02-21 03:09:58,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {5722#true} #res := ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,373 INFO L290 TraceCheckUtils]: 3: Hoare triple {5722#true} assume true; {5722#true} is VALID [2022-02-21 03:09:58,374 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {5722#true} {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #378#return; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,375 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:09:58,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,382 INFO L290 TraceCheckUtils]: 0: Hoare triple {5737#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {5722#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5722#true} is VALID [2022-02-21 03:09:58,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {5722#true} #res := ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,383 INFO L290 TraceCheckUtils]: 3: Hoare triple {5722#true} assume true; {5722#true} is VALID [2022-02-21 03:09:58,383 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {5722#true} {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #380#return; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,384 INFO L290 TraceCheckUtils]: 0: Hoare triple {5722#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); {5722#true} is VALID [2022-02-21 03:09:58,384 INFO L290 TraceCheckUtils]: 1: Hoare triple {5722#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,385 INFO L272 TraceCheckUtils]: 2: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {5737#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:58,385 INFO L290 TraceCheckUtils]: 3: Hoare triple {5737#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,386 INFO L290 TraceCheckUtils]: 4: Hoare triple {5722#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5722#true} is VALID [2022-02-21 03:09:58,386 INFO L290 TraceCheckUtils]: 5: Hoare triple {5722#true} #res := ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,386 INFO L290 TraceCheckUtils]: 6: Hoare triple {5722#true} assume true; {5722#true} is VALID [2022-02-21 03:09:58,387 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5722#true} {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #378#return; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,387 INFO L290 TraceCheckUtils]: 8: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,388 INFO L272 TraceCheckUtils]: 9: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {5737#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:58,388 INFO L290 TraceCheckUtils]: 10: Hoare triple {5737#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,388 INFO L290 TraceCheckUtils]: 11: Hoare triple {5722#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5722#true} is VALID [2022-02-21 03:09:58,389 INFO L290 TraceCheckUtils]: 12: Hoare triple {5722#true} #res := ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,389 INFO L290 TraceCheckUtils]: 13: Hoare triple {5722#true} assume true; {5722#true} is VALID [2022-02-21 03:09:58,390 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5722#true} {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #380#return; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,390 INFO L290 TraceCheckUtils]: 15: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,391 INFO L272 TraceCheckUtils]: 16: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5735#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:09:58,391 INFO L290 TraceCheckUtils]: 17: Hoare triple {5735#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,392 INFO L290 TraceCheckUtils]: 18: Hoare triple {5736#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,392 INFO L290 TraceCheckUtils]: 19: Hoare triple {5736#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,393 INFO L290 TraceCheckUtils]: 20: Hoare triple {5736#(<= base2flt_~e 127)} assume !false; {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,393 INFO L290 TraceCheckUtils]: 21: Hoare triple {5736#(<= base2flt_~e 127)} assume !(~e <= -128); {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,394 INFO L290 TraceCheckUtils]: 22: Hoare triple {5736#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {5723#false} is VALID [2022-02-21 03:09:58,394 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:09:58,394 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:58,394 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [682642437] [2022-02-21 03:09:58,395 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [682642437] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:09:58,395 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [106778197] [2022-02-21 03:09:58,395 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:58,395 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:58,395 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:58,397 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:09:58,398 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-21 03:09:58,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,454 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:09:58,470 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:58,472 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:09:58,568 INFO L290 TraceCheckUtils]: 0: Hoare triple {5722#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); {5722#true} is VALID [2022-02-21 03:09:58,569 INFO L290 TraceCheckUtils]: 1: Hoare triple {5722#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,569 INFO L272 TraceCheckUtils]: 2: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {5722#true} is VALID [2022-02-21 03:09:58,569 INFO L290 TraceCheckUtils]: 3: Hoare triple {5722#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,569 INFO L290 TraceCheckUtils]: 4: Hoare triple {5722#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5722#true} is VALID [2022-02-21 03:09:58,570 INFO L290 TraceCheckUtils]: 5: Hoare triple {5722#true} #res := ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,570 INFO L290 TraceCheckUtils]: 6: Hoare triple {5722#true} assume true; {5722#true} is VALID [2022-02-21 03:09:58,571 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {5722#true} {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #378#return; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,571 INFO L272 TraceCheckUtils]: 9: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {5722#true} is VALID [2022-02-21 03:09:58,571 INFO L290 TraceCheckUtils]: 10: Hoare triple {5722#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,572 INFO L290 TraceCheckUtils]: 11: Hoare triple {5722#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {5722#true} is VALID [2022-02-21 03:09:58,572 INFO L290 TraceCheckUtils]: 12: Hoare triple {5722#true} #res := ~__retres4~0; {5722#true} is VALID [2022-02-21 03:09:58,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {5722#true} assume true; {5722#true} is VALID [2022-02-21 03:09:58,573 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5722#true} {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} #380#return; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,573 INFO L290 TraceCheckUtils]: 15: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} is VALID [2022-02-21 03:09:58,574 INFO L272 TraceCheckUtils]: 16: Hoare triple {5724#(<= |ULTIMATE.start_main_~ea~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {5735#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:09:58,574 INFO L290 TraceCheckUtils]: 17: Hoare triple {5735#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,575 INFO L290 TraceCheckUtils]: 18: Hoare triple {5736#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,575 INFO L290 TraceCheckUtils]: 19: Hoare triple {5736#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,576 INFO L290 TraceCheckUtils]: 20: Hoare triple {5736#(<= base2flt_~e 127)} assume !false; {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,576 INFO L290 TraceCheckUtils]: 21: Hoare triple {5736#(<= base2flt_~e 127)} assume !(~e <= -128); {5736#(<= base2flt_~e 127)} is VALID [2022-02-21 03:09:58,577 INFO L290 TraceCheckUtils]: 22: Hoare triple {5736#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {5723#false} is VALID [2022-02-21 03:09:58,577 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:09:58,577 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:09:58,577 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [106778197] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:58,578 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:09:58,578 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:09:58,578 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1098574039] [2022-02-21 03:09:58,578 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:58,579 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:09:58,579 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:58,579 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:09:58,593 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:58,594 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:58,594 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:58,594 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:58,594 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:09:58,595 INFO L87 Difference]: Start difference. First operand 170 states and 231 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:09:59,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,000 INFO L93 Difference]: Finished difference Result 252 states and 350 transitions. [2022-02-21 03:09:59,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:09:59,001 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:09:59,001 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:09:59,001 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:09:59,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 218 transitions. [2022-02-21 03:09:59,004 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:09:59,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 218 transitions. [2022-02-21 03:09:59,006 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 218 transitions. [2022-02-21 03:09:59,182 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:09:59,187 INFO L225 Difference]: With dead ends: 252 [2022-02-21 03:09:59,188 INFO L226 Difference]: Without dead ends: 249 [2022-02-21 03:09:59,188 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:09:59,189 INFO L933 BasicCegarLoop]: 108 mSDtfsCounter, 188 mSDsluCounter, 259 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 191 SdHoareTripleChecker+Valid, 367 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:09:59,189 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [191 Valid, 367 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:09:59,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-02-21 03:09:59,233 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 207. [2022-02-21 03:09:59,233 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:09:59,234 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 207 states, 182 states have (on average 1.5384615384615385) internal successors, (280), 199 states have internal predecessors, (280), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,234 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 207 states, 182 states have (on average 1.5384615384615385) internal successors, (280), 199 states have internal predecessors, (280), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,235 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 207 states, 182 states have (on average 1.5384615384615385) internal successors, (280), 199 states have internal predecessors, (280), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,241 INFO L93 Difference]: Finished difference Result 249 states and 345 transitions. [2022-02-21 03:09:59,241 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 345 transitions. [2022-02-21 03:09:59,242 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,242 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,244 INFO L74 IsIncluded]: Start isIncluded. First operand has 207 states, 182 states have (on average 1.5384615384615385) internal successors, (280), 199 states have internal predecessors, (280), 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 249 states. [2022-02-21 03:09:59,245 INFO L87 Difference]: Start difference. First operand has 207 states, 182 states have (on average 1.5384615384615385) internal successors, (280), 199 states have internal predecessors, (280), 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 249 states. [2022-02-21 03:09:59,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:09:59,251 INFO L93 Difference]: Finished difference Result 249 states and 345 transitions. [2022-02-21 03:09:59,251 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 345 transitions. [2022-02-21 03:09:59,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:09:59,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:09:59,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:09:59,253 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:09:59,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 207 states, 182 states have (on average 1.5384615384615385) internal successors, (280), 199 states have internal predecessors, (280), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:09:59,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 288 transitions. [2022-02-21 03:09:59,258 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 288 transitions. Word has length 23 [2022-02-21 03:09:59,258 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:09:59,258 INFO L470 AbstractCegarLoop]: Abstraction has 207 states and 288 transitions. [2022-02-21 03:09:59,259 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:09:59,259 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 288 transitions. [2022-02-21 03:09:59,259 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-21 03:09:59,260 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:09:59,260 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:09:59,295 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-21 03:09:59,490 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:09:59,491 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:09:59,491 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:09:59,491 INFO L85 PathProgramCache]: Analyzing trace with hash -315199921, now seen corresponding path program 1 times [2022-02-21 03:09:59,491 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:09:59,491 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [502741741] [2022-02-21 03:09:59,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:59,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:09:59,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,537 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:09:59,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,552 INFO L290 TraceCheckUtils]: 0: Hoare triple {6841#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {6826#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6826#true} is VALID [2022-02-21 03:09:59,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {6826#true} #res := ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,553 INFO L290 TraceCheckUtils]: 3: Hoare triple {6826#true} assume true; {6826#true} is VALID [2022-02-21 03:09:59,553 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {6826#true} {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #378#return; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,554 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:09:59,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,560 INFO L290 TraceCheckUtils]: 0: Hoare triple {6841#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {6826#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6826#true} is VALID [2022-02-21 03:09:59,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {6826#true} #res := ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,560 INFO L290 TraceCheckUtils]: 3: Hoare triple {6826#true} assume true; {6826#true} is VALID [2022-02-21 03:09:59,561 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {6826#true} {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #380#return; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,561 INFO L290 TraceCheckUtils]: 0: Hoare triple {6826#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); {6826#true} is VALID [2022-02-21 03:09:59,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {6826#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,562 INFO L272 TraceCheckUtils]: 2: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {6841#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:59,563 INFO L290 TraceCheckUtils]: 3: Hoare triple {6841#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,563 INFO L290 TraceCheckUtils]: 4: Hoare triple {6826#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6826#true} is VALID [2022-02-21 03:09:59,563 INFO L290 TraceCheckUtils]: 5: Hoare triple {6826#true} #res := ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,563 INFO L290 TraceCheckUtils]: 6: Hoare triple {6826#true} assume true; {6826#true} is VALID [2022-02-21 03:09:59,564 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {6826#true} {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #378#return; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,564 INFO L290 TraceCheckUtils]: 8: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,565 INFO L272 TraceCheckUtils]: 9: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {6841#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:09:59,565 INFO L290 TraceCheckUtils]: 10: Hoare triple {6841#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,565 INFO L290 TraceCheckUtils]: 11: Hoare triple {6826#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6826#true} is VALID [2022-02-21 03:09:59,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {6826#true} #res := ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {6826#true} assume true; {6826#true} is VALID [2022-02-21 03:09:59,566 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {6826#true} {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #380#return; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,566 INFO L290 TraceCheckUtils]: 15: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,567 INFO L272 TraceCheckUtils]: 16: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {6839#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:09:59,571 INFO L290 TraceCheckUtils]: 17: Hoare triple {6839#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,572 INFO L290 TraceCheckUtils]: 18: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,572 INFO L290 TraceCheckUtils]: 19: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,573 INFO L290 TraceCheckUtils]: 20: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !false; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,573 INFO L290 TraceCheckUtils]: 21: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,574 INFO L290 TraceCheckUtils]: 22: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,574 INFO L290 TraceCheckUtils]: 23: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,574 INFO L290 TraceCheckUtils]: 24: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {6827#false} is VALID [2022-02-21 03:09:59,575 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:09:59,575 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:09:59,575 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [502741741] [2022-02-21 03:09:59,575 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [502741741] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:09:59,575 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1121493546] [2022-02-21 03:09:59,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:09:59,576 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:09:59,576 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:09:59,577 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:09:59,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-21 03:09:59,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:09:59,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:09:59,644 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:09:59,749 INFO L290 TraceCheckUtils]: 0: Hoare triple {6826#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); {6826#true} is VALID [2022-02-21 03:09:59,749 INFO L290 TraceCheckUtils]: 1: Hoare triple {6826#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,754 INFO L272 TraceCheckUtils]: 2: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {6826#true} is VALID [2022-02-21 03:09:59,754 INFO L290 TraceCheckUtils]: 3: Hoare triple {6826#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,754 INFO L290 TraceCheckUtils]: 4: Hoare triple {6826#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6826#true} is VALID [2022-02-21 03:09:59,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {6826#true} #res := ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,755 INFO L290 TraceCheckUtils]: 6: Hoare triple {6826#true} assume true; {6826#true} is VALID [2022-02-21 03:09:59,755 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {6826#true} {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #378#return; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,757 INFO L272 TraceCheckUtils]: 9: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {6826#true} is VALID [2022-02-21 03:09:59,757 INFO L290 TraceCheckUtils]: 10: Hoare triple {6826#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,757 INFO L290 TraceCheckUtils]: 11: Hoare triple {6826#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {6826#true} is VALID [2022-02-21 03:09:59,757 INFO L290 TraceCheckUtils]: 12: Hoare triple {6826#true} #res := ~__retres4~0; {6826#true} is VALID [2022-02-21 03:09:59,757 INFO L290 TraceCheckUtils]: 13: Hoare triple {6826#true} assume true; {6826#true} is VALID [2022-02-21 03:09:59,758 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {6826#true} {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} #380#return; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,759 INFO L290 TraceCheckUtils]: 15: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} is VALID [2022-02-21 03:09:59,759 INFO L272 TraceCheckUtils]: 16: Hoare triple {6828#(<= 0 (+ |ULTIMATE.start_main_~ea~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {6839#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:09:59,772 INFO L290 TraceCheckUtils]: 17: Hoare triple {6839#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,773 INFO L290 TraceCheckUtils]: 18: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,774 INFO L290 TraceCheckUtils]: 19: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !false; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,775 INFO L290 TraceCheckUtils]: 21: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,776 INFO L290 TraceCheckUtils]: 23: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {6840#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:09:59,776 INFO L290 TraceCheckUtils]: 24: Hoare triple {6840#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {6827#false} is VALID [2022-02-21 03:09:59,776 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:09:59,776 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:09:59,777 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1121493546] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:09:59,777 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:09:59,777 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:09:59,777 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1670194937] [2022-02-21 03:09:59,777 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:09:59,778 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:09:59,778 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:09:59,778 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:09:59,793 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:09:59,793 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:09:59,793 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:09:59,793 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:09:59,794 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:09:59,794 INFO L87 Difference]: Start difference. First operand 207 states and 288 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:00,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,241 INFO L93 Difference]: Finished difference Result 240 states and 329 transitions. [2022-02-21 03:10:00,241 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:00,241 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:00,241 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:00,241 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:00,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 211 transitions. [2022-02-21 03:10:00,244 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:00,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 211 transitions. [2022-02-21 03:10:00,246 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 211 transitions. [2022-02-21 03:10:00,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 211 edges. 211 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:00,415 INFO L225 Difference]: With dead ends: 240 [2022-02-21 03:10:00,416 INFO L226 Difference]: Without dead ends: 237 [2022-02-21 03:10:00,416 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:00,417 INFO L933 BasicCegarLoop]: 113 mSDtfsCounter, 168 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 171 SdHoareTripleChecker+Valid, 377 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:00,417 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [171 Valid, 377 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:00,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 237 states. [2022-02-21 03:10:00,468 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 237 to 199. [2022-02-21 03:10:00,468 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:00,468 INFO L82 GeneralOperation]: Start isEquivalent. First operand 237 states. Second operand has 199 states, 174 states have (on average 1.5229885057471264) internal successors, (265), 191 states have internal predecessors, (265), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,469 INFO L74 IsIncluded]: Start isIncluded. First operand 237 states. Second operand has 199 states, 174 states have (on average 1.5229885057471264) internal successors, (265), 191 states have internal predecessors, (265), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,469 INFO L87 Difference]: Start difference. First operand 237 states. Second operand has 199 states, 174 states have (on average 1.5229885057471264) internal successors, (265), 191 states have internal predecessors, (265), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,475 INFO L93 Difference]: Finished difference Result 237 states and 326 transitions. [2022-02-21 03:10:00,475 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 326 transitions. [2022-02-21 03:10:00,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 199 states, 174 states have (on average 1.5229885057471264) internal successors, (265), 191 states have internal predecessors, (265), 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 237 states. [2022-02-21 03:10:00,476 INFO L87 Difference]: Start difference. First operand has 199 states, 174 states have (on average 1.5229885057471264) internal successors, (265), 191 states have internal predecessors, (265), 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 237 states. [2022-02-21 03:10:00,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:00,482 INFO L93 Difference]: Finished difference Result 237 states and 326 transitions. [2022-02-21 03:10:00,482 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 326 transitions. [2022-02-21 03:10:00,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:00,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:00,483 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:00,483 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:00,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 199 states, 174 states have (on average 1.5229885057471264) internal successors, (265), 191 states have internal predecessors, (265), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-21 03:10:00,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 273 transitions. [2022-02-21 03:10:00,488 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 273 transitions. Word has length 25 [2022-02-21 03:10:00,488 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:00,488 INFO L470 AbstractCegarLoop]: Abstraction has 199 states and 273 transitions. [2022-02-21 03:10:00,488 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:00,488 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 273 transitions. [2022-02-21 03:10:00,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-21 03:10:00,489 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:00,489 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:00,513 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:00,703 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:00,704 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:00,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:00,704 INFO L85 PathProgramCache]: Analyzing trace with hash 309979375, now seen corresponding path program 1 times [2022-02-21 03:10:00,704 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:00,704 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1295559240] [2022-02-21 03:10:00,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,705 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:00,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,754 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:00,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,760 INFO L290 TraceCheckUtils]: 0: Hoare triple {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,761 INFO L290 TraceCheckUtils]: 1: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,761 INFO L290 TraceCheckUtils]: 3: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,761 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #378#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,762 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:00,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,767 INFO L290 TraceCheckUtils]: 0: Hoare triple {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,767 INFO L290 TraceCheckUtils]: 2: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,768 INFO L290 TraceCheckUtils]: 3: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,768 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #380#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,768 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 16 [2022-02-21 03:10:00,771 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,774 INFO L290 TraceCheckUtils]: 0: Hoare triple {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,774 INFO L290 TraceCheckUtils]: 2: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,774 INFO L290 TraceCheckUtils]: 3: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,775 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #382#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,775 INFO L290 TraceCheckUtils]: 0: Hoare triple {7890#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); {7890#true} is VALID [2022-02-21 03:10:00,776 INFO L290 TraceCheckUtils]: 1: Hoare triple {7890#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,776 INFO L272 TraceCheckUtils]: 2: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:00,776 INFO L290 TraceCheckUtils]: 3: Hoare triple {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,777 INFO L290 TraceCheckUtils]: 4: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,777 INFO L290 TraceCheckUtils]: 5: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,777 INFO L290 TraceCheckUtils]: 6: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,777 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #378#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,778 INFO L290 TraceCheckUtils]: 8: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,778 INFO L272 TraceCheckUtils]: 9: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:00,779 INFO L290 TraceCheckUtils]: 10: Hoare triple {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,779 INFO L290 TraceCheckUtils]: 11: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,779 INFO L290 TraceCheckUtils]: 12: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,779 INFO L290 TraceCheckUtils]: 13: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,780 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #380#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,780 INFO L290 TraceCheckUtils]: 15: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,781 INFO L272 TraceCheckUtils]: 16: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:00,781 INFO L290 TraceCheckUtils]: 17: Hoare triple {7910#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,781 INFO L290 TraceCheckUtils]: 18: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,781 INFO L290 TraceCheckUtils]: 19: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,781 INFO L290 TraceCheckUtils]: 20: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,782 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #382#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,783 INFO L272 TraceCheckUtils]: 23: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {7908#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:00,783 INFO L290 TraceCheckUtils]: 24: Hoare triple {7908#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,783 INFO L290 TraceCheckUtils]: 25: Hoare triple {7909#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,784 INFO L290 TraceCheckUtils]: 26: Hoare triple {7909#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,784 INFO L290 TraceCheckUtils]: 27: Hoare triple {7909#(<= base2flt_~e 127)} assume !false; {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,784 INFO L290 TraceCheckUtils]: 28: Hoare triple {7909#(<= base2flt_~e 127)} assume !(~e <= -128); {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,785 INFO L290 TraceCheckUtils]: 29: Hoare triple {7909#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {7891#false} is VALID [2022-02-21 03:10:00,785 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:00,785 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:00,785 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1295559240] [2022-02-21 03:10:00,785 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1295559240] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:00,786 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [296589709] [2022-02-21 03:10:00,786 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:00,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:00,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:00,787 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-21 03:10:00,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-21 03:10:00,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,853 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:00,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:00,867 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:00,985 INFO L290 TraceCheckUtils]: 0: Hoare triple {7890#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); {7890#true} is VALID [2022-02-21 03:10:00,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {7890#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,986 INFO L272 TraceCheckUtils]: 2: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret22#1 := base2flt(0, 0); {7890#true} is VALID [2022-02-21 03:10:00,986 INFO L290 TraceCheckUtils]: 3: Hoare triple {7890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,986 INFO L290 TraceCheckUtils]: 4: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,987 INFO L290 TraceCheckUtils]: 5: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,987 INFO L290 TraceCheckUtils]: 6: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,988 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #378#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,988 INFO L290 TraceCheckUtils]: 8: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,988 INFO L272 TraceCheckUtils]: 9: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret23#1 := base2flt(1, 0); {7890#true} is VALID [2022-02-21 03:10:00,988 INFO L290 TraceCheckUtils]: 10: Hoare triple {7890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,988 INFO L290 TraceCheckUtils]: 11: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,989 INFO L290 TraceCheckUtils]: 13: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,989 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #380#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,990 INFO L290 TraceCheckUtils]: 15: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,990 INFO L272 TraceCheckUtils]: 16: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {7890#true} is VALID [2022-02-21 03:10:00,990 INFO L290 TraceCheckUtils]: 17: Hoare triple {7890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,990 INFO L290 TraceCheckUtils]: 18: Hoare triple {7890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {7890#true} is VALID [2022-02-21 03:10:00,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {7890#true} #res := ~__retres4~0; {7890#true} is VALID [2022-02-21 03:10:00,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {7890#true} assume true; {7890#true} is VALID [2022-02-21 03:10:00,991 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7890#true} {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} #382#return; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,992 INFO L290 TraceCheckUtils]: 22: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} is VALID [2022-02-21 03:10:00,992 INFO L272 TraceCheckUtils]: 23: Hoare triple {7892#(<= |ULTIMATE.start_main_~eb~2#1| 127)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {7908#(<= |base2flt_#in~e| 127)} is VALID [2022-02-21 03:10:00,993 INFO L290 TraceCheckUtils]: 24: Hoare triple {7908#(<= |base2flt_#in~e| 127)} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,993 INFO L290 TraceCheckUtils]: 25: Hoare triple {7909#(<= base2flt_~e 127)} assume !(0 == ~m % 4294967296); {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,994 INFO L290 TraceCheckUtils]: 26: Hoare triple {7909#(<= base2flt_~e 127)} assume ~m % 4294967296 < 16777216; {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,994 INFO L290 TraceCheckUtils]: 27: Hoare triple {7909#(<= base2flt_~e 127)} assume !false; {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,994 INFO L290 TraceCheckUtils]: 28: Hoare triple {7909#(<= base2flt_~e 127)} assume !(~e <= -128); {7909#(<= base2flt_~e 127)} is VALID [2022-02-21 03:10:00,995 INFO L290 TraceCheckUtils]: 29: Hoare triple {7909#(<= base2flt_~e 127)} assume !(~e - 1 <= 2147483647); {7891#false} is VALID [2022-02-21 03:10:00,995 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:00,995 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:00,996 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [296589709] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:00,996 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:00,996 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:00,996 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [461534705] [2022-02-21 03:10:00,996 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:00,997 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:00,997 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:00,998 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:01,013 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:01,014 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:01,014 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:01,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:01,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:01,015 INFO L87 Difference]: Start difference. First operand 199 states and 273 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:01,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:01,395 INFO L93 Difference]: Finished difference Result 229 states and 315 transitions. [2022-02-21 03:10:01,395 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:01,396 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:01,396 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:01,396 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:01,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 212 transitions. [2022-02-21 03:10:01,398 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:01,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 212 transitions. [2022-02-21 03:10:01,400 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 212 transitions. [2022-02-21 03:10:01,570 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:01,573 INFO L225 Difference]: With dead ends: 229 [2022-02-21 03:10:01,573 INFO L226 Difference]: Without dead ends: 226 [2022-02-21 03:10:01,574 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:01,574 INFO L933 BasicCegarLoop]: 105 mSDtfsCounter, 186 mSDsluCounter, 251 mSDsCounter, 0 mSdLazyCounter, 76 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 188 SdHoareTripleChecker+Valid, 356 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:01,574 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [188 Valid, 356 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:01,575 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 226 states. [2022-02-21 03:10:01,622 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 226 to 187. [2022-02-21 03:10:01,622 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:01,622 INFO L82 GeneralOperation]: Start isEquivalent. First operand 226 states. Second operand has 187 states, 165 states have (on average 1.4848484848484849) internal successors, (245), 179 states have internal predecessors, (245), 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:01,623 INFO L74 IsIncluded]: Start isIncluded. First operand 226 states. Second operand has 187 states, 165 states have (on average 1.4848484848484849) internal successors, (245), 179 states have internal predecessors, (245), 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:01,623 INFO L87 Difference]: Start difference. First operand 226 states. Second operand has 187 states, 165 states have (on average 1.4848484848484849) internal successors, (245), 179 states have internal predecessors, (245), 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:01,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:01,628 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-02-21 03:10:01,628 INFO L276 IsEmpty]: Start isEmpty. Operand 226 states and 310 transitions. [2022-02-21 03:10:01,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:01,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:01,629 INFO L74 IsIncluded]: Start isIncluded. First operand has 187 states, 165 states have (on average 1.4848484848484849) internal successors, (245), 179 states have internal predecessors, (245), 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 226 states. [2022-02-21 03:10:01,630 INFO L87 Difference]: Start difference. First operand has 187 states, 165 states have (on average 1.4848484848484849) internal successors, (245), 179 states have internal predecessors, (245), 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 226 states. [2022-02-21 03:10:01,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:01,635 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-02-21 03:10:01,635 INFO L276 IsEmpty]: Start isEmpty. Operand 226 states and 310 transitions. [2022-02-21 03:10:01,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:01,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:01,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:01,636 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:01,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 187 states, 165 states have (on average 1.4848484848484849) internal successors, (245), 179 states have internal predecessors, (245), 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:01,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 187 states to 187 states and 253 transitions. [2022-02-21 03:10:01,639 INFO L78 Accepts]: Start accepts. Automaton has 187 states and 253 transitions. Word has length 30 [2022-02-21 03:10:01,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:01,640 INFO L470 AbstractCegarLoop]: Abstraction has 187 states and 253 transitions. [2022-02-21 03:10:01,640 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:01,640 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 253 transitions. [2022-02-21 03:10:01,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-21 03:10:01,641 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:01,641 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:01,666 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:01,862 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:01,862 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:01,863 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:01,863 INFO L85 PathProgramCache]: Analyzing trace with hash -1870081449, now seen corresponding path program 1 times [2022-02-21 03:10:01,863 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:01,863 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [907879061] [2022-02-21 03:10:01,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:01,863 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:01,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:01,909 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:01,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:01,931 INFO L290 TraceCheckUtils]: 0: Hoare triple {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,932 INFO L290 TraceCheckUtils]: 1: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:01,932 INFO L290 TraceCheckUtils]: 2: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,932 INFO L290 TraceCheckUtils]: 3: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:01,933 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #378#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,933 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:01,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:01,940 INFO L290 TraceCheckUtils]: 0: Hoare triple {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,940 INFO L290 TraceCheckUtils]: 1: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:01,940 INFO L290 TraceCheckUtils]: 2: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,940 INFO L290 TraceCheckUtils]: 3: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:01,941 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #380#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,941 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 16 [2022-02-21 03:10:01,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:01,946 INFO L290 TraceCheckUtils]: 0: Hoare triple {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,947 INFO L290 TraceCheckUtils]: 1: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:01,947 INFO L290 TraceCheckUtils]: 2: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,947 INFO L290 TraceCheckUtils]: 3: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:01,948 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #382#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,948 INFO L290 TraceCheckUtils]: 0: Hoare triple {8925#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); {8925#true} is VALID [2022-02-21 03:10:01,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {8925#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,949 INFO L272 TraceCheckUtils]: 2: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:01,949 INFO L290 TraceCheckUtils]: 3: Hoare triple {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,949 INFO L290 TraceCheckUtils]: 4: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:01,949 INFO L290 TraceCheckUtils]: 5: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,949 INFO L290 TraceCheckUtils]: 6: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:01,950 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #378#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,950 INFO L290 TraceCheckUtils]: 8: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,951 INFO L272 TraceCheckUtils]: 9: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:01,951 INFO L290 TraceCheckUtils]: 10: Hoare triple {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,951 INFO L290 TraceCheckUtils]: 11: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:01,951 INFO L290 TraceCheckUtils]: 12: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,952 INFO L290 TraceCheckUtils]: 13: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:01,952 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #380#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,953 INFO L290 TraceCheckUtils]: 15: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,953 INFO L272 TraceCheckUtils]: 16: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:01,953 INFO L290 TraceCheckUtils]: 17: Hoare triple {8945#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,953 INFO L290 TraceCheckUtils]: 18: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:01,954 INFO L290 TraceCheckUtils]: 19: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:01,954 INFO L290 TraceCheckUtils]: 20: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:01,954 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #382#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,955 INFO L290 TraceCheckUtils]: 22: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:01,955 INFO L272 TraceCheckUtils]: 23: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {8943#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:01,956 INFO L290 TraceCheckUtils]: 24: Hoare triple {8943#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,956 INFO L290 TraceCheckUtils]: 25: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,957 INFO L290 TraceCheckUtils]: 26: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,957 INFO L290 TraceCheckUtils]: 27: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !false; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,957 INFO L290 TraceCheckUtils]: 28: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,958 INFO L290 TraceCheckUtils]: 29: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,958 INFO L290 TraceCheckUtils]: 30: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:01,958 INFO L290 TraceCheckUtils]: 31: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {8926#false} is VALID [2022-02-21 03:10:01,959 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:01,959 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:01,959 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [907879061] [2022-02-21 03:10:01,959 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [907879061] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:01,959 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1428895814] [2022-02-21 03:10:01,959 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:01,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:01,960 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:01,961 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:01,987 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:02,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,021 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-21 03:10:02,031 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:02,033 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:02,156 INFO L290 TraceCheckUtils]: 0: Hoare triple {8925#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); {8925#true} is VALID [2022-02-21 03:10:02,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {8925#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,157 INFO L272 TraceCheckUtils]: 2: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret22#1 := base2flt(0, 0); {8925#true} is VALID [2022-02-21 03:10:02,157 INFO L290 TraceCheckUtils]: 3: Hoare triple {8925#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:02,157 INFO L290 TraceCheckUtils]: 4: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:02,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:02,158 INFO L290 TraceCheckUtils]: 6: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:02,158 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #378#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,159 INFO L290 TraceCheckUtils]: 8: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,159 INFO L272 TraceCheckUtils]: 9: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret23#1 := base2flt(1, 0); {8925#true} is VALID [2022-02-21 03:10:02,159 INFO L290 TraceCheckUtils]: 10: Hoare triple {8925#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:02,159 INFO L290 TraceCheckUtils]: 11: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:02,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:02,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:02,160 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #380#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,160 INFO L290 TraceCheckUtils]: 15: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,161 INFO L272 TraceCheckUtils]: 16: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {8925#true} is VALID [2022-02-21 03:10:02,161 INFO L290 TraceCheckUtils]: 17: Hoare triple {8925#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:02,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {8925#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {8925#true} is VALID [2022-02-21 03:10:02,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {8925#true} #res := ~__retres4~0; {8925#true} is VALID [2022-02-21 03:10:02,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {8925#true} assume true; {8925#true} is VALID [2022-02-21 03:10:02,162 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8925#true} {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} #382#return; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,162 INFO L290 TraceCheckUtils]: 22: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} is VALID [2022-02-21 03:10:02,163 INFO L272 TraceCheckUtils]: 23: Hoare triple {8927#(<= 0 (+ |ULTIMATE.start_main_~eb~2#1| 128))} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {8943#(<= 0 (+ 128 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:02,163 INFO L290 TraceCheckUtils]: 24: Hoare triple {8943#(<= 0 (+ 128 |base2flt_#in~e|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(0 == ~m % 4294967296); {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,164 INFO L290 TraceCheckUtils]: 26: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(~m % 4294967296 < 16777216); {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,164 INFO L290 TraceCheckUtils]: 27: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !false; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,164 INFO L290 TraceCheckUtils]: 28: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume ~m % 4294967296 >= 33554432; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,165 INFO L290 TraceCheckUtils]: 29: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(~e >= 127); {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume 1 + ~e <= 2147483647; {8944#(<= 0 (+ 128 base2flt_~e))} is VALID [2022-02-21 03:10:02,171 INFO L290 TraceCheckUtils]: 31: Hoare triple {8944#(<= 0 (+ 128 base2flt_~e))} assume !(1 + ~e >= -2147483648); {8926#false} is VALID [2022-02-21 03:10:02,171 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:02,171 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:02,171 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1428895814] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:02,171 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:02,171 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 5 [2022-02-21 03:10:02,172 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [657087926] [2022-02-21 03:10:02,172 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:02,172 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:02,172 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:02,173 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:02,188 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:02,189 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-21 03:10:02,189 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:02,189 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-21 03:10:02,189 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-21 03:10:02,189 INFO L87 Difference]: Start difference. First operand 187 states and 253 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:02,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,631 INFO L93 Difference]: Finished difference Result 217 states and 294 transitions. [2022-02-21 03:10:02,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-21 03:10:02,631 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:02,631 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:02,631 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:02,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 205 transitions. [2022-02-21 03:10:02,633 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:02,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 205 transitions. [2022-02-21 03:10:02,635 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 205 transitions. [2022-02-21 03:10:02,797 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:02,800 INFO L225 Difference]: With dead ends: 217 [2022-02-21 03:10:02,800 INFO L226 Difference]: Without dead ends: 214 [2022-02-21 03:10:02,801 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:02,801 INFO L933 BasicCegarLoop]: 108 mSDtfsCounter, 166 mSDsluCounter, 254 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 168 SdHoareTripleChecker+Valid, 362 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:02,801 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [168 Valid, 362 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:02,802 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 214 states. [2022-02-21 03:10:02,864 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 214 to 176. [2022-02-21 03:10:02,864 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:02,865 INFO L82 GeneralOperation]: Start isEquivalent. First operand 214 states. Second operand has 176 states, 157 states have (on average 1.464968152866242) internal successors, (230), 168 states have internal predecessors, (230), 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:02,865 INFO L74 IsIncluded]: Start isIncluded. First operand 214 states. Second operand has 176 states, 157 states have (on average 1.464968152866242) internal successors, (230), 168 states have internal predecessors, (230), 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:02,866 INFO L87 Difference]: Start difference. First operand 214 states. Second operand has 176 states, 157 states have (on average 1.464968152866242) internal successors, (230), 168 states have internal predecessors, (230), 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:02,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,870 INFO L93 Difference]: Finished difference Result 214 states and 291 transitions. [2022-02-21 03:10:02,870 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 291 transitions. [2022-02-21 03:10:02,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:02,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:02,871 INFO L74 IsIncluded]: Start isIncluded. First operand has 176 states, 157 states have (on average 1.464968152866242) internal successors, (230), 168 states have internal predecessors, (230), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 214 states. [2022-02-21 03:10:02,871 INFO L87 Difference]: Start difference. First operand has 176 states, 157 states have (on average 1.464968152866242) internal successors, (230), 168 states have internal predecessors, (230), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 214 states. [2022-02-21 03:10:02,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:02,876 INFO L93 Difference]: Finished difference Result 214 states and 291 transitions. [2022-02-21 03:10:02,876 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 291 transitions. [2022-02-21 03:10:02,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:02,877 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:02,877 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:02,877 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:02,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 176 states, 157 states have (on average 1.464968152866242) internal successors, (230), 168 states have internal predecessors, (230), 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:02,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 176 states to 176 states and 238 transitions. [2022-02-21 03:10:02,880 INFO L78 Accepts]: Start accepts. Automaton has 176 states and 238 transitions. Word has length 32 [2022-02-21 03:10:02,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:02,881 INFO L470 AbstractCegarLoop]: Abstraction has 176 states and 238 transitions. [2022-02-21 03:10:02,881 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:02,881 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 238 transitions. [2022-02-21 03:10:02,881 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-21 03:10:02,882 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:02,882 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, 1, 1] [2022-02-21 03:10:02,909 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:03,104 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:03,105 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:03,105 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:03,105 INFO L85 PathProgramCache]: Analyzing trace with hash -392453626, now seen corresponding path program 1 times [2022-02-21 03:10:03,105 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:03,106 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1291778660] [2022-02-21 03:10:03,106 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:03,106 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:03,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,149 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:03,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,156 INFO L290 TraceCheckUtils]: 0: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,156 INFO L290 TraceCheckUtils]: 1: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,156 INFO L290 TraceCheckUtils]: 2: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,156 INFO L290 TraceCheckUtils]: 3: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,157 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9917#true} {9917#true} #378#return; {9917#true} is VALID [2022-02-21 03:10:03,157 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:03,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,189 INFO L290 TraceCheckUtils]: 0: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9940#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:03,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {9940#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9941#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:03,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {9941#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {9941#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:03,190 INFO L290 TraceCheckUtils]: 3: Hoare triple {9941#(not (= |base2flt_#in~m| 1))} assume true; {9941#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:03,191 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9941#(not (= |base2flt_#in~m| 1))} {9917#true} #380#return; {9918#false} is VALID [2022-02-21 03:10:03,191 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 16 [2022-02-21 03:10:03,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,202 INFO L290 TraceCheckUtils]: 0: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,203 INFO L290 TraceCheckUtils]: 3: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,203 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9917#true} {9918#false} #382#return; {9918#false} is VALID [2022-02-21 03:10:03,203 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-02-21 03:10:03,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,209 INFO L290 TraceCheckUtils]: 0: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,209 INFO L290 TraceCheckUtils]: 1: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,210 INFO L290 TraceCheckUtils]: 2: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,210 INFO L290 TraceCheckUtils]: 3: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,210 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9917#true} {9918#false} #384#return; {9918#false} is VALID [2022-02-21 03:10:03,211 INFO L290 TraceCheckUtils]: 0: Hoare triple {9917#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); {9917#true} is VALID [2022-02-21 03:10:03,211 INFO L290 TraceCheckUtils]: 1: Hoare triple {9917#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {9917#true} is VALID [2022-02-21 03:10:03,211 INFO L272 TraceCheckUtils]: 2: Hoare triple {9917#true} call main_#t~ret22#1 := base2flt(0, 0); {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,211 INFO L290 TraceCheckUtils]: 3: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,212 INFO L290 TraceCheckUtils]: 4: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,212 INFO L290 TraceCheckUtils]: 5: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,212 INFO L290 TraceCheckUtils]: 6: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,212 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9917#true} {9917#true} #378#return; {9917#true} is VALID [2022-02-21 03:10:03,212 INFO L290 TraceCheckUtils]: 8: Hoare triple {9917#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9917#true} is VALID [2022-02-21 03:10:03,213 INFO L272 TraceCheckUtils]: 9: Hoare triple {9917#true} call main_#t~ret23#1 := base2flt(1, 0); {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,213 INFO L290 TraceCheckUtils]: 10: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9940#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:03,213 INFO L290 TraceCheckUtils]: 11: Hoare triple {9940#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9941#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:03,214 INFO L290 TraceCheckUtils]: 12: Hoare triple {9941#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {9941#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:03,214 INFO L290 TraceCheckUtils]: 13: Hoare triple {9941#(not (= |base2flt_#in~m| 1))} assume true; {9941#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:03,215 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {9941#(not (= |base2flt_#in~m| 1))} {9917#true} #380#return; {9918#false} is VALID [2022-02-21 03:10:03,215 INFO L290 TraceCheckUtils]: 15: Hoare triple {9918#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9918#false} is VALID [2022-02-21 03:10:03,215 INFO L272 TraceCheckUtils]: 16: Hoare triple {9918#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,215 INFO L290 TraceCheckUtils]: 17: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,215 INFO L290 TraceCheckUtils]: 18: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,215 INFO L290 TraceCheckUtils]: 19: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,215 INFO L290 TraceCheckUtils]: 20: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,216 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9917#true} {9918#false} #382#return; {9918#false} is VALID [2022-02-21 03:10:03,216 INFO L290 TraceCheckUtils]: 22: Hoare triple {9918#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {9918#false} is VALID [2022-02-21 03:10:03,216 INFO L272 TraceCheckUtils]: 23: Hoare triple {9918#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:03,216 INFO L290 TraceCheckUtils]: 24: Hoare triple {9939#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,216 INFO L290 TraceCheckUtils]: 25: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,216 INFO L290 TraceCheckUtils]: 26: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,216 INFO L290 TraceCheckUtils]: 27: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,216 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {9917#true} {9918#false} #384#return; {9918#false} is VALID [2022-02-21 03:10:03,218 INFO L290 TraceCheckUtils]: 29: Hoare triple {9918#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {9918#false} is VALID [2022-02-21 03:10:03,218 INFO L290 TraceCheckUtils]: 30: Hoare triple {9918#false} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {9918#false} is VALID [2022-02-21 03:10:03,218 INFO L290 TraceCheckUtils]: 31: Hoare triple {9918#false} 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; {9918#false} is VALID [2022-02-21 03:10:03,218 INFO L290 TraceCheckUtils]: 32: Hoare triple {9918#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; {9918#false} is VALID [2022-02-21 03:10:03,218 INFO L290 TraceCheckUtils]: 33: Hoare triple {9918#false} assume !(0 == mulflt_~b#1 % 4294967296); {9918#false} is VALID [2022-02-21 03:10:03,219 INFO L290 TraceCheckUtils]: 34: Hoare triple {9918#false} assume 0 == mulflt_~a#1;mulflt_~ma~1#1 := 0; {9918#false} is VALID [2022-02-21 03:10:03,223 INFO L290 TraceCheckUtils]: 35: Hoare triple {9918#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; {9918#false} is VALID [2022-02-21 03:10:03,223 INFO L290 TraceCheckUtils]: 36: Hoare triple {9918#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); {9918#false} is VALID [2022-02-21 03:10:03,223 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:03,223 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:03,224 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1291778660] [2022-02-21 03:10:03,224 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1291778660] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:03,224 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [129497173] [2022-02-21 03:10:03,224 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:03,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:03,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:03,228 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:03,229 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:03,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,283 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-21 03:10:03,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:03,296 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:03,481 INFO L290 TraceCheckUtils]: 0: Hoare triple {9917#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); {9917#true} is VALID [2022-02-21 03:10:03,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {9917#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {9917#true} is VALID [2022-02-21 03:10:03,482 INFO L272 TraceCheckUtils]: 2: Hoare triple {9917#true} call main_#t~ret22#1 := base2flt(0, 0); {9917#true} is VALID [2022-02-21 03:10:03,482 INFO L290 TraceCheckUtils]: 3: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9954#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:03,483 INFO L290 TraceCheckUtils]: 4: Hoare triple {9954#(= base2flt_~m |base2flt_#in~m|)} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9958#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:03,484 INFO L290 TraceCheckUtils]: 5: Hoare triple {9958#(<= (mod |base2flt_#in~m| 4294967296) 0)} #res := ~__retres4~0; {9958#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:03,484 INFO L290 TraceCheckUtils]: 6: Hoare triple {9958#(<= (mod |base2flt_#in~m| 4294967296) 0)} assume true; {9958#(<= (mod |base2flt_#in~m| 4294967296) 0)} is VALID [2022-02-21 03:10:03,484 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9958#(<= (mod |base2flt_#in~m| 4294967296) 0)} {9917#true} #378#return; {9917#true} is VALID [2022-02-21 03:10:03,484 INFO L290 TraceCheckUtils]: 8: Hoare triple {9917#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9917#true} is VALID [2022-02-21 03:10:03,484 INFO L272 TraceCheckUtils]: 9: Hoare triple {9917#true} call main_#t~ret23#1 := base2flt(1, 0); {9917#true} is VALID [2022-02-21 03:10:03,484 INFO L290 TraceCheckUtils]: 10: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,484 INFO L290 TraceCheckUtils]: 11: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,485 INFO L290 TraceCheckUtils]: 12: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,485 INFO L290 TraceCheckUtils]: 13: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,485 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {9917#true} {9917#true} #380#return; {9917#true} is VALID [2022-02-21 03:10:03,485 INFO L290 TraceCheckUtils]: 15: Hoare triple {9917#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9917#true} is VALID [2022-02-21 03:10:03,485 INFO L272 TraceCheckUtils]: 16: Hoare triple {9917#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9917#true} is VALID [2022-02-21 03:10:03,485 INFO L290 TraceCheckUtils]: 17: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,486 INFO L290 TraceCheckUtils]: 18: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {10001#(= base2flt_~__retres4~0 0)} is VALID [2022-02-21 03:10:03,486 INFO L290 TraceCheckUtils]: 19: Hoare triple {10001#(= base2flt_~__retres4~0 0)} #res := ~__retres4~0; {10005#(= |base2flt_#res| 0)} is VALID [2022-02-21 03:10:03,487 INFO L290 TraceCheckUtils]: 20: Hoare triple {10005#(= |base2flt_#res| 0)} assume true; {10005#(= |base2flt_#res| 0)} is VALID [2022-02-21 03:10:03,487 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10005#(= |base2flt_#res| 0)} {9917#true} #382#return; {10012#(= |ULTIMATE.start_main_#t~ret24#1| 0)} is VALID [2022-02-21 03:10:03,488 INFO L290 TraceCheckUtils]: 22: Hoare triple {10012#(= |ULTIMATE.start_main_#t~ret24#1| 0)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} is VALID [2022-02-21 03:10:03,488 INFO L272 TraceCheckUtils]: 23: Hoare triple {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {9917#true} is VALID [2022-02-21 03:10:03,488 INFO L290 TraceCheckUtils]: 24: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,488 INFO L290 TraceCheckUtils]: 25: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,488 INFO L290 TraceCheckUtils]: 26: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,488 INFO L290 TraceCheckUtils]: 27: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,489 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {9917#true} {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} #384#return; {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} is VALID [2022-02-21 03:10:03,489 INFO L290 TraceCheckUtils]: 29: Hoare triple {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} is VALID [2022-02-21 03:10:03,490 INFO L290 TraceCheckUtils]: 30: Hoare triple {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} is VALID [2022-02-21 03:10:03,490 INFO L290 TraceCheckUtils]: 31: Hoare triple {10016#(= |ULTIMATE.start_main_~a~0#1| 0)} 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; {10044#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:03,490 INFO L290 TraceCheckUtils]: 32: Hoare triple {10044#(= |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; {10048#(= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:03,491 INFO L290 TraceCheckUtils]: 33: Hoare triple {10048#(= |ULTIMATE.start_mulflt_~b#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {9918#false} is VALID [2022-02-21 03:10:03,491 INFO L290 TraceCheckUtils]: 34: Hoare triple {9918#false} assume 0 == mulflt_~a#1;mulflt_~ma~1#1 := 0; {9918#false} is VALID [2022-02-21 03:10:03,491 INFO L290 TraceCheckUtils]: 35: Hoare triple {9918#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; {9918#false} is VALID [2022-02-21 03:10:03,491 INFO L290 TraceCheckUtils]: 36: Hoare triple {9918#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); {9918#false} is VALID [2022-02-21 03:10:03,491 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:03,491 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:03,784 INFO L290 TraceCheckUtils]: 36: Hoare triple {9918#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); {9918#false} is VALID [2022-02-21 03:10:03,784 INFO L290 TraceCheckUtils]: 35: Hoare triple {9918#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; {9918#false} is VALID [2022-02-21 03:10:03,784 INFO L290 TraceCheckUtils]: 34: Hoare triple {9918#false} assume 0 == mulflt_~a#1;mulflt_~ma~1#1 := 0; {9918#false} is VALID [2022-02-21 03:10:03,785 INFO L290 TraceCheckUtils]: 33: Hoare triple {10070#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} assume !(0 == mulflt_~b#1 % 4294967296); {9918#false} is VALID [2022-02-21 03:10:03,785 INFO L290 TraceCheckUtils]: 32: Hoare triple {10074#(= (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; {10070#(= (mod |ULTIMATE.start_mulflt_~b#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,786 INFO L290 TraceCheckUtils]: 31: Hoare triple {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} 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; {10074#(= (mod |ULTIMATE.start_mulflt_~a#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,786 INFO L290 TraceCheckUtils]: 30: Hoare triple {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,787 INFO L290 TraceCheckUtils]: 29: Hoare triple {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,788 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {9917#true} {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} #384#return; {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,788 INFO L290 TraceCheckUtils]: 27: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,788 INFO L290 TraceCheckUtils]: 26: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,788 INFO L290 TraceCheckUtils]: 25: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,788 INFO L290 TraceCheckUtils]: 24: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,788 INFO L272 TraceCheckUtils]: 23: Hoare triple {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {9917#true} is VALID [2022-02-21 03:10:03,789 INFO L290 TraceCheckUtils]: 22: Hoare triple {10106#(= (mod |ULTIMATE.start_main_#t~ret24#1| 4294967296) 0)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {10078#(= (mod |ULTIMATE.start_main_~a~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,790 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10113#(= (mod |base2flt_#res| 4294967296) 0)} {9917#true} #382#return; {10106#(= (mod |ULTIMATE.start_main_#t~ret24#1| 4294967296) 0)} is VALID [2022-02-21 03:10:03,790 INFO L290 TraceCheckUtils]: 20: Hoare triple {10113#(= (mod |base2flt_#res| 4294967296) 0)} assume true; {10113#(= (mod |base2flt_#res| 4294967296) 0)} is VALID [2022-02-21 03:10:03,791 INFO L290 TraceCheckUtils]: 19: Hoare triple {10120#(= (mod base2flt_~__retres4~0 4294967296) 0)} #res := ~__retres4~0; {10113#(= (mod |base2flt_#res| 4294967296) 0)} is VALID [2022-02-21 03:10:03,791 INFO L290 TraceCheckUtils]: 18: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {10120#(= (mod base2flt_~__retres4~0 4294967296) 0)} is VALID [2022-02-21 03:10:03,792 INFO L290 TraceCheckUtils]: 17: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,792 INFO L272 TraceCheckUtils]: 16: Hoare triple {9917#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {9917#true} is VALID [2022-02-21 03:10:03,792 INFO L290 TraceCheckUtils]: 15: Hoare triple {9917#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {9917#true} is VALID [2022-02-21 03:10:03,792 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {9917#true} {9917#true} #380#return; {9917#true} is VALID [2022-02-21 03:10:03,792 INFO L290 TraceCheckUtils]: 13: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,792 INFO L290 TraceCheckUtils]: 12: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,793 INFO L290 TraceCheckUtils]: 11: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,793 INFO L290 TraceCheckUtils]: 10: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,793 INFO L272 TraceCheckUtils]: 9: Hoare triple {9917#true} call main_#t~ret23#1 := base2flt(1, 0); {9917#true} is VALID [2022-02-21 03:10:03,793 INFO L290 TraceCheckUtils]: 8: Hoare triple {9917#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {9917#true} is VALID [2022-02-21 03:10:03,793 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9917#true} {9917#true} #378#return; {9917#true} is VALID [2022-02-21 03:10:03,793 INFO L290 TraceCheckUtils]: 6: Hoare triple {9917#true} assume true; {9917#true} is VALID [2022-02-21 03:10:03,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {9917#true} #res := ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,794 INFO L290 TraceCheckUtils]: 4: Hoare triple {9917#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {9917#true} is VALID [2022-02-21 03:10:03,794 INFO L290 TraceCheckUtils]: 3: Hoare triple {9917#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {9917#true} is VALID [2022-02-21 03:10:03,794 INFO L272 TraceCheckUtils]: 2: Hoare triple {9917#true} call main_#t~ret22#1 := base2flt(0, 0); {9917#true} is VALID [2022-02-21 03:10:03,794 INFO L290 TraceCheckUtils]: 1: Hoare triple {9917#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {9917#true} is VALID [2022-02-21 03:10:03,794 INFO L290 TraceCheckUtils]: 0: Hoare triple {9917#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); {9917#true} is VALID [2022-02-21 03:10:03,795 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:03,795 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [129497173] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:03,795 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:03,795 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 10, 8] total 19 [2022-02-21 03:10:03,795 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [264679751] [2022-02-21 03:10:03,796 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:03,796 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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 37 [2022-02-21 03:10:03,797 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:03,798 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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:03,849 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:03,849 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-02-21 03:10:03,849 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:03,850 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-02-21 03:10:03,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=299, Unknown=0, NotChecked=0, Total=342 [2022-02-21 03:10:03,850 INFO L87 Difference]: Start difference. First operand 176 states and 238 transitions. Second operand has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:06,162 INFO L93 Difference]: Finished difference Result 793 states and 1039 transitions. [2022-02-21 03:10:06,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-02-21 03:10:06,162 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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 37 [2022-02-21 03:10:06,163 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:06,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 590 transitions. [2022-02-21 03:10:06,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 590 transitions. [2022-02-21 03:10:06,177 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 590 transitions. [2022-02-21 03:10:06,680 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 590 edges. 590 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:06,714 INFO L225 Difference]: With dead ends: 793 [2022-02-21 03:10:06,714 INFO L226 Difference]: Without dead ends: 531 [2022-02-21 03:10:06,715 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 251 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=227, Invalid=1255, Unknown=0, NotChecked=0, Total=1482 [2022-02-21 03:10:06,715 INFO L933 BasicCegarLoop]: 109 mSDtfsCounter, 436 mSDsluCounter, 1233 mSDsCounter, 0 mSdLazyCounter, 531 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 436 SdHoareTripleChecker+Valid, 1342 SdHoareTripleChecker+Invalid, 573 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 531 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:06,716 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [436 Valid, 1342 Invalid, 573 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 531 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-21 03:10:06,717 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 531 states. [2022-02-21 03:10:06,788 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 531 to 199. [2022-02-21 03:10:06,788 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:06,789 INFO L82 GeneralOperation]: Start isEquivalent. First operand 531 states. Second operand has 199 states, 179 states have (on average 1.4189944134078212) internal successors, (254), 190 states have internal predecessors, (254), 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:06,790 INFO L74 IsIncluded]: Start isIncluded. First operand 531 states. Second operand has 199 states, 179 states have (on average 1.4189944134078212) internal successors, (254), 190 states have internal predecessors, (254), 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:06,790 INFO L87 Difference]: Start difference. First operand 531 states. Second operand has 199 states, 179 states have (on average 1.4189944134078212) internal successors, (254), 190 states have internal predecessors, (254), 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:06,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:06,805 INFO L93 Difference]: Finished difference Result 531 states and 663 transitions. [2022-02-21 03:10:06,805 INFO L276 IsEmpty]: Start isEmpty. Operand 531 states and 663 transitions. [2022-02-21 03:10:06,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:06,807 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:06,807 INFO L74 IsIncluded]: Start isIncluded. First operand has 199 states, 179 states have (on average 1.4189944134078212) internal successors, (254), 190 states have internal predecessors, (254), 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 531 states. [2022-02-21 03:10:06,808 INFO L87 Difference]: Start difference. First operand has 199 states, 179 states have (on average 1.4189944134078212) internal successors, (254), 190 states have internal predecessors, (254), 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 531 states. [2022-02-21 03:10:06,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:06,823 INFO L93 Difference]: Finished difference Result 531 states and 663 transitions. [2022-02-21 03:10:06,824 INFO L276 IsEmpty]: Start isEmpty. Operand 531 states and 663 transitions. [2022-02-21 03:10:06,825 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:06,825 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:06,825 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:06,826 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:06,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 199 states, 179 states have (on average 1.4189944134078212) internal successors, (254), 190 states have internal predecessors, (254), 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:06,829 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 262 transitions. [2022-02-21 03:10:06,830 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 262 transitions. Word has length 37 [2022-02-21 03:10:06,830 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:06,830 INFO L470 AbstractCegarLoop]: Abstraction has 199 states and 262 transitions. [2022-02-21 03:10:06,830 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.3684210526315788) internal successors, (45), 16 states have internal predecessors, (45), 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,830 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 262 transitions. [2022-02-21 03:10:06,832 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-02-21 03:10:06,832 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:06,832 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, 1, 1] [2022-02-21 03:10:06,862 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:07,059 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:07,060 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:07,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:07,060 INFO L85 PathProgramCache]: Analyzing trace with hash -1867874532, now seen corresponding path program 1 times [2022-02-21 03:10:07,060 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:07,060 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1381304797] [2022-02-21 03:10:07,060 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:07,060 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:07,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,145 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:07,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,149 INFO L290 TraceCheckUtils]: 0: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {12399#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12399#true} is VALID [2022-02-21 03:10:07,150 INFO L290 TraceCheckUtils]: 2: Hoare triple {12399#true} #res := ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,150 INFO L290 TraceCheckUtils]: 3: Hoare triple {12399#true} assume true; {12399#true} is VALID [2022-02-21 03:10:07,150 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {12399#true} {12399#true} #378#return; {12399#true} is VALID [2022-02-21 03:10:07,151 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:07,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,159 INFO L290 TraceCheckUtils]: 0: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,159 INFO L290 TraceCheckUtils]: 1: Hoare triple {12399#true} assume !(0 == ~m % 4294967296); {12399#true} is VALID [2022-02-21 03:10:07,159 INFO L290 TraceCheckUtils]: 2: Hoare triple {12399#true} assume ~m % 4294967296 < 16777216; {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 3: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 4: Hoare triple {12399#true} assume !(~e <= -128); {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 5: Hoare triple {12399#true} assume ~e - 1 <= 2147483647; {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 6: Hoare triple {12399#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 7: Hoare triple {12399#true} assume ~m % 4294967296 < 16777216; {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 8: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,160 INFO L290 TraceCheckUtils]: 9: Hoare triple {12399#true} assume !(~e <= -128); {12399#true} is VALID [2022-02-21 03:10:07,161 INFO L290 TraceCheckUtils]: 10: Hoare triple {12399#true} assume ~e - 1 <= 2147483647; {12399#true} is VALID [2022-02-21 03:10:07,161 INFO L290 TraceCheckUtils]: 11: Hoare triple {12399#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12399#true} is VALID [2022-02-21 03:10:07,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {12399#true} assume ~m % 4294967296 < 16777216; {12399#true} is VALID [2022-02-21 03:10:07,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {12399#true} assume ~e <= -128;~__retres4~0 := 0; {12399#true} is VALID [2022-02-21 03:10:07,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {12399#true} #res := ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,162 INFO L290 TraceCheckUtils]: 16: Hoare triple {12399#true} assume true; {12399#true} is VALID [2022-02-21 03:10:07,162 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {12399#true} {12399#true} #380#return; {12399#true} is VALID [2022-02-21 03:10:07,162 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-21 03:10:07,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,167 INFO L290 TraceCheckUtils]: 0: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {12399#true} assume !(0 == ~m % 4294967296); {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 2: Hoare triple {12399#true} assume !(~m % 4294967296 < 16777216); {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 3: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 4: Hoare triple {12399#true} assume ~m % 4294967296 >= 33554432; {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 5: Hoare triple {12399#true} assume ~e >= 127;~__retres4~0 := 4294967295; {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 6: Hoare triple {12399#true} #res := ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,168 INFO L290 TraceCheckUtils]: 7: Hoare triple {12399#true} assume true; {12399#true} is VALID [2022-02-21 03:10:07,169 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {12399#true} {12399#true} #382#return; {12399#true} is VALID [2022-02-21 03:10:07,169 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-21 03:10:07,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:07,200 INFO L290 TraceCheckUtils]: 0: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {12399#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12443#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} is VALID [2022-02-21 03:10:07,201 INFO L290 TraceCheckUtils]: 2: Hoare triple {12443#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} #res := ~__retres4~0; {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:07,202 INFO L290 TraceCheckUtils]: 3: Hoare triple {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} assume true; {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:07,202 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} {12399#true} #384#return; {12438#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:07,203 INFO L290 TraceCheckUtils]: 0: Hoare triple {12399#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); {12399#true} is VALID [2022-02-21 03:10:07,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {12399#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {12399#true} is VALID [2022-02-21 03:10:07,203 INFO L272 TraceCheckUtils]: 2: Hoare triple {12399#true} call main_#t~ret22#1 := base2flt(0, 0); {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:07,203 INFO L290 TraceCheckUtils]: 3: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,203 INFO L290 TraceCheckUtils]: 4: Hoare triple {12399#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12399#true} is VALID [2022-02-21 03:10:07,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {12399#true} #res := ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,203 INFO L290 TraceCheckUtils]: 6: Hoare triple {12399#true} assume true; {12399#true} is VALID [2022-02-21 03:10:07,204 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {12399#true} {12399#true} #378#return; {12399#true} is VALID [2022-02-21 03:10:07,204 INFO L290 TraceCheckUtils]: 8: Hoare triple {12399#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {12399#true} is VALID [2022-02-21 03:10:07,204 INFO L272 TraceCheckUtils]: 9: Hoare triple {12399#true} call main_#t~ret23#1 := base2flt(1, 0); {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:07,204 INFO L290 TraceCheckUtils]: 10: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,204 INFO L290 TraceCheckUtils]: 11: Hoare triple {12399#true} assume !(0 == ~m % 4294967296); {12399#true} is VALID [2022-02-21 03:10:07,204 INFO L290 TraceCheckUtils]: 12: Hoare triple {12399#true} assume ~m % 4294967296 < 16777216; {12399#true} is VALID [2022-02-21 03:10:07,204 INFO L290 TraceCheckUtils]: 13: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 14: Hoare triple {12399#true} assume !(~e <= -128); {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 15: Hoare triple {12399#true} assume ~e - 1 <= 2147483647; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 16: Hoare triple {12399#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 17: Hoare triple {12399#true} assume ~m % 4294967296 < 16777216; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 18: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 19: Hoare triple {12399#true} assume !(~e <= -128); {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 20: Hoare triple {12399#true} assume ~e - 1 <= 2147483647; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 21: Hoare triple {12399#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 22: Hoare triple {12399#true} assume ~m % 4294967296 < 16777216; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 23: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 24: Hoare triple {12399#true} assume ~e <= -128;~__retres4~0 := 0; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 25: Hoare triple {12399#true} #res := ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L290 TraceCheckUtils]: 26: Hoare triple {12399#true} assume true; {12399#true} is VALID [2022-02-21 03:10:07,205 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {12399#true} {12399#true} #380#return; {12399#true} is VALID [2022-02-21 03:10:07,206 INFO L290 TraceCheckUtils]: 28: Hoare triple {12399#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {12399#true} is VALID [2022-02-21 03:10:07,206 INFO L272 TraceCheckUtils]: 29: Hoare triple {12399#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:07,206 INFO L290 TraceCheckUtils]: 30: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,206 INFO L290 TraceCheckUtils]: 31: Hoare triple {12399#true} assume !(0 == ~m % 4294967296); {12399#true} is VALID [2022-02-21 03:10:07,206 INFO L290 TraceCheckUtils]: 32: Hoare triple {12399#true} assume !(~m % 4294967296 < 16777216); {12399#true} is VALID [2022-02-21 03:10:07,206 INFO L290 TraceCheckUtils]: 33: Hoare triple {12399#true} assume !false; {12399#true} is VALID [2022-02-21 03:10:07,206 INFO L290 TraceCheckUtils]: 34: Hoare triple {12399#true} assume ~m % 4294967296 >= 33554432; {12399#true} is VALID [2022-02-21 03:10:07,207 INFO L290 TraceCheckUtils]: 35: Hoare triple {12399#true} assume ~e >= 127;~__retres4~0 := 4294967295; {12399#true} is VALID [2022-02-21 03:10:07,207 INFO L290 TraceCheckUtils]: 36: Hoare triple {12399#true} #res := ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,207 INFO L290 TraceCheckUtils]: 37: Hoare triple {12399#true} assume true; {12399#true} is VALID [2022-02-21 03:10:07,207 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {12399#true} {12399#true} #382#return; {12399#true} is VALID [2022-02-21 03:10:07,207 INFO L290 TraceCheckUtils]: 39: Hoare triple {12399#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {12399#true} is VALID [2022-02-21 03:10:07,207 INFO L272 TraceCheckUtils]: 40: Hoare triple {12399#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:07,208 INFO L290 TraceCheckUtils]: 41: Hoare triple {12442#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {12399#true} is VALID [2022-02-21 03:10:07,208 INFO L290 TraceCheckUtils]: 42: Hoare triple {12399#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {12443#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} is VALID [2022-02-21 03:10:07,208 INFO L290 TraceCheckUtils]: 43: Hoare triple {12443#(and (<= base2flt_~__retres4~0 0) (<= 0 base2flt_~__retres4~0))} #res := ~__retres4~0; {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:07,209 INFO L290 TraceCheckUtils]: 44: Hoare triple {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} assume true; {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} is VALID [2022-02-21 03:10:07,209 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12444#(and (<= |base2flt_#res| 0) (<= 0 |base2flt_#res|))} {12399#true} #384#return; {12438#(= |ULTIMATE.start_main_#t~ret25#1| 0)} is VALID [2022-02-21 03:10:07,210 INFO L290 TraceCheckUtils]: 46: Hoare triple {12438#(= |ULTIMATE.start_main_#t~ret25#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {12439#(= |ULTIMATE.start_main_~b~0#1| 0)} is VALID [2022-02-21 03:10:07,210 INFO L290 TraceCheckUtils]: 47: Hoare triple {12439#(= |ULTIMATE.start_main_~b~0#1| 0)} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {12439#(= |ULTIMATE.start_main_~b~0#1| 0)} is VALID [2022-02-21 03:10:07,210 INFO L290 TraceCheckUtils]: 48: Hoare triple {12439#(= |ULTIMATE.start_main_~b~0#1| 0)} 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; {12440#(= |ULTIMATE.start_mulflt_~b#1| 0)} is VALID [2022-02-21 03:10:07,211 INFO L290 TraceCheckUtils]: 49: Hoare triple {12440#(= |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; {12441#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:07,211 INFO L290 TraceCheckUtils]: 50: Hoare triple {12441#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~b#1 % 4294967296); {12441#(= |ULTIMATE.start_mulflt_~a#1| 0)} is VALID [2022-02-21 03:10:07,211 INFO L290 TraceCheckUtils]: 51: Hoare triple {12441#(= |ULTIMATE.start_mulflt_~a#1| 0)} assume !(0 == mulflt_~a#1); {12400#false} is VALID [2022-02-21 03:10:07,211 INFO L290 TraceCheckUtils]: 52: Hoare triple {12400#false} assume !false; {12400#false} is VALID [2022-02-21 03:10:07,211 INFO L290 TraceCheckUtils]: 53: Hoare triple {12400#false} assume !false; {12400#false} is VALID [2022-02-21 03:10:07,212 INFO L290 TraceCheckUtils]: 54: Hoare triple {12400#false} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {12400#false} is VALID [2022-02-21 03:10:07,212 INFO L290 TraceCheckUtils]: 55: Hoare triple {12400#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; {12400#false} is VALID [2022-02-21 03:10:07,212 INFO L290 TraceCheckUtils]: 56: Hoare triple {12400#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); {12400#false} is VALID [2022-02-21 03:10:07,212 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:07,212 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:07,212 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1381304797] [2022-02-21 03:10:07,213 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1381304797] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:07,213 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-21 03:10:07,213 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-21 03:10:07,213 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2070495552] [2022-02-21 03:10:07,213 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:07,214 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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 57 [2022-02-21 03:10:07,214 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:07,214 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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:07,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:07,242 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-21 03:10:07,242 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:07,242 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-21 03:10:07,243 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2022-02-21 03:10:07,243 INFO L87 Difference]: Start difference. First operand 199 states and 262 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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:08,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:08,019 INFO L93 Difference]: Finished difference Result 437 states and 543 transitions. [2022-02-21 03:10:08,019 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-21 03:10:08,020 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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 57 [2022-02-21 03:10:08,020 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:08,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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:08,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 359 transitions. [2022-02-21 03:10:08,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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:08,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 359 transitions. [2022-02-21 03:10:08,026 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 359 transitions. [2022-02-21 03:10:08,303 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 359 edges. 359 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:08,311 INFO L225 Difference]: With dead ends: 437 [2022-02-21 03:10:08,312 INFO L226 Difference]: Without dead ends: 370 [2022-02-21 03:10:08,312 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-02-21 03:10:08,313 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 229 mSDsluCounter, 786 mSDsCounter, 0 mSdLazyCounter, 87 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 229 SdHoareTripleChecker+Valid, 906 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 87 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:08,313 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [229 Valid, 906 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 87 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:08,313 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 370 states. [2022-02-21 03:10:08,402 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 370 to 199. [2022-02-21 03:10:08,403 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:08,403 INFO L82 GeneralOperation]: Start isEquivalent. First operand 370 states. Second operand has 199 states, 179 states have (on average 1.4078212290502794) internal successors, (252), 190 states have internal predecessors, (252), 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:08,405 INFO L74 IsIncluded]: Start isIncluded. First operand 370 states. Second operand has 199 states, 179 states have (on average 1.4078212290502794) internal successors, (252), 190 states have internal predecessors, (252), 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:08,405 INFO L87 Difference]: Start difference. First operand 370 states. Second operand has 199 states, 179 states have (on average 1.4078212290502794) internal successors, (252), 190 states have internal predecessors, (252), 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:08,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:08,413 INFO L93 Difference]: Finished difference Result 370 states and 461 transitions. [2022-02-21 03:10:08,413 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 461 transitions. [2022-02-21 03:10:08,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:08,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:08,415 INFO L74 IsIncluded]: Start isIncluded. First operand has 199 states, 179 states have (on average 1.4078212290502794) internal successors, (252), 190 states have internal predecessors, (252), 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 370 states. [2022-02-21 03:10:08,415 INFO L87 Difference]: Start difference. First operand has 199 states, 179 states have (on average 1.4078212290502794) internal successors, (252), 190 states have internal predecessors, (252), 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 370 states. [2022-02-21 03:10:08,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:08,423 INFO L93 Difference]: Finished difference Result 370 states and 461 transitions. [2022-02-21 03:10:08,423 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 461 transitions. [2022-02-21 03:10:08,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:08,424 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:08,424 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:08,424 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:08,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 199 states, 179 states have (on average 1.4078212290502794) internal successors, (252), 190 states have internal predecessors, (252), 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:08,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 260 transitions. [2022-02-21 03:10:08,429 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 260 transitions. Word has length 57 [2022-02-21 03:10:08,430 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:08,430 INFO L470 AbstractCegarLoop]: Abstraction has 199 states and 260 transitions. [2022-02-21 03:10:08,430 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 7 states have internal predecessors, (35), 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:08,430 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 260 transitions. [2022-02-21 03:10:08,431 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-21 03:10:08,431 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:08,431 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, 1, 1] [2022-02-21 03:10:08,432 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-21 03:10:08,432 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:08,432 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:08,432 INFO L85 PathProgramCache]: Analyzing trace with hash -1303124915, now seen corresponding path program 2 times [2022-02-21 03:10:08,432 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:08,433 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [338119711] [2022-02-21 03:10:08,433 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:08,433 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:08,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:08,472 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:08,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:08,476 INFO L290 TraceCheckUtils]: 0: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {13890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13890#true} is VALID [2022-02-21 03:10:08,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,476 INFO L290 TraceCheckUtils]: 3: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,476 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {13890#true} {13890#true} #378#return; {13890#true} is VALID [2022-02-21 03:10:08,477 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:08,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:08,525 INFO L290 TraceCheckUtils]: 0: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,526 INFO L290 TraceCheckUtils]: 3: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,527 INFO L290 TraceCheckUtils]: 4: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,527 INFO L290 TraceCheckUtils]: 5: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,528 INFO L290 TraceCheckUtils]: 6: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,528 INFO L290 TraceCheckUtils]: 7: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,528 INFO L290 TraceCheckUtils]: 8: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,529 INFO L290 TraceCheckUtils]: 10: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,530 INFO L290 TraceCheckUtils]: 11: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:08,530 INFO L290 TraceCheckUtils]: 12: Hoare triple {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:08,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:08,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {13937#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:08,532 INFO L290 TraceCheckUtils]: 15: Hoare triple {13937#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {13937#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:08,532 INFO L290 TraceCheckUtils]: 16: Hoare triple {13937#(not (= |base2flt_#in~e| 0))} assume true; {13937#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:08,532 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {13937#(not (= |base2flt_#in~e| 0))} {13890#true} #380#return; {13891#false} is VALID [2022-02-21 03:10:08,533 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-21 03:10:08,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:08,546 INFO L290 TraceCheckUtils]: 0: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {13890#true} assume !(~m % 4294967296 < 16777216); {13890#true} is VALID [2022-02-21 03:10:08,547 INFO L290 TraceCheckUtils]: 3: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,547 INFO L290 TraceCheckUtils]: 4: Hoare triple {13890#true} assume ~m % 4294967296 >= 33554432; {13890#true} is VALID [2022-02-21 03:10:08,547 INFO L290 TraceCheckUtils]: 5: Hoare triple {13890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13890#true} is VALID [2022-02-21 03:10:08,547 INFO L290 TraceCheckUtils]: 6: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,548 INFO L290 TraceCheckUtils]: 7: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,548 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {13890#true} {13891#false} #382#return; {13891#false} is VALID [2022-02-21 03:10:08,548 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-21 03:10:08,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:08,554 INFO L290 TraceCheckUtils]: 0: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,554 INFO L290 TraceCheckUtils]: 1: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,554 INFO L290 TraceCheckUtils]: 2: Hoare triple {13890#true} assume !(~m % 4294967296 < 16777216); {13890#true} is VALID [2022-02-21 03:10:08,554 INFO L290 TraceCheckUtils]: 3: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,554 INFO L290 TraceCheckUtils]: 4: Hoare triple {13890#true} assume ~m % 4294967296 >= 33554432; {13890#true} is VALID [2022-02-21 03:10:08,555 INFO L290 TraceCheckUtils]: 5: Hoare triple {13890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13890#true} is VALID [2022-02-21 03:10:08,555 INFO L290 TraceCheckUtils]: 6: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,555 INFO L290 TraceCheckUtils]: 7: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,555 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {13890#true} {13891#false} #384#return; {13891#false} is VALID [2022-02-21 03:10:08,555 INFO L290 TraceCheckUtils]: 0: Hoare triple {13890#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); {13890#true} is VALID [2022-02-21 03:10:08,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {13890#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {13890#true} is VALID [2022-02-21 03:10:08,556 INFO L272 TraceCheckUtils]: 2: Hoare triple {13890#true} call main_#t~ret22#1 := base2flt(0, 0); {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:08,556 INFO L290 TraceCheckUtils]: 3: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,556 INFO L290 TraceCheckUtils]: 4: Hoare triple {13890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13890#true} is VALID [2022-02-21 03:10:08,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,557 INFO L290 TraceCheckUtils]: 6: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,557 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13890#true} {13890#true} #378#return; {13890#true} is VALID [2022-02-21 03:10:08,557 INFO L290 TraceCheckUtils]: 8: Hoare triple {13890#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13890#true} is VALID [2022-02-21 03:10:08,558 INFO L272 TraceCheckUtils]: 9: Hoare triple {13890#true} call main_#t~ret23#1 := base2flt(1, 0); {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:08,558 INFO L290 TraceCheckUtils]: 10: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,558 INFO L290 TraceCheckUtils]: 11: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,559 INFO L290 TraceCheckUtils]: 12: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,559 INFO L290 TraceCheckUtils]: 13: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,560 INFO L290 TraceCheckUtils]: 14: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,560 INFO L290 TraceCheckUtils]: 15: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:08,561 INFO L290 TraceCheckUtils]: 16: Hoare triple {13934#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,561 INFO L290 TraceCheckUtils]: 17: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,561 INFO L290 TraceCheckUtils]: 18: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,562 INFO L290 TraceCheckUtils]: 19: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,562 INFO L290 TraceCheckUtils]: 20: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:08,563 INFO L290 TraceCheckUtils]: 21: Hoare triple {13935#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:08,563 INFO L290 TraceCheckUtils]: 22: Hoare triple {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:08,564 INFO L290 TraceCheckUtils]: 23: Hoare triple {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:08,564 INFO L290 TraceCheckUtils]: 24: Hoare triple {13936#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {13937#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:08,564 INFO L290 TraceCheckUtils]: 25: Hoare triple {13937#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {13937#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:08,565 INFO L290 TraceCheckUtils]: 26: Hoare triple {13937#(not (= |base2flt_#in~e| 0))} assume true; {13937#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:08,565 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13937#(not (= |base2flt_#in~e| 0))} {13890#true} #380#return; {13891#false} is VALID [2022-02-21 03:10:08,565 INFO L290 TraceCheckUtils]: 28: Hoare triple {13891#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13891#false} is VALID [2022-02-21 03:10:08,572 INFO L272 TraceCheckUtils]: 29: Hoare triple {13891#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 31: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 32: Hoare triple {13890#true} assume !(~m % 4294967296 < 16777216); {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 33: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 34: Hoare triple {13890#true} assume ~m % 4294967296 >= 33554432; {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 35: Hoare triple {13890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 36: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,572 INFO L290 TraceCheckUtils]: 37: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {13890#true} {13891#false} #382#return; {13891#false} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 39: Hoare triple {13891#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {13891#false} is VALID [2022-02-21 03:10:08,573 INFO L272 TraceCheckUtils]: 40: Hoare triple {13891#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 41: Hoare triple {13933#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 42: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 43: Hoare triple {13890#true} assume !(~m % 4294967296 < 16777216); {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 44: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 45: Hoare triple {13890#true} assume ~m % 4294967296 >= 33554432; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 46: Hoare triple {13890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 47: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L290 TraceCheckUtils]: 48: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,573 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {13890#true} {13891#false} #384#return; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 50: Hoare triple {13891#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 51: Hoare triple {13891#false} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 52: Hoare triple {13891#false} 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; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 53: Hoare triple {13891#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; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 54: Hoare triple {13891#false} assume !(0 == mulflt_~b#1 % 4294967296); {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 55: Hoare triple {13891#false} assume !(0 == mulflt_~a#1); {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 56: Hoare triple {13891#false} assume !false; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 57: Hoare triple {13891#false} assume !false; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 58: Hoare triple {13891#false} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 59: Hoare triple {13891#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; {13891#false} is VALID [2022-02-21 03:10:08,574 INFO L290 TraceCheckUtils]: 60: Hoare triple {13891#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); {13891#false} is VALID [2022-02-21 03:10:08,575 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:08,575 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:08,575 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [338119711] [2022-02-21 03:10:08,575 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [338119711] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:08,575 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1416992777] [2022-02-21 03:10:08,575 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:10:08,575 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:08,575 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:08,576 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:08,603 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:08,637 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-21 03:10:08,638 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:10:08,639 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-21 03:10:08,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:08,662 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:08,876 INFO L290 TraceCheckUtils]: 0: Hoare triple {13890#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); {13890#true} is VALID [2022-02-21 03:10:08,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {13890#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {13890#true} is VALID [2022-02-21 03:10:08,877 INFO L272 TraceCheckUtils]: 2: Hoare triple {13890#true} call main_#t~ret22#1 := base2flt(0, 0); {13890#true} is VALID [2022-02-21 03:10:08,877 INFO L290 TraceCheckUtils]: 3: Hoare triple {13890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,877 INFO L290 TraceCheckUtils]: 4: Hoare triple {13890#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {13890#true} is VALID [2022-02-21 03:10:08,877 INFO L290 TraceCheckUtils]: 5: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,877 INFO L290 TraceCheckUtils]: 6: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {13890#true} {13890#true} #378#return; {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L290 TraceCheckUtils]: 8: Hoare triple {13890#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L272 TraceCheckUtils]: 9: Hoare triple {13890#true} call main_#t~ret23#1 := base2flt(1, 0); {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L290 TraceCheckUtils]: 10: Hoare triple {13890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L290 TraceCheckUtils]: 11: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {13890#true} assume ~m % 4294967296 < 16777216; {13890#true} is VALID [2022-02-21 03:10:08,878 INFO L290 TraceCheckUtils]: 13: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {13890#true} assume !(~e <= -128); {13890#true} is VALID [2022-02-21 03:10:08,879 INFO L290 TraceCheckUtils]: 15: Hoare triple {13890#true} assume ~e - 1 <= 2147483647; {13890#true} is VALID [2022-02-21 03:10:08,879 INFO L290 TraceCheckUtils]: 16: Hoare triple {13890#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13890#true} is VALID [2022-02-21 03:10:08,879 INFO L290 TraceCheckUtils]: 17: Hoare triple {13890#true} assume ~m % 4294967296 < 16777216; {13890#true} is VALID [2022-02-21 03:10:08,879 INFO L290 TraceCheckUtils]: 18: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,879 INFO L290 TraceCheckUtils]: 19: Hoare triple {13890#true} assume !(~e <= -128); {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 20: Hoare triple {13890#true} assume ~e - 1 <= 2147483647; {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 21: Hoare triple {13890#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 22: Hoare triple {13890#true} assume ~m % 4294967296 < 16777216; {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 23: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 24: Hoare triple {13890#true} assume ~e <= -128;~__retres4~0 := 0; {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 25: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,880 INFO L290 TraceCheckUtils]: 26: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,881 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13890#true} {13890#true} #380#return; {13890#true} is VALID [2022-02-21 03:10:08,881 INFO L290 TraceCheckUtils]: 28: Hoare triple {13890#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {13890#true} is VALID [2022-02-21 03:10:08,881 INFO L272 TraceCheckUtils]: 29: Hoare triple {13890#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {13890#true} is VALID [2022-02-21 03:10:08,881 INFO L290 TraceCheckUtils]: 30: Hoare triple {13890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,881 INFO L290 TraceCheckUtils]: 31: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,881 INFO L290 TraceCheckUtils]: 32: Hoare triple {13890#true} assume !(~m % 4294967296 < 16777216); {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L290 TraceCheckUtils]: 33: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L290 TraceCheckUtils]: 34: Hoare triple {13890#true} assume ~m % 4294967296 >= 33554432; {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L290 TraceCheckUtils]: 35: Hoare triple {13890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L290 TraceCheckUtils]: 36: Hoare triple {13890#true} #res := ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L290 TraceCheckUtils]: 37: Hoare triple {13890#true} assume true; {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {13890#true} {13890#true} #382#return; {13890#true} is VALID [2022-02-21 03:10:08,882 INFO L290 TraceCheckUtils]: 39: Hoare triple {13890#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {13890#true} is VALID [2022-02-21 03:10:08,883 INFO L272 TraceCheckUtils]: 40: Hoare triple {13890#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {13890#true} is VALID [2022-02-21 03:10:08,883 INFO L290 TraceCheckUtils]: 41: Hoare triple {13890#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {13890#true} is VALID [2022-02-21 03:10:08,883 INFO L290 TraceCheckUtils]: 42: Hoare triple {13890#true} assume !(0 == ~m % 4294967296); {13890#true} is VALID [2022-02-21 03:10:08,883 INFO L290 TraceCheckUtils]: 43: Hoare triple {13890#true} assume !(~m % 4294967296 < 16777216); {13890#true} is VALID [2022-02-21 03:10:08,883 INFO L290 TraceCheckUtils]: 44: Hoare triple {13890#true} assume !false; {13890#true} is VALID [2022-02-21 03:10:08,883 INFO L290 TraceCheckUtils]: 45: Hoare triple {13890#true} assume ~m % 4294967296 >= 33554432; {13890#true} is VALID [2022-02-21 03:10:08,884 INFO L290 TraceCheckUtils]: 46: Hoare triple {13890#true} assume ~e >= 127;~__retres4~0 := 4294967295; {14079#(<= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:08,884 INFO L290 TraceCheckUtils]: 47: Hoare triple {14079#(<= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {14083#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:08,885 INFO L290 TraceCheckUtils]: 48: Hoare triple {14083#(<= 4294967295 |base2flt_#res|)} assume true; {14083#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:08,886 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {14083#(<= 4294967295 |base2flt_#res|)} {13890#true} #384#return; {14090#(<= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:08,886 INFO L290 TraceCheckUtils]: 50: Hoare triple {14090#(<= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {14094#(<= 4294967295 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-21 03:10:08,886 INFO L290 TraceCheckUtils]: 51: Hoare triple {14094#(<= 4294967295 |ULTIMATE.start_main_~b~0#1|)} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {14094#(<= 4294967295 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-21 03:10:08,887 INFO L290 TraceCheckUtils]: 52: Hoare triple {14094#(<= 4294967295 |ULTIMATE.start_main_~b~0#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; {14101#(<= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:08,887 INFO L290 TraceCheckUtils]: 53: Hoare triple {14101#(<= 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; {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:08,888 INFO L290 TraceCheckUtils]: 54: Hoare triple {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:08,888 INFO L290 TraceCheckUtils]: 55: Hoare triple {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:08,888 INFO L290 TraceCheckUtils]: 56: Hoare triple {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:08,889 INFO L290 TraceCheckUtils]: 57: Hoare triple {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:08,889 INFO L290 TraceCheckUtils]: 58: Hoare triple {14105#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {13891#false} is VALID [2022-02-21 03:10:08,889 INFO L290 TraceCheckUtils]: 59: Hoare triple {13891#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; {13891#false} is VALID [2022-02-21 03:10:08,890 INFO L290 TraceCheckUtils]: 60: Hoare triple {13891#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); {13891#false} is VALID [2022-02-21 03:10:08,890 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:08,890 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:08,890 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1416992777] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:08,890 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:08,890 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [7] total 13 [2022-02-21 03:10:08,891 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1486516911] [2022-02-21 03:10:08,891 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:08,891 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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 61 [2022-02-21 03:10:08,892 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:08,892 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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:08,922 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:08,922 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-21 03:10:08,922 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:08,923 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-21 03:10:08,923 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=128, Unknown=0, NotChecked=0, Total=156 [2022-02-21 03:10:08,923 INFO L87 Difference]: Start difference. First operand 199 states and 260 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:09,713 INFO L93 Difference]: Finished difference Result 373 states and 465 transitions. [2022-02-21 03:10:09,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-21 03:10:09,713 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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 61 [2022-02-21 03:10:09,713 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:09,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 322 transitions. [2022-02-21 03:10:09,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 322 transitions. [2022-02-21 03:10:09,718 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 322 transitions. [2022-02-21 03:10:09,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 322 edges. 322 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:09,984 INFO L225 Difference]: With dead ends: 373 [2022-02-21 03:10:09,984 INFO L226 Difference]: Without dead ends: 321 [2022-02-21 03:10:09,985 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 62 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=200, Unknown=0, NotChecked=0, Total=240 [2022-02-21 03:10:09,985 INFO L933 BasicCegarLoop]: 172 mSDtfsCounter, 249 mSDsluCounter, 853 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 249 SdHoareTripleChecker+Valid, 1025 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:09,986 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [249 Valid, 1025 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 109 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:09,986 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 321 states. [2022-02-21 03:10:10,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 321 to 230. [2022-02-21 03:10:10,071 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:10,071 INFO L82 GeneralOperation]: Start isEquivalent. First operand 321 states. Second operand has 230 states, 209 states have (on average 1.3827751196172249) internal successors, (289), 220 states have internal predecessors, (289), 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:10,072 INFO L74 IsIncluded]: Start isIncluded. First operand 321 states. Second operand has 230 states, 209 states have (on average 1.3827751196172249) internal successors, (289), 220 states have internal predecessors, (289), 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:10,072 INFO L87 Difference]: Start difference. First operand 321 states. Second operand has 230 states, 209 states have (on average 1.3827751196172249) internal successors, (289), 220 states have internal predecessors, (289), 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:10,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:10,079 INFO L93 Difference]: Finished difference Result 321 states and 401 transitions. [2022-02-21 03:10:10,079 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 401 transitions. [2022-02-21 03:10:10,080 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:10,080 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:10,080 INFO L74 IsIncluded]: Start isIncluded. First operand has 230 states, 209 states have (on average 1.3827751196172249) internal successors, (289), 220 states have internal predecessors, (289), 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 321 states. [2022-02-21 03:10:10,081 INFO L87 Difference]: Start difference. First operand has 230 states, 209 states have (on average 1.3827751196172249) internal successors, (289), 220 states have internal predecessors, (289), 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 321 states. [2022-02-21 03:10:10,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:10,088 INFO L93 Difference]: Finished difference Result 321 states and 401 transitions. [2022-02-21 03:10:10,088 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 401 transitions. [2022-02-21 03:10:10,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:10,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:10,089 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:10,089 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:10,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 230 states, 209 states have (on average 1.3827751196172249) internal successors, (289), 220 states have internal predecessors, (289), 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:10,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 230 states to 230 states and 298 transitions. [2022-02-21 03:10:10,094 INFO L78 Accepts]: Start accepts. Automaton has 230 states and 298 transitions. Word has length 61 [2022-02-21 03:10:10,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:10,094 INFO L470 AbstractCegarLoop]: Abstraction has 230 states and 298 transitions. [2022-02-21 03:10:10,095 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 7 states have internal predecessors, (35), 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,095 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 298 transitions. [2022-02-21 03:10:10,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-21 03:10:10,095 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:10,096 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, 1, 1] [2022-02-21 03:10:10,123 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:10,319 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:10,320 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:10,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:10,320 INFO L85 PathProgramCache]: Analyzing trace with hash -1303126837, now seen corresponding path program 1 times [2022-02-21 03:10:10,320 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:10,320 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [547247285] [2022-02-21 03:10:10,320 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:10,320 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:10,340 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,352 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:10,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,356 INFO L290 TraceCheckUtils]: 0: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {15434#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15434#true} is VALID [2022-02-21 03:10:10,357 INFO L290 TraceCheckUtils]: 2: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,357 INFO L290 TraceCheckUtils]: 3: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,357 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {15434#true} {15434#true} #378#return; {15434#true} is VALID [2022-02-21 03:10:10,357 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:10,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,404 INFO L290 TraceCheckUtils]: 0: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,406 INFO L290 TraceCheckUtils]: 2: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,406 INFO L290 TraceCheckUtils]: 3: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,407 INFO L290 TraceCheckUtils]: 4: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,407 INFO L290 TraceCheckUtils]: 5: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,407 INFO L290 TraceCheckUtils]: 6: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,408 INFO L290 TraceCheckUtils]: 7: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,408 INFO L290 TraceCheckUtils]: 8: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,408 INFO L290 TraceCheckUtils]: 9: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,409 INFO L290 TraceCheckUtils]: 10: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,410 INFO L290 TraceCheckUtils]: 11: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,410 INFO L290 TraceCheckUtils]: 12: Hoare triple {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,411 INFO L290 TraceCheckUtils]: 14: Hoare triple {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {15481#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,411 INFO L290 TraceCheckUtils]: 15: Hoare triple {15481#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {15481#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,412 INFO L290 TraceCheckUtils]: 16: Hoare triple {15481#(not (= |base2flt_#in~e| 0))} assume true; {15481#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,412 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {15481#(not (= |base2flt_#in~e| 0))} {15434#true} #380#return; {15435#false} is VALID [2022-02-21 03:10:10,413 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-21 03:10:10,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,418 INFO L290 TraceCheckUtils]: 0: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,418 INFO L290 TraceCheckUtils]: 1: Hoare triple {15434#true} assume !(0 == ~m % 4294967296); {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L290 TraceCheckUtils]: 2: Hoare triple {15434#true} assume !(~m % 4294967296 < 16777216); {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L290 TraceCheckUtils]: 3: Hoare triple {15434#true} assume !false; {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L290 TraceCheckUtils]: 4: Hoare triple {15434#true} assume ~m % 4294967296 >= 33554432; {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {15434#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L290 TraceCheckUtils]: 6: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L290 TraceCheckUtils]: 7: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,419 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {15434#true} {15435#false} #382#return; {15435#false} is VALID [2022-02-21 03:10:10,420 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-21 03:10:10,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,426 INFO L290 TraceCheckUtils]: 0: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {15434#true} assume !(0 == ~m % 4294967296); {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {15434#true} assume !(~m % 4294967296 < 16777216); {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L290 TraceCheckUtils]: 3: Hoare triple {15434#true} assume !false; {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L290 TraceCheckUtils]: 4: Hoare triple {15434#true} assume ~m % 4294967296 >= 33554432; {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {15434#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L290 TraceCheckUtils]: 6: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L290 TraceCheckUtils]: 7: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,427 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {15434#true} {15435#false} #384#return; {15435#false} is VALID [2022-02-21 03:10:10,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {15434#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); {15434#true} is VALID [2022-02-21 03:10:10,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {15434#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {15434#true} is VALID [2022-02-21 03:10:10,429 INFO L272 TraceCheckUtils]: 2: Hoare triple {15434#true} call main_#t~ret22#1 := base2flt(0, 0); {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,429 INFO L290 TraceCheckUtils]: 3: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,429 INFO L290 TraceCheckUtils]: 4: Hoare triple {15434#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15434#true} is VALID [2022-02-21 03:10:10,429 INFO L290 TraceCheckUtils]: 5: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,429 INFO L290 TraceCheckUtils]: 6: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,429 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {15434#true} {15434#true} #378#return; {15434#true} is VALID [2022-02-21 03:10:10,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {15434#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {15434#true} is VALID [2022-02-21 03:10:10,433 INFO L272 TraceCheckUtils]: 9: Hoare triple {15434#true} call main_#t~ret23#1 := base2flt(1, 0); {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,434 INFO L290 TraceCheckUtils]: 10: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,434 INFO L290 TraceCheckUtils]: 11: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,436 INFO L290 TraceCheckUtils]: 14: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,436 INFO L290 TraceCheckUtils]: 15: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:10,437 INFO L290 TraceCheckUtils]: 16: Hoare triple {15478#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,437 INFO L290 TraceCheckUtils]: 17: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,437 INFO L290 TraceCheckUtils]: 18: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,438 INFO L290 TraceCheckUtils]: 20: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:10,439 INFO L290 TraceCheckUtils]: 21: Hoare triple {15479#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,439 INFO L290 TraceCheckUtils]: 22: Hoare triple {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,439 INFO L290 TraceCheckUtils]: 23: Hoare triple {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:10,440 INFO L290 TraceCheckUtils]: 24: Hoare triple {15480#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {15481#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,440 INFO L290 TraceCheckUtils]: 25: Hoare triple {15481#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {15481#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,441 INFO L290 TraceCheckUtils]: 26: Hoare triple {15481#(not (= |base2flt_#in~e| 0))} assume true; {15481#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:10,441 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15481#(not (= |base2flt_#in~e| 0))} {15434#true} #380#return; {15435#false} is VALID [2022-02-21 03:10:10,441 INFO L290 TraceCheckUtils]: 28: Hoare triple {15435#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {15435#false} is VALID [2022-02-21 03:10:10,442 INFO L272 TraceCheckUtils]: 29: Hoare triple {15435#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,442 INFO L290 TraceCheckUtils]: 30: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,442 INFO L290 TraceCheckUtils]: 31: Hoare triple {15434#true} assume !(0 == ~m % 4294967296); {15434#true} is VALID [2022-02-21 03:10:10,442 INFO L290 TraceCheckUtils]: 32: Hoare triple {15434#true} assume !(~m % 4294967296 < 16777216); {15434#true} is VALID [2022-02-21 03:10:10,442 INFO L290 TraceCheckUtils]: 33: Hoare triple {15434#true} assume !false; {15434#true} is VALID [2022-02-21 03:10:10,442 INFO L290 TraceCheckUtils]: 34: Hoare triple {15434#true} assume ~m % 4294967296 >= 33554432; {15434#true} is VALID [2022-02-21 03:10:10,442 INFO L290 TraceCheckUtils]: 35: Hoare triple {15434#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15434#true} is VALID [2022-02-21 03:10:10,443 INFO L290 TraceCheckUtils]: 36: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,443 INFO L290 TraceCheckUtils]: 37: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,443 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {15434#true} {15435#false} #382#return; {15435#false} is VALID [2022-02-21 03:10:10,443 INFO L290 TraceCheckUtils]: 39: Hoare triple {15435#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {15435#false} is VALID [2022-02-21 03:10:10,443 INFO L272 TraceCheckUtils]: 40: Hoare triple {15435#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:10,443 INFO L290 TraceCheckUtils]: 41: Hoare triple {15477#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 42: Hoare triple {15434#true} assume !(0 == ~m % 4294967296); {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 43: Hoare triple {15434#true} assume !(~m % 4294967296 < 16777216); {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 44: Hoare triple {15434#true} assume !false; {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 45: Hoare triple {15434#true} assume ~m % 4294967296 >= 33554432; {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 46: Hoare triple {15434#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 47: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,444 INFO L290 TraceCheckUtils]: 48: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,445 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {15434#true} {15435#false} #384#return; {15435#false} is VALID [2022-02-21 03:10:10,445 INFO L290 TraceCheckUtils]: 50: Hoare triple {15435#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {15435#false} is VALID [2022-02-21 03:10:10,445 INFO L290 TraceCheckUtils]: 51: Hoare triple {15435#false} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {15435#false} is VALID [2022-02-21 03:10:10,445 INFO L290 TraceCheckUtils]: 52: Hoare triple {15435#false} 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; {15435#false} is VALID [2022-02-21 03:10:10,445 INFO L290 TraceCheckUtils]: 53: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:10,445 INFO L290 TraceCheckUtils]: 54: Hoare triple {15435#false} assume !(0 == mulflt_~b#1 % 4294967296); {15435#false} is VALID [2022-02-21 03:10:10,445 INFO L290 TraceCheckUtils]: 55: Hoare triple {15435#false} assume !(0 == mulflt_~a#1); {15435#false} is VALID [2022-02-21 03:10:10,446 INFO L290 TraceCheckUtils]: 56: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:10,446 INFO L290 TraceCheckUtils]: 57: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:10,446 INFO L290 TraceCheckUtils]: 58: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:10,446 INFO L290 TraceCheckUtils]: 59: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:10,446 INFO L290 TraceCheckUtils]: 60: Hoare triple {15435#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); {15435#false} is VALID [2022-02-21 03:10:10,447 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,447 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:10,447 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [547247285] [2022-02-21 03:10:10,447 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [547247285] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:10,447 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1345249204] [2022-02-21 03:10:10,448 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:10,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:10,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:10,452 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:10,478 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:10,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,528 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-21 03:10:10,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:10,549 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:10,753 INFO L290 TraceCheckUtils]: 0: Hoare triple {15434#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); {15434#true} is VALID [2022-02-21 03:10:10,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {15434#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {15434#true} is VALID [2022-02-21 03:10:10,753 INFO L272 TraceCheckUtils]: 2: Hoare triple {15434#true} call main_#t~ret22#1 := base2flt(0, 0); {15434#true} is VALID [2022-02-21 03:10:10,753 INFO L290 TraceCheckUtils]: 3: Hoare triple {15434#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,754 INFO L290 TraceCheckUtils]: 4: Hoare triple {15434#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15434#true} is VALID [2022-02-21 03:10:10,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:10,754 INFO L290 TraceCheckUtils]: 6: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:10,754 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {15434#true} {15434#true} #378#return; {15434#true} is VALID [2022-02-21 03:10:10,754 INFO L290 TraceCheckUtils]: 8: Hoare triple {15434#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {15434#true} is VALID [2022-02-21 03:10:10,754 INFO L272 TraceCheckUtils]: 9: Hoare triple {15434#true} call main_#t~ret23#1 := base2flt(1, 0); {15434#true} is VALID [2022-02-21 03:10:10,755 INFO L290 TraceCheckUtils]: 10: Hoare triple {15434#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15515#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:10,755 INFO L290 TraceCheckUtils]: 11: Hoare triple {15515#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {15515#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:10,755 INFO L290 TraceCheckUtils]: 12: Hoare triple {15515#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {15515#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:10,756 INFO L290 TraceCheckUtils]: 13: Hoare triple {15515#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {15515#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:10,756 INFO L290 TraceCheckUtils]: 14: Hoare triple {15515#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {15515#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:10,756 INFO L290 TraceCheckUtils]: 15: Hoare triple {15515#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {15515#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:10,757 INFO L290 TraceCheckUtils]: 16: Hoare triple {15515#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:10,757 INFO L290 TraceCheckUtils]: 17: Hoare triple {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:10,758 INFO L290 TraceCheckUtils]: 18: Hoare triple {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:10,758 INFO L290 TraceCheckUtils]: 19: Hoare triple {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !(~e <= -128); {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:10,759 INFO L290 TraceCheckUtils]: 20: Hoare triple {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 <= 2147483647; {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:10,759 INFO L290 TraceCheckUtils]: 21: Hoare triple {15534#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15550#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:10,760 INFO L290 TraceCheckUtils]: 22: Hoare triple {15550#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~m % 4294967296 < 16777216; {15550#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:10,760 INFO L290 TraceCheckUtils]: 23: Hoare triple {15550#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !false; {15550#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:10,760 INFO L290 TraceCheckUtils]: 24: Hoare triple {15550#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e <= -128;~__retres4~0 := 0; {15560#(<= (+ 126 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:10,761 INFO L290 TraceCheckUtils]: 25: Hoare triple {15560#(<= (+ 126 |base2flt_#in~e|) 0)} #res := ~__retres4~0; {15560#(<= (+ 126 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:10,761 INFO L290 TraceCheckUtils]: 26: Hoare triple {15560#(<= (+ 126 |base2flt_#in~e|) 0)} assume true; {15560#(<= (+ 126 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:10,762 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15560#(<= (+ 126 |base2flt_#in~e|) 0)} {15434#true} #380#return; {15435#false} is VALID [2022-02-21 03:10:10,762 INFO L290 TraceCheckUtils]: 28: Hoare triple {15435#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {15435#false} is VALID [2022-02-21 03:10:10,762 INFO L272 TraceCheckUtils]: 29: Hoare triple {15435#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {15435#false} is VALID [2022-02-21 03:10:10,762 INFO L290 TraceCheckUtils]: 30: Hoare triple {15435#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15435#false} is VALID [2022-02-21 03:10:10,762 INFO L290 TraceCheckUtils]: 31: Hoare triple {15435#false} assume !(0 == ~m % 4294967296); {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L290 TraceCheckUtils]: 32: Hoare triple {15435#false} assume !(~m % 4294967296 < 16777216); {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L290 TraceCheckUtils]: 33: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L290 TraceCheckUtils]: 34: Hoare triple {15435#false} assume ~m % 4294967296 >= 33554432; {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {15435#false} assume ~e >= 127;~__retres4~0 := 4294967295; {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L290 TraceCheckUtils]: 36: Hoare triple {15435#false} #res := ~__retres4~0; {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L290 TraceCheckUtils]: 37: Hoare triple {15435#false} assume true; {15435#false} is VALID [2022-02-21 03:10:10,763 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {15435#false} {15435#false} #382#return; {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {15435#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L272 TraceCheckUtils]: 40: Hoare triple {15435#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L290 TraceCheckUtils]: 41: Hoare triple {15435#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L290 TraceCheckUtils]: 42: Hoare triple {15435#false} assume !(0 == ~m % 4294967296); {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L290 TraceCheckUtils]: 43: Hoare triple {15435#false} assume !(~m % 4294967296 < 16777216); {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L290 TraceCheckUtils]: 44: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:10,764 INFO L290 TraceCheckUtils]: 45: Hoare triple {15435#false} assume ~m % 4294967296 >= 33554432; {15435#false} is VALID [2022-02-21 03:10:10,765 INFO L290 TraceCheckUtils]: 46: Hoare triple {15435#false} assume ~e >= 127;~__retres4~0 := 4294967295; {15435#false} is VALID [2022-02-21 03:10:10,765 INFO L290 TraceCheckUtils]: 47: Hoare triple {15435#false} #res := ~__retres4~0; {15435#false} is VALID [2022-02-21 03:10:10,765 INFO L290 TraceCheckUtils]: 48: Hoare triple {15435#false} assume true; {15435#false} is VALID [2022-02-21 03:10:10,765 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {15435#false} {15435#false} #384#return; {15435#false} is VALID [2022-02-21 03:10:10,765 INFO L290 TraceCheckUtils]: 50: Hoare triple {15435#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {15435#false} is VALID [2022-02-21 03:10:10,765 INFO L290 TraceCheckUtils]: 51: Hoare triple {15435#false} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 52: Hoare triple {15435#false} 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; {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 53: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 54: Hoare triple {15435#false} assume !(0 == mulflt_~b#1 % 4294967296); {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 55: Hoare triple {15435#false} assume !(0 == mulflt_~a#1); {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 56: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 57: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:10,766 INFO L290 TraceCheckUtils]: 58: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:10,767 INFO L290 TraceCheckUtils]: 59: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:10,767 INFO L290 TraceCheckUtils]: 60: Hoare triple {15435#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); {15435#false} is VALID [2022-02-21 03:10:10,767 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:10,767 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:11,092 INFO L290 TraceCheckUtils]: 60: Hoare triple {15435#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); {15435#false} is VALID [2022-02-21 03:10:11,093 INFO L290 TraceCheckUtils]: 59: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:11,093 INFO L290 TraceCheckUtils]: 58: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:11,093 INFO L290 TraceCheckUtils]: 57: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:11,093 INFO L290 TraceCheckUtils]: 56: Hoare triple {15435#false} assume !false; {15435#false} is VALID [2022-02-21 03:10:11,093 INFO L290 TraceCheckUtils]: 55: Hoare triple {15435#false} assume !(0 == mulflt_~a#1); {15435#false} is VALID [2022-02-21 03:10:11,094 INFO L290 TraceCheckUtils]: 54: Hoare triple {15435#false} assume !(0 == mulflt_~b#1 % 4294967296); {15435#false} is VALID [2022-02-21 03:10:11,094 INFO L290 TraceCheckUtils]: 53: Hoare triple {15435#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; {15435#false} is VALID [2022-02-21 03:10:11,094 INFO L290 TraceCheckUtils]: 52: Hoare triple {15435#false} 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; {15435#false} is VALID [2022-02-21 03:10:11,094 INFO L290 TraceCheckUtils]: 51: Hoare triple {15435#false} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {15435#false} is VALID [2022-02-21 03:10:11,094 INFO L290 TraceCheckUtils]: 50: Hoare triple {15435#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {15435#false} is VALID [2022-02-21 03:10:11,094 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {15434#true} {15435#false} #384#return; {15435#false} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 48: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 47: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 46: Hoare triple {15434#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15434#true} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 45: Hoare triple {15434#true} assume ~m % 4294967296 >= 33554432; {15434#true} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 44: Hoare triple {15434#true} assume !false; {15434#true} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 43: Hoare triple {15434#true} assume !(~m % 4294967296 < 16777216); {15434#true} is VALID [2022-02-21 03:10:11,095 INFO L290 TraceCheckUtils]: 42: Hoare triple {15434#true} assume !(0 == ~m % 4294967296); {15434#true} is VALID [2022-02-21 03:10:11,096 INFO L290 TraceCheckUtils]: 41: Hoare triple {15434#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:11,096 INFO L272 TraceCheckUtils]: 40: Hoare triple {15435#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {15434#true} is VALID [2022-02-21 03:10:11,096 INFO L290 TraceCheckUtils]: 39: Hoare triple {15435#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {15435#false} is VALID [2022-02-21 03:10:11,096 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {15434#true} {15435#false} #382#return; {15435#false} is VALID [2022-02-21 03:10:11,096 INFO L290 TraceCheckUtils]: 37: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:11,096 INFO L290 TraceCheckUtils]: 36: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:11,096 INFO L290 TraceCheckUtils]: 35: Hoare triple {15434#true} assume ~e >= 127;~__retres4~0 := 4294967295; {15434#true} is VALID [2022-02-21 03:10:11,097 INFO L290 TraceCheckUtils]: 34: Hoare triple {15434#true} assume ~m % 4294967296 >= 33554432; {15434#true} is VALID [2022-02-21 03:10:11,097 INFO L290 TraceCheckUtils]: 33: Hoare triple {15434#true} assume !false; {15434#true} is VALID [2022-02-21 03:10:11,097 INFO L290 TraceCheckUtils]: 32: Hoare triple {15434#true} assume !(~m % 4294967296 < 16777216); {15434#true} is VALID [2022-02-21 03:10:11,097 INFO L290 TraceCheckUtils]: 31: Hoare triple {15434#true} assume !(0 == ~m % 4294967296); {15434#true} is VALID [2022-02-21 03:10:11,097 INFO L290 TraceCheckUtils]: 30: Hoare triple {15434#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:11,097 INFO L272 TraceCheckUtils]: 29: Hoare triple {15435#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {15434#true} is VALID [2022-02-21 03:10:11,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {15435#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {15435#false} is VALID [2022-02-21 03:10:11,098 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15771#(not (<= 0 |base2flt_#in~e|))} {15434#true} #380#return; {15435#false} is VALID [2022-02-21 03:10:11,099 INFO L290 TraceCheckUtils]: 26: Hoare triple {15771#(not (<= 0 |base2flt_#in~e|))} assume true; {15771#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:11,099 INFO L290 TraceCheckUtils]: 25: Hoare triple {15771#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {15771#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:11,099 INFO L290 TraceCheckUtils]: 24: Hoare triple {15781#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {15771#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:11,100 INFO L290 TraceCheckUtils]: 23: Hoare triple {15781#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {15781#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,100 INFO L290 TraceCheckUtils]: 22: Hoare triple {15781#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {15781#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,101 INFO L290 TraceCheckUtils]: 21: Hoare triple {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15781#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,103 INFO L290 TraceCheckUtils]: 19: Hoare triple {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,104 INFO L290 TraceCheckUtils]: 16: Hoare triple {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {15791#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,104 INFO L290 TraceCheckUtils]: 15: Hoare triple {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,105 INFO L290 TraceCheckUtils]: 14: Hoare triple {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,105 INFO L290 TraceCheckUtils]: 13: Hoare triple {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,105 INFO L290 TraceCheckUtils]: 12: Hoare triple {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,106 INFO L290 TraceCheckUtils]: 11: Hoare triple {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,106 INFO L290 TraceCheckUtils]: 10: Hoare triple {15434#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15807#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:11,106 INFO L272 TraceCheckUtils]: 9: Hoare triple {15434#true} call main_#t~ret23#1 := base2flt(1, 0); {15434#true} is VALID [2022-02-21 03:10:11,106 INFO L290 TraceCheckUtils]: 8: Hoare triple {15434#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {15434#true} is VALID [2022-02-21 03:10:11,107 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {15434#true} {15434#true} #378#return; {15434#true} is VALID [2022-02-21 03:10:11,107 INFO L290 TraceCheckUtils]: 6: Hoare triple {15434#true} assume true; {15434#true} is VALID [2022-02-21 03:10:11,107 INFO L290 TraceCheckUtils]: 5: Hoare triple {15434#true} #res := ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:11,107 INFO L290 TraceCheckUtils]: 4: Hoare triple {15434#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {15434#true} is VALID [2022-02-21 03:10:11,107 INFO L290 TraceCheckUtils]: 3: Hoare triple {15434#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {15434#true} is VALID [2022-02-21 03:10:11,107 INFO L272 TraceCheckUtils]: 2: Hoare triple {15434#true} call main_#t~ret22#1 := base2flt(0, 0); {15434#true} is VALID [2022-02-21 03:10:11,108 INFO L290 TraceCheckUtils]: 1: Hoare triple {15434#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {15434#true} is VALID [2022-02-21 03:10:11,108 INFO L290 TraceCheckUtils]: 0: Hoare triple {15434#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); {15434#true} is VALID [2022-02-21 03:10:11,108 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:11,108 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1345249204] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:11,108 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:11,109 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 15 [2022-02-21 03:10:11,109 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [93746551] [2022-02-21 03:10:11,109 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:11,110 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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 61 [2022-02-21 03:10:11,113 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:11,113 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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:11,191 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:11,191 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-02-21 03:10:11,192 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:11,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-02-21 03:10:11,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=142, Unknown=0, NotChecked=0, Total=210 [2022-02-21 03:10:11,193 INFO L87 Difference]: Start difference. First operand 230 states and 298 transitions. Second operand has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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:13,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:13,228 INFO L93 Difference]: Finished difference Result 1139 states and 1499 transitions. [2022-02-21 03:10:13,228 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-02-21 03:10:13,229 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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 61 [2022-02-21 03:10:13,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:13,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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:13,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 666 transitions. [2022-02-21 03:10:13,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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:13,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 666 transitions. [2022-02-21 03:10:13,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 666 transitions. [2022-02-21 03:10:13,737 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 666 edges. 666 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:13,783 INFO L225 Difference]: With dead ends: 1139 [2022-02-21 03:10:13,783 INFO L226 Difference]: Without dead ends: 945 [2022-02-21 03:10:13,784 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 137 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:13,785 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 582 mSDsluCounter, 872 mSDsCounter, 0 mSdLazyCounter, 366 mSolverCounterSat, 80 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 582 SdHoareTripleChecker+Valid, 992 SdHoareTripleChecker+Invalid, 446 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 80 IncrementalHoareTripleChecker+Valid, 366 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:13,785 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [582 Valid, 992 Invalid, 446 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [80 Valid, 366 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-21 03:10:13,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 945 states. [2022-02-21 03:10:13,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 945 to 250. [2022-02-21 03:10:13,907 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:13,908 INFO L82 GeneralOperation]: Start isEquivalent. First operand 945 states. Second operand has 250 states, 229 states have (on average 1.3668122270742358) internal successors, (313), 240 states have internal predecessors, (313), 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:13,908 INFO L74 IsIncluded]: Start isIncluded. First operand 945 states. Second operand has 250 states, 229 states have (on average 1.3668122270742358) internal successors, (313), 240 states have internal predecessors, (313), 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:13,909 INFO L87 Difference]: Start difference. First operand 945 states. Second operand has 250 states, 229 states have (on average 1.3668122270742358) internal successors, (313), 240 states have internal predecessors, (313), 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:13,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:13,947 INFO L93 Difference]: Finished difference Result 945 states and 1225 transitions. [2022-02-21 03:10:13,947 INFO L276 IsEmpty]: Start isEmpty. Operand 945 states and 1225 transitions. [2022-02-21 03:10:13,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:13,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:13,949 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 229 states have (on average 1.3668122270742358) internal successors, (313), 240 states have internal predecessors, (313), 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 945 states. [2022-02-21 03:10:13,949 INFO L87 Difference]: Start difference. First operand has 250 states, 229 states have (on average 1.3668122270742358) internal successors, (313), 240 states have internal predecessors, (313), 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 945 states. [2022-02-21 03:10:13,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:13,989 INFO L93 Difference]: Finished difference Result 945 states and 1225 transitions. [2022-02-21 03:10:13,990 INFO L276 IsEmpty]: Start isEmpty. Operand 945 states and 1225 transitions. [2022-02-21 03:10:13,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:13,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:13,992 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:13,992 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:13,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 229 states have (on average 1.3668122270742358) internal successors, (313), 240 states have internal predecessors, (313), 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:13,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 322 transitions. [2022-02-21 03:10:13,997 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 322 transitions. Word has length 61 [2022-02-21 03:10:13,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:13,997 INFO L470 AbstractCegarLoop]: Abstraction has 250 states and 322 transitions. [2022-02-21 03:10:13,998 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.666666666666667) internal successors, (85), 14 states have internal predecessors, (85), 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:13,998 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 322 transitions. [2022-02-21 03:10:13,999 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-02-21 03:10:13,999 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:13,999 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, 1, 1] [2022-02-21 03:10:14,023 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:14,223 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:14,223 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:14,224 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:14,224 INFO L85 PathProgramCache]: Analyzing trace with hash -1609979175, now seen corresponding path program 1 times [2022-02-21 03:10:14,224 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:14,224 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1609193653] [2022-02-21 03:10:14,224 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:14,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:14,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,286 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:14,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,289 INFO L290 TraceCheckUtils]: 0: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,290 INFO L290 TraceCheckUtils]: 1: Hoare triple {19360#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19360#true} is VALID [2022-02-21 03:10:14,290 INFO L290 TraceCheckUtils]: 2: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,290 INFO L290 TraceCheckUtils]: 3: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,290 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {19360#true} {19360#true} #378#return; {19360#true} is VALID [2022-02-21 03:10:14,290 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:14,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,350 INFO L290 TraceCheckUtils]: 0: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,351 INFO L290 TraceCheckUtils]: 1: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,351 INFO L290 TraceCheckUtils]: 2: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,351 INFO L290 TraceCheckUtils]: 3: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,352 INFO L290 TraceCheckUtils]: 4: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,352 INFO L290 TraceCheckUtils]: 5: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,353 INFO L290 TraceCheckUtils]: 6: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19408#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:14,353 INFO L290 TraceCheckUtils]: 7: Hoare triple {19408#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,354 INFO L290 TraceCheckUtils]: 10: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,355 INFO L290 TraceCheckUtils]: 11: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,355 INFO L290 TraceCheckUtils]: 12: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,356 INFO L290 TraceCheckUtils]: 13: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,356 INFO L290 TraceCheckUtils]: 14: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,356 INFO L290 TraceCheckUtils]: 15: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,357 INFO L290 TraceCheckUtils]: 16: Hoare triple {19409#(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; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,357 INFO L290 TraceCheckUtils]: 17: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,357 INFO L290 TraceCheckUtils]: 18: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,358 INFO L290 TraceCheckUtils]: 19: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume true; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,358 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {19409#(not (= |base2flt_#in~m| 1))} {19360#true} #380#return; {19361#false} is VALID [2022-02-21 03:10:14,359 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 32 [2022-02-21 03:10:14,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,364 INFO L290 TraceCheckUtils]: 0: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,364 INFO L290 TraceCheckUtils]: 2: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,365 INFO L290 TraceCheckUtils]: 3: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,365 INFO L290 TraceCheckUtils]: 4: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:14,365 INFO L290 TraceCheckUtils]: 5: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:14,365 INFO L290 TraceCheckUtils]: 6: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,365 INFO L290 TraceCheckUtils]: 7: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,365 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {19360#true} {19361#false} #382#return; {19361#false} is VALID [2022-02-21 03:10:14,366 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 43 [2022-02-21 03:10:14,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,370 INFO L290 TraceCheckUtils]: 0: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,371 INFO L290 TraceCheckUtils]: 3: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,371 INFO L290 TraceCheckUtils]: 4: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:14,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:14,371 INFO L290 TraceCheckUtils]: 6: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,372 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {19360#true} {19361#false} #384#return; {19361#false} is VALID [2022-02-21 03:10:14,372 INFO L290 TraceCheckUtils]: 0: Hoare triple {19360#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); {19360#true} is VALID [2022-02-21 03:10:14,372 INFO L290 TraceCheckUtils]: 1: Hoare triple {19360#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {19360#true} is VALID [2022-02-21 03:10:14,373 INFO L272 TraceCheckUtils]: 2: Hoare triple {19360#true} call main_#t~ret22#1 := base2flt(0, 0); {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:14,373 INFO L290 TraceCheckUtils]: 3: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,373 INFO L290 TraceCheckUtils]: 4: Hoare triple {19360#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19360#true} is VALID [2022-02-21 03:10:14,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,373 INFO L290 TraceCheckUtils]: 6: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,373 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19360#true} {19360#true} #378#return; {19360#true} is VALID [2022-02-21 03:10:14,374 INFO L290 TraceCheckUtils]: 8: Hoare triple {19360#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {19360#true} is VALID [2022-02-21 03:10:14,374 INFO L272 TraceCheckUtils]: 9: Hoare triple {19360#true} call main_#t~ret23#1 := base2flt(1, 0); {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:14,375 INFO L290 TraceCheckUtils]: 10: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,375 INFO L290 TraceCheckUtils]: 11: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,375 INFO L290 TraceCheckUtils]: 12: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,376 INFO L290 TraceCheckUtils]: 15: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:14,377 INFO L290 TraceCheckUtils]: 16: Hoare triple {19407#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19408#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:14,377 INFO L290 TraceCheckUtils]: 17: Hoare triple {19408#(or (and (<= base2flt_~m 2) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,378 INFO L290 TraceCheckUtils]: 18: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,378 INFO L290 TraceCheckUtils]: 19: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,378 INFO L290 TraceCheckUtils]: 20: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,379 INFO L290 TraceCheckUtils]: 21: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,379 INFO L290 TraceCheckUtils]: 22: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,379 INFO L290 TraceCheckUtils]: 23: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,380 INFO L290 TraceCheckUtils]: 24: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,380 INFO L290 TraceCheckUtils]: 25: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,381 INFO L290 TraceCheckUtils]: 26: Hoare triple {19409#(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; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,381 INFO L290 TraceCheckUtils]: 27: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,381 INFO L290 TraceCheckUtils]: 28: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,381 INFO L290 TraceCheckUtils]: 29: Hoare triple {19409#(not (= |base2flt_#in~m| 1))} assume true; {19409#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:14,382 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {19409#(not (= |base2flt_#in~m| 1))} {19360#true} #380#return; {19361#false} is VALID [2022-02-21 03:10:14,382 INFO L290 TraceCheckUtils]: 31: Hoare triple {19361#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {19361#false} is VALID [2022-02-21 03:10:14,382 INFO L272 TraceCheckUtils]: 32: Hoare triple {19361#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 33: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 34: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 35: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 36: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 37: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 38: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:14,383 INFO L290 TraceCheckUtils]: 39: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,384 INFO L290 TraceCheckUtils]: 40: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,384 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19360#true} {19361#false} #382#return; {19361#false} is VALID [2022-02-21 03:10:14,384 INFO L290 TraceCheckUtils]: 42: Hoare triple {19361#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {19361#false} is VALID [2022-02-21 03:10:14,384 INFO L272 TraceCheckUtils]: 43: Hoare triple {19361#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:14,384 INFO L290 TraceCheckUtils]: 44: Hoare triple {19406#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,384 INFO L290 TraceCheckUtils]: 45: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,384 INFO L290 TraceCheckUtils]: 46: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,385 INFO L290 TraceCheckUtils]: 47: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,385 INFO L290 TraceCheckUtils]: 48: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:14,385 INFO L290 TraceCheckUtils]: 49: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:14,385 INFO L290 TraceCheckUtils]: 50: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,385 INFO L290 TraceCheckUtils]: 51: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,385 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {19360#true} {19361#false} #384#return; {19361#false} is VALID [2022-02-21 03:10:14,385 INFO L290 TraceCheckUtils]: 53: Hoare triple {19361#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {19361#false} is VALID [2022-02-21 03:10:14,386 INFO L290 TraceCheckUtils]: 54: Hoare triple {19361#false} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {19361#false} is VALID [2022-02-21 03:10:14,386 INFO L290 TraceCheckUtils]: 55: Hoare triple {19361#false} 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; {19361#false} is VALID [2022-02-21 03:10:14,386 INFO L290 TraceCheckUtils]: 56: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:14,386 INFO L290 TraceCheckUtils]: 57: Hoare triple {19361#false} assume !(0 == mulflt_~b#1 % 4294967296); {19361#false} is VALID [2022-02-21 03:10:14,386 INFO L290 TraceCheckUtils]: 58: Hoare triple {19361#false} assume !(0 == mulflt_~a#1); {19361#false} is VALID [2022-02-21 03:10:14,386 INFO L290 TraceCheckUtils]: 59: Hoare triple {19361#false} assume !false; {19361#false} is VALID [2022-02-21 03:10:14,387 INFO L290 TraceCheckUtils]: 60: Hoare triple {19361#false} assume !false; {19361#false} is VALID [2022-02-21 03:10:14,387 INFO L290 TraceCheckUtils]: 61: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:14,387 INFO L290 TraceCheckUtils]: 62: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:14,387 INFO L290 TraceCheckUtils]: 63: Hoare triple {19361#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); {19361#false} is VALID [2022-02-21 03:10:14,387 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:14,388 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:14,388 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1609193653] [2022-02-21 03:10:14,389 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1609193653] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:14,389 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [200488196] [2022-02-21 03:10:14,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:14,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:14,390 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:14,392 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:14,421 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:14,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,466 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-21 03:10:14,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:14,483 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:14,678 INFO L290 TraceCheckUtils]: 0: Hoare triple {19360#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); {19360#true} is VALID [2022-02-21 03:10:14,678 INFO L290 TraceCheckUtils]: 1: Hoare triple {19360#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {19360#true} is VALID [2022-02-21 03:10:14,678 INFO L272 TraceCheckUtils]: 2: Hoare triple {19360#true} call main_#t~ret22#1 := base2flt(0, 0); {19360#true} is VALID [2022-02-21 03:10:14,678 INFO L290 TraceCheckUtils]: 3: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19422#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:14,679 INFO L290 TraceCheckUtils]: 4: Hoare triple {19422#(= base2flt_~m |base2flt_#in~m|)} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19426#(and (<= (mod |base2flt_#in~m| 4294967296) 0) (= base2flt_~__retres4~0 0))} is VALID [2022-02-21 03:10:14,679 INFO L290 TraceCheckUtils]: 5: Hoare triple {19426#(and (<= (mod |base2flt_#in~m| 4294967296) 0) (= base2flt_~__retres4~0 0))} #res := ~__retres4~0; {19430#(and (= |base2flt_#res| 0) (<= (mod |base2flt_#in~m| 4294967296) 0))} is VALID [2022-02-21 03:10:14,680 INFO L290 TraceCheckUtils]: 6: Hoare triple {19430#(and (= |base2flt_#res| 0) (<= (mod |base2flt_#in~m| 4294967296) 0))} assume true; {19430#(and (= |base2flt_#res| 0) (<= (mod |base2flt_#in~m| 4294967296) 0))} is VALID [2022-02-21 03:10:14,681 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19430#(and (= |base2flt_#res| 0) (<= (mod |base2flt_#in~m| 4294967296) 0))} {19360#true} #378#return; {19437#(= |ULTIMATE.start_main_#t~ret22#1| 0)} is VALID [2022-02-21 03:10:14,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {19437#(= |ULTIMATE.start_main_#t~ret22#1| 0)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,681 INFO L272 TraceCheckUtils]: 9: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} call main_#t~ret23#1 := base2flt(1, 0); {19360#true} is VALID [2022-02-21 03:10:14,681 INFO L290 TraceCheckUtils]: 10: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,681 INFO L290 TraceCheckUtils]: 11: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 12: Hoare triple {19360#true} assume ~m % 4294967296 < 16777216; {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 13: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 14: Hoare triple {19360#true} assume !(~e <= -128); {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 15: Hoare triple {19360#true} assume ~e - 1 <= 2147483647; {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 16: Hoare triple {19360#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 17: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,682 INFO L290 TraceCheckUtils]: 18: Hoare triple {19360#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19360#true} is VALID [2022-02-21 03:10:14,683 INFO L290 TraceCheckUtils]: 19: Hoare triple {19360#true} assume 128 + ~e <= 2147483647; {19360#true} is VALID [2022-02-21 03:10:14,683 INFO L290 TraceCheckUtils]: 20: Hoare triple {19360#true} assume 128 + ~e >= -2147483648; {19360#true} is VALID [2022-02-21 03:10:14,683 INFO L290 TraceCheckUtils]: 21: Hoare triple {19360#true} assume 128 + ~e <= 2147483647; {19360#true} is VALID [2022-02-21 03:10:14,683 INFO L290 TraceCheckUtils]: 22: Hoare triple {19360#true} assume 128 + ~e >= -2147483648; {19360#true} is VALID [2022-02-21 03:10:14,683 INFO L290 TraceCheckUtils]: 23: Hoare triple {19360#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19360#true} is VALID [2022-02-21 03:10:14,683 INFO L290 TraceCheckUtils]: 24: Hoare triple {19360#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19360#true} is VALID [2022-02-21 03:10:14,684 INFO L290 TraceCheckUtils]: 25: Hoare triple {19360#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19360#true} is VALID [2022-02-21 03:10:14,684 INFO L290 TraceCheckUtils]: 26: Hoare triple {19360#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; {19360#true} is VALID [2022-02-21 03:10:14,684 INFO L290 TraceCheckUtils]: 27: Hoare triple {19360#true} ~__retres4~0 := ~res~0; {19360#true} is VALID [2022-02-21 03:10:14,684 INFO L290 TraceCheckUtils]: 28: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,684 INFO L290 TraceCheckUtils]: 29: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,685 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {19360#true} {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} #380#return; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,685 INFO L290 TraceCheckUtils]: 31: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,685 INFO L272 TraceCheckUtils]: 32: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {19360#true} is VALID [2022-02-21 03:10:14,685 INFO L290 TraceCheckUtils]: 33: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,686 INFO L290 TraceCheckUtils]: 34: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,686 INFO L290 TraceCheckUtils]: 35: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,686 INFO L290 TraceCheckUtils]: 36: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,686 INFO L290 TraceCheckUtils]: 37: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:14,686 INFO L290 TraceCheckUtils]: 38: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:14,686 INFO L290 TraceCheckUtils]: 39: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,687 INFO L290 TraceCheckUtils]: 40: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,687 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19360#true} {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} #382#return; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,688 INFO L290 TraceCheckUtils]: 42: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,688 INFO L272 TraceCheckUtils]: 43: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {19360#true} is VALID [2022-02-21 03:10:14,688 INFO L290 TraceCheckUtils]: 44: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,688 INFO L290 TraceCheckUtils]: 45: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:14,688 INFO L290 TraceCheckUtils]: 46: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:14,688 INFO L290 TraceCheckUtils]: 47: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:14,688 INFO L290 TraceCheckUtils]: 48: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:14,689 INFO L290 TraceCheckUtils]: 49: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:14,689 INFO L290 TraceCheckUtils]: 50: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:14,689 INFO L290 TraceCheckUtils]: 51: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:14,690 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {19360#true} {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} #384#return; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,690 INFO L290 TraceCheckUtils]: 53: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} is VALID [2022-02-21 03:10:14,690 INFO L290 TraceCheckUtils]: 54: Hoare triple {19441#(= |ULTIMATE.start_main_~zero~0#1| 0)} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {19361#false} is VALID [2022-02-21 03:10:14,691 INFO L290 TraceCheckUtils]: 55: Hoare triple {19361#false} 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; {19361#false} is VALID [2022-02-21 03:10:14,691 INFO L290 TraceCheckUtils]: 56: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:14,691 INFO L290 TraceCheckUtils]: 57: Hoare triple {19361#false} assume !(0 == mulflt_~b#1 % 4294967296); {19361#false} is VALID [2022-02-21 03:10:14,691 INFO L290 TraceCheckUtils]: 58: Hoare triple {19361#false} assume !(0 == mulflt_~a#1); {19361#false} is VALID [2022-02-21 03:10:14,691 INFO L290 TraceCheckUtils]: 59: Hoare triple {19361#false} assume !false; {19361#false} is VALID [2022-02-21 03:10:14,691 INFO L290 TraceCheckUtils]: 60: Hoare triple {19361#false} assume !false; {19361#false} is VALID [2022-02-21 03:10:14,692 INFO L290 TraceCheckUtils]: 61: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:14,692 INFO L290 TraceCheckUtils]: 62: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:14,692 INFO L290 TraceCheckUtils]: 63: Hoare triple {19361#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); {19361#false} is VALID [2022-02-21 03:10:14,692 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-21 03:10:14,692 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:15,059 INFO L290 TraceCheckUtils]: 63: Hoare triple {19361#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); {19361#false} is VALID [2022-02-21 03:10:15,060 INFO L290 TraceCheckUtils]: 62: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:15,060 INFO L290 TraceCheckUtils]: 61: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:15,060 INFO L290 TraceCheckUtils]: 60: Hoare triple {19361#false} assume !false; {19361#false} is VALID [2022-02-21 03:10:15,060 INFO L290 TraceCheckUtils]: 59: Hoare triple {19361#false} assume !false; {19361#false} is VALID [2022-02-21 03:10:15,060 INFO L290 TraceCheckUtils]: 58: Hoare triple {19361#false} assume !(0 == mulflt_~a#1); {19361#false} is VALID [2022-02-21 03:10:15,061 INFO L290 TraceCheckUtils]: 57: Hoare triple {19361#false} assume !(0 == mulflt_~b#1 % 4294967296); {19361#false} is VALID [2022-02-21 03:10:15,061 INFO L290 TraceCheckUtils]: 56: Hoare triple {19361#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; {19361#false} is VALID [2022-02-21 03:10:15,061 INFO L290 TraceCheckUtils]: 55: Hoare triple {19361#false} 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; {19361#false} is VALID [2022-02-21 03:10:15,062 INFO L290 TraceCheckUtils]: 54: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} assume main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296;main_~sa~0#1 := -1; {19361#false} is VALID [2022-02-21 03:10:15,062 INFO L290 TraceCheckUtils]: 53: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,063 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {19360#true} {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} #384#return; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,063 INFO L290 TraceCheckUtils]: 51: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:15,063 INFO L290 TraceCheckUtils]: 50: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L290 TraceCheckUtils]: 49: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L290 TraceCheckUtils]: 48: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L290 TraceCheckUtils]: 47: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L290 TraceCheckUtils]: 46: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L290 TraceCheckUtils]: 45: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L290 TraceCheckUtils]: 44: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,064 INFO L272 TraceCheckUtils]: 43: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {19360#true} is VALID [2022-02-21 03:10:15,065 INFO L290 TraceCheckUtils]: 42: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,066 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19360#true} {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} #382#return; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,066 INFO L290 TraceCheckUtils]: 40: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:15,066 INFO L290 TraceCheckUtils]: 39: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,066 INFO L290 TraceCheckUtils]: 38: Hoare triple {19360#true} assume ~e >= 127;~__retres4~0 := 4294967295; {19360#true} is VALID [2022-02-21 03:10:15,066 INFO L290 TraceCheckUtils]: 37: Hoare triple {19360#true} assume ~m % 4294967296 >= 33554432; {19360#true} is VALID [2022-02-21 03:10:15,067 INFO L290 TraceCheckUtils]: 36: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:15,067 INFO L290 TraceCheckUtils]: 35: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:15,067 INFO L290 TraceCheckUtils]: 34: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:15,067 INFO L290 TraceCheckUtils]: 33: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,067 INFO L272 TraceCheckUtils]: 32: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {19360#true} is VALID [2022-02-21 03:10:15,068 INFO L290 TraceCheckUtils]: 31: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,068 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {19360#true} {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} #380#return; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,068 INFO L290 TraceCheckUtils]: 29: Hoare triple {19360#true} assume true; {19360#true} is VALID [2022-02-21 03:10:15,069 INFO L290 TraceCheckUtils]: 28: Hoare triple {19360#true} #res := ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,069 INFO L290 TraceCheckUtils]: 27: Hoare triple {19360#true} ~__retres4~0 := ~res~0; {19360#true} is VALID [2022-02-21 03:10:15,069 INFO L290 TraceCheckUtils]: 26: Hoare triple {19360#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; {19360#true} is VALID [2022-02-21 03:10:15,069 INFO L290 TraceCheckUtils]: 25: Hoare triple {19360#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {19360#true} is VALID [2022-02-21 03:10:15,069 INFO L290 TraceCheckUtils]: 24: Hoare triple {19360#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {19360#true} is VALID [2022-02-21 03:10:15,069 INFO L290 TraceCheckUtils]: 23: Hoare triple {19360#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 22: Hoare triple {19360#true} assume 128 + ~e >= -2147483648; {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 21: Hoare triple {19360#true} assume 128 + ~e <= 2147483647; {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 20: Hoare triple {19360#true} assume 128 + ~e >= -2147483648; {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 19: Hoare triple {19360#true} assume 128 + ~e <= 2147483647; {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {19360#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 17: Hoare triple {19360#true} assume !(~m % 4294967296 < 16777216); {19360#true} is VALID [2022-02-21 03:10:15,070 INFO L290 TraceCheckUtils]: 16: Hoare triple {19360#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {19360#true} is VALID [2022-02-21 03:10:15,071 INFO L290 TraceCheckUtils]: 15: Hoare triple {19360#true} assume ~e - 1 <= 2147483647; {19360#true} is VALID [2022-02-21 03:10:15,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {19360#true} assume !(~e <= -128); {19360#true} is VALID [2022-02-21 03:10:15,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {19360#true} assume !false; {19360#true} is VALID [2022-02-21 03:10:15,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {19360#true} assume ~m % 4294967296 < 16777216; {19360#true} is VALID [2022-02-21 03:10:15,071 INFO L290 TraceCheckUtils]: 11: Hoare triple {19360#true} assume !(0 == ~m % 4294967296); {19360#true} is VALID [2022-02-21 03:10:15,071 INFO L290 TraceCheckUtils]: 10: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,072 INFO L272 TraceCheckUtils]: 9: Hoare triple {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} call main_#t~ret23#1 := base2flt(1, 0); {19360#true} is VALID [2022-02-21 03:10:15,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {19773#(<= (mod |ULTIMATE.start_main_#t~ret22#1| 4294967296) 0)} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {19634#(<= (mod |ULTIMATE.start_main_~zero~0#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,073 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19780#(or (not (= |base2flt_#in~m| 0)) (<= (mod |base2flt_#res| 4294967296) 0))} {19360#true} #378#return; {19773#(<= (mod |ULTIMATE.start_main_#t~ret22#1| 4294967296) 0)} is VALID [2022-02-21 03:10:15,073 INFO L290 TraceCheckUtils]: 6: Hoare triple {19780#(or (not (= |base2flt_#in~m| 0)) (<= (mod |base2flt_#res| 4294967296) 0))} assume true; {19780#(or (not (= |base2flt_#in~m| 0)) (<= (mod |base2flt_#res| 4294967296) 0))} is VALID [2022-02-21 03:10:15,074 INFO L290 TraceCheckUtils]: 5: Hoare triple {19787#(or (<= (mod base2flt_~__retres4~0 4294967296) 0) (not (= |base2flt_#in~m| 0)))} #res := ~__retres4~0; {19780#(or (not (= |base2flt_#in~m| 0)) (<= (mod |base2flt_#res| 4294967296) 0))} is VALID [2022-02-21 03:10:15,074 INFO L290 TraceCheckUtils]: 4: Hoare triple {19360#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {19787#(or (<= (mod base2flt_~__retres4~0 4294967296) 0) (not (= |base2flt_#in~m| 0)))} is VALID [2022-02-21 03:10:15,075 INFO L290 TraceCheckUtils]: 3: Hoare triple {19360#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {19360#true} is VALID [2022-02-21 03:10:15,075 INFO L272 TraceCheckUtils]: 2: Hoare triple {19360#true} call main_#t~ret22#1 := base2flt(0, 0); {19360#true} is VALID [2022-02-21 03:10:15,075 INFO L290 TraceCheckUtils]: 1: Hoare triple {19360#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {19360#true} is VALID [2022-02-21 03:10:15,075 INFO L290 TraceCheckUtils]: 0: Hoare triple {19360#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); {19360#true} is VALID [2022-02-21 03:10:15,075 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-02-21 03:10:15,076 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [200488196] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:15,076 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:15,076 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 7, 6] total 15 [2022-02-21 03:10:15,078 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1415995938] [2022-02-21 03:10:15,078 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:15,079 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) Word has length 64 [2022-02-21 03:10:15,081 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:15,081 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) [2022-02-21 03:10:15,168 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:15,168 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-02-21 03:10:15,168 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:15,169 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-02-21 03:10:15,169 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-02-21 03:10:15,169 INFO L87 Difference]: Start difference. First operand 250 states and 322 transitions. Second operand has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) [2022-02-21 03:10:17,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:17,634 INFO L93 Difference]: Finished difference Result 719 states and 913 transitions. [2022-02-21 03:10:17,634 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 45 states. [2022-02-21 03:10:17,634 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) Word has length 64 [2022-02-21 03:10:17,634 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:17,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) [2022-02-21 03:10:17,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 419 transitions. [2022-02-21 03:10:17,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) [2022-02-21 03:10:17,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 419 transitions. [2022-02-21 03:10:17,642 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 45 states and 419 transitions. [2022-02-21 03:10:17,969 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 419 edges. 419 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:17,979 INFO L225 Difference]: With dead ends: 719 [2022-02-21 03:10:17,979 INFO L226 Difference]: Without dead ends: 512 [2022-02-21 03:10:17,980 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 134 SyntacticMatches, 0 SemanticMatches, 49 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 725 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=565, Invalid=1985, Unknown=0, NotChecked=0, Total=2550 [2022-02-21 03:10:17,981 INFO L933 BasicCegarLoop]: 113 mSDtfsCounter, 543 mSDsluCounter, 759 mSDsCounter, 0 mSdLazyCounter, 383 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 543 SdHoareTripleChecker+Valid, 872 SdHoareTripleChecker+Invalid, 431 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 383 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:17,981 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [543 Valid, 872 Invalid, 431 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 383 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-21 03:10:17,982 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 512 states. [2022-02-21 03:10:18,165 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 512 to 250. [2022-02-21 03:10:18,165 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:18,166 INFO L82 GeneralOperation]: Start isEquivalent. First operand 512 states. Second operand has 250 states, 229 states have (on average 1.3493449781659388) internal successors, (309), 240 states have internal predecessors, (309), 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:18,166 INFO L74 IsIncluded]: Start isIncluded. First operand 512 states. Second operand has 250 states, 229 states have (on average 1.3493449781659388) internal successors, (309), 240 states have internal predecessors, (309), 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:18,167 INFO L87 Difference]: Start difference. First operand 512 states. Second operand has 250 states, 229 states have (on average 1.3493449781659388) internal successors, (309), 240 states have internal predecessors, (309), 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:18,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:18,180 INFO L93 Difference]: Finished difference Result 512 states and 644 transitions. [2022-02-21 03:10:18,180 INFO L276 IsEmpty]: Start isEmpty. Operand 512 states and 644 transitions. [2022-02-21 03:10:18,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:18,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:18,181 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 229 states have (on average 1.3493449781659388) internal successors, (309), 240 states have internal predecessors, (309), 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 512 states. [2022-02-21 03:10:18,182 INFO L87 Difference]: Start difference. First operand has 250 states, 229 states have (on average 1.3493449781659388) internal successors, (309), 240 states have internal predecessors, (309), 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 512 states. [2022-02-21 03:10:18,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:18,195 INFO L93 Difference]: Finished difference Result 512 states and 644 transitions. [2022-02-21 03:10:18,195 INFO L276 IsEmpty]: Start isEmpty. Operand 512 states and 644 transitions. [2022-02-21 03:10:18,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:18,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:18,196 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:18,196 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:18,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 229 states have (on average 1.3493449781659388) internal successors, (309), 240 states have internal predecessors, (309), 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:18,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 318 transitions. [2022-02-21 03:10:18,201 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 318 transitions. Word has length 64 [2022-02-21 03:10:18,201 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:18,202 INFO L470 AbstractCegarLoop]: Abstraction has 250 states and 318 transitions. [2022-02-21 03:10:18,202 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.266666666666667) internal successors, (79), 12 states have internal predecessors, (79), 4 states have call successors, (11), 2 states have call predecessors, (11), 4 states have return successors, (12), 6 states have call predecessors, (12), 4 states have call successors, (12) [2022-02-21 03:10:18,202 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 318 transitions. [2022-02-21 03:10:18,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-02-21 03:10:18,203 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:18,203 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, 1, 1, 1, 1] [2022-02-21 03:10:18,232 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:18,419 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:18,420 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:18,420 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:18,420 INFO L85 PathProgramCache]: Analyzing trace with hash 768500551, now seen corresponding path program 1 times [2022-02-21 03:10:18,420 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:18,420 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1967631613] [2022-02-21 03:10:18,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:18,420 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:18,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,491 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:18,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,494 INFO L290 TraceCheckUtils]: 0: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,494 INFO L290 TraceCheckUtils]: 1: Hoare triple {21992#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {21992#true} is VALID [2022-02-21 03:10:18,495 INFO L290 TraceCheckUtils]: 2: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,495 INFO L290 TraceCheckUtils]: 3: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,495 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {21992#true} {21992#true} #378#return; {21992#true} is VALID [2022-02-21 03:10:18,495 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:18,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,586 INFO L290 TraceCheckUtils]: 0: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,587 INFO L290 TraceCheckUtils]: 3: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,588 INFO L290 TraceCheckUtils]: 4: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,588 INFO L290 TraceCheckUtils]: 5: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,589 INFO L290 TraceCheckUtils]: 6: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,590 INFO L290 TraceCheckUtils]: 7: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,590 INFO L290 TraceCheckUtils]: 8: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,591 INFO L290 TraceCheckUtils]: 9: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,591 INFO L290 TraceCheckUtils]: 10: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,592 INFO L290 TraceCheckUtils]: 11: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22046#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,593 INFO L290 TraceCheckUtils]: 12: Hoare triple {22046#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,593 INFO L290 TraceCheckUtils]: 13: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,593 INFO L290 TraceCheckUtils]: 14: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,594 INFO L290 TraceCheckUtils]: 15: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,594 INFO L290 TraceCheckUtils]: 16: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,595 INFO L290 TraceCheckUtils]: 17: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,595 INFO L290 TraceCheckUtils]: 18: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,595 INFO L290 TraceCheckUtils]: 19: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,596 INFO L290 TraceCheckUtils]: 20: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,596 INFO L290 TraceCheckUtils]: 21: Hoare triple {22047#(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; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,596 INFO L290 TraceCheckUtils]: 22: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,597 INFO L290 TraceCheckUtils]: 23: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,597 INFO L290 TraceCheckUtils]: 24: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume true; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,598 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {22047#(not (= |base2flt_#in~m| 1))} {21992#true} #380#return; {21993#false} is VALID [2022-02-21 03:10:18,598 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 37 [2022-02-21 03:10:18,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,604 INFO L290 TraceCheckUtils]: 0: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,604 INFO L290 TraceCheckUtils]: 1: Hoare triple {21992#true} assume !(0 == ~m % 4294967296); {21992#true} is VALID [2022-02-21 03:10:18,604 INFO L290 TraceCheckUtils]: 2: Hoare triple {21992#true} assume !(~m % 4294967296 < 16777216); {21992#true} is VALID [2022-02-21 03:10:18,604 INFO L290 TraceCheckUtils]: 3: Hoare triple {21992#true} assume !false; {21992#true} is VALID [2022-02-21 03:10:18,604 INFO L290 TraceCheckUtils]: 4: Hoare triple {21992#true} assume ~m % 4294967296 >= 33554432; {21992#true} is VALID [2022-02-21 03:10:18,604 INFO L290 TraceCheckUtils]: 5: Hoare triple {21992#true} assume ~e >= 127;~__retres4~0 := 4294967295; {21992#true} is VALID [2022-02-21 03:10:18,605 INFO L290 TraceCheckUtils]: 6: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,605 INFO L290 TraceCheckUtils]: 7: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,605 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {21992#true} {21993#false} #382#return; {21993#false} is VALID [2022-02-21 03:10:18,605 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-21 03:10:18,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,621 INFO L290 TraceCheckUtils]: 0: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {21992#true} assume !(0 == ~m % 4294967296); {21992#true} is VALID [2022-02-21 03:10:18,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {21992#true} assume !(~m % 4294967296 < 16777216); {21992#true} is VALID [2022-02-21 03:10:18,622 INFO L290 TraceCheckUtils]: 3: Hoare triple {21992#true} assume !false; {21992#true} is VALID [2022-02-21 03:10:18,622 INFO L290 TraceCheckUtils]: 4: Hoare triple {21992#true} assume ~m % 4294967296 >= 33554432; {21992#true} is VALID [2022-02-21 03:10:18,622 INFO L290 TraceCheckUtils]: 5: Hoare triple {21992#true} assume ~e >= 127;~__retres4~0 := 4294967295; {21992#true} is VALID [2022-02-21 03:10:18,623 INFO L290 TraceCheckUtils]: 6: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,623 INFO L290 TraceCheckUtils]: 7: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,623 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {21992#true} {21993#false} #384#return; {21993#false} is VALID [2022-02-21 03:10:18,623 INFO L290 TraceCheckUtils]: 0: Hoare triple {21992#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); {21992#true} is VALID [2022-02-21 03:10:18,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {21992#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {21992#true} is VALID [2022-02-21 03:10:18,624 INFO L272 TraceCheckUtils]: 2: Hoare triple {21992#true} call main_#t~ret22#1 := base2flt(0, 0); {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:18,624 INFO L290 TraceCheckUtils]: 3: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,624 INFO L290 TraceCheckUtils]: 4: Hoare triple {21992#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {21992#true} is VALID [2022-02-21 03:10:18,624 INFO L290 TraceCheckUtils]: 5: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,624 INFO L290 TraceCheckUtils]: 6: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,625 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {21992#true} {21992#true} #378#return; {21992#true} is VALID [2022-02-21 03:10:18,625 INFO L290 TraceCheckUtils]: 8: Hoare triple {21992#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {21992#true} is VALID [2022-02-21 03:10:18,625 INFO L272 TraceCheckUtils]: 9: Hoare triple {21992#true} call main_#t~ret23#1 := base2flt(1, 0); {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:18,626 INFO L290 TraceCheckUtils]: 10: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,626 INFO L290 TraceCheckUtils]: 11: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,626 INFO L290 TraceCheckUtils]: 12: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,627 INFO L290 TraceCheckUtils]: 13: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,627 INFO L290 TraceCheckUtils]: 14: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,627 INFO L290 TraceCheckUtils]: 15: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:18,628 INFO L290 TraceCheckUtils]: 16: Hoare triple {22044#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,629 INFO L290 TraceCheckUtils]: 17: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,630 INFO L290 TraceCheckUtils]: 18: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,631 INFO L290 TraceCheckUtils]: 20: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,631 INFO L290 TraceCheckUtils]: 21: Hoare triple {22045#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22046#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:18,632 INFO L290 TraceCheckUtils]: 22: Hoare triple {22046#(or (and (<= base2flt_~m 4) (not (<= (+ (div base2flt_~m 4294967296) 1) 0))) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,632 INFO L290 TraceCheckUtils]: 23: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,633 INFO L290 TraceCheckUtils]: 24: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,633 INFO L290 TraceCheckUtils]: 25: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,633 INFO L290 TraceCheckUtils]: 26: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,634 INFO L290 TraceCheckUtils]: 27: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,634 INFO L290 TraceCheckUtils]: 28: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,634 INFO L290 TraceCheckUtils]: 29: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,635 INFO L290 TraceCheckUtils]: 30: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,635 INFO L290 TraceCheckUtils]: 31: Hoare triple {22047#(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; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,635 INFO L290 TraceCheckUtils]: 32: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,636 INFO L290 TraceCheckUtils]: 33: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,636 INFO L290 TraceCheckUtils]: 34: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume true; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:18,637 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {22047#(not (= |base2flt_#in~m| 1))} {21992#true} #380#return; {21993#false} is VALID [2022-02-21 03:10:18,637 INFO L290 TraceCheckUtils]: 36: Hoare triple {21993#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {21993#false} is VALID [2022-02-21 03:10:18,637 INFO L272 TraceCheckUtils]: 37: Hoare triple {21993#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:18,637 INFO L290 TraceCheckUtils]: 38: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,637 INFO L290 TraceCheckUtils]: 39: Hoare triple {21992#true} assume !(0 == ~m % 4294967296); {21992#true} is VALID [2022-02-21 03:10:18,637 INFO L290 TraceCheckUtils]: 40: Hoare triple {21992#true} assume !(~m % 4294967296 < 16777216); {21992#true} is VALID [2022-02-21 03:10:18,637 INFO L290 TraceCheckUtils]: 41: Hoare triple {21992#true} assume !false; {21992#true} is VALID [2022-02-21 03:10:18,638 INFO L290 TraceCheckUtils]: 42: Hoare triple {21992#true} assume ~m % 4294967296 >= 33554432; {21992#true} is VALID [2022-02-21 03:10:18,638 INFO L290 TraceCheckUtils]: 43: Hoare triple {21992#true} assume ~e >= 127;~__retres4~0 := 4294967295; {21992#true} is VALID [2022-02-21 03:10:18,638 INFO L290 TraceCheckUtils]: 44: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,638 INFO L290 TraceCheckUtils]: 45: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,638 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21992#true} {21993#false} #382#return; {21993#false} is VALID [2022-02-21 03:10:18,638 INFO L290 TraceCheckUtils]: 47: Hoare triple {21993#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {21993#false} is VALID [2022-02-21 03:10:18,639 INFO L272 TraceCheckUtils]: 48: Hoare triple {21993#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:18,639 INFO L290 TraceCheckUtils]: 49: Hoare triple {22043#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,639 INFO L290 TraceCheckUtils]: 50: Hoare triple {21992#true} assume !(0 == ~m % 4294967296); {21992#true} is VALID [2022-02-21 03:10:18,639 INFO L290 TraceCheckUtils]: 51: Hoare triple {21992#true} assume !(~m % 4294967296 < 16777216); {21992#true} is VALID [2022-02-21 03:10:18,639 INFO L290 TraceCheckUtils]: 52: Hoare triple {21992#true} assume !false; {21992#true} is VALID [2022-02-21 03:10:18,639 INFO L290 TraceCheckUtils]: 53: Hoare triple {21992#true} assume ~m % 4294967296 >= 33554432; {21992#true} is VALID [2022-02-21 03:10:18,639 INFO L290 TraceCheckUtils]: 54: Hoare triple {21992#true} assume ~e >= 127;~__retres4~0 := 4294967295; {21992#true} is VALID [2022-02-21 03:10:18,640 INFO L290 TraceCheckUtils]: 55: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,640 INFO L290 TraceCheckUtils]: 56: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,640 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {21992#true} {21993#false} #384#return; {21993#false} is VALID [2022-02-21 03:10:18,640 INFO L290 TraceCheckUtils]: 58: Hoare triple {21993#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {21993#false} is VALID [2022-02-21 03:10:18,640 INFO L290 TraceCheckUtils]: 59: Hoare triple {21993#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {21993#false} is VALID [2022-02-21 03:10:18,640 INFO L290 TraceCheckUtils]: 60: Hoare triple {21993#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 61: Hoare triple {21993#false} main_~sa~0#1 := main_~tmp~2#1; {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 62: Hoare triple {21993#false} 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; {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 63: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 64: Hoare triple {21993#false} assume !(0 == mulflt_~b#1 % 4294967296); {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 65: Hoare triple {21993#false} assume !(0 == mulflt_~a#1); {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 66: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:18,641 INFO L290 TraceCheckUtils]: 67: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:18,642 INFO L290 TraceCheckUtils]: 68: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:18,642 INFO L290 TraceCheckUtils]: 69: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:18,642 INFO L290 TraceCheckUtils]: 70: Hoare triple {21993#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); {21993#false} is VALID [2022-02-21 03:10:18,643 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:18,643 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:18,643 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1967631613] [2022-02-21 03:10:18,643 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1967631613] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:18,644 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1789530112] [2022-02-21 03:10:18,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:18,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:18,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:18,648 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:18,660 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:18,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,724 INFO L263 TraceCheckSpWp]: Trace formula consists of 208 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-21 03:10:18,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:18,739 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:18,924 INFO L290 TraceCheckUtils]: 0: Hoare triple {21992#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); {21992#true} is VALID [2022-02-21 03:10:18,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {21992#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {21992#true} is VALID [2022-02-21 03:10:18,924 INFO L272 TraceCheckUtils]: 2: Hoare triple {21992#true} call main_#t~ret22#1 := base2flt(0, 0); {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L290 TraceCheckUtils]: 3: Hoare triple {21992#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L290 TraceCheckUtils]: 4: Hoare triple {21992#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L290 TraceCheckUtils]: 6: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {21992#true} {21992#true} #378#return; {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L290 TraceCheckUtils]: 8: Hoare triple {21992#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L272 TraceCheckUtils]: 9: Hoare triple {21992#true} call main_#t~ret23#1 := base2flt(1, 0); {21992#true} is VALID [2022-02-21 03:10:18,925 INFO L290 TraceCheckUtils]: 10: Hoare triple {21992#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {22081#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:18,926 INFO L290 TraceCheckUtils]: 11: Hoare triple {22081#(= base2flt_~m |base2flt_#in~m|)} assume !(0 == ~m % 4294967296); {22081#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:18,926 INFO L290 TraceCheckUtils]: 12: Hoare triple {22081#(= base2flt_~m |base2flt_#in~m|)} assume ~m % 4294967296 < 16777216; {22081#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:18,926 INFO L290 TraceCheckUtils]: 13: Hoare triple {22081#(= base2flt_~m |base2flt_#in~m|)} assume !false; {22081#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:18,926 INFO L290 TraceCheckUtils]: 14: Hoare triple {22081#(= base2flt_~m |base2flt_#in~m|)} assume !(~e <= -128); {22081#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:18,927 INFO L290 TraceCheckUtils]: 15: Hoare triple {22081#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 <= 2147483647; {22081#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:18,927 INFO L290 TraceCheckUtils]: 16: Hoare triple {22081#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:18,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:18,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !false; {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:18,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:18,928 INFO L290 TraceCheckUtils]: 20: Hoare triple {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:18,929 INFO L290 TraceCheckUtils]: 21: Hoare triple {22100#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22116#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:18,932 INFO L290 TraceCheckUtils]: 22: Hoare triple {22116#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !(~m % 4294967296 < 16777216); {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,933 INFO L290 TraceCheckUtils]: 23: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,933 INFO L290 TraceCheckUtils]: 24: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,934 INFO L290 TraceCheckUtils]: 27: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,934 INFO L290 TraceCheckUtils]: 28: Hoare triple {22120#(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))); {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,934 INFO L290 TraceCheckUtils]: 29: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,935 INFO L290 TraceCheckUtils]: 30: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,935 INFO L290 TraceCheckUtils]: 31: Hoare triple {22120#(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; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,935 INFO L290 TraceCheckUtils]: 32: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} ~__retres4~0 := ~res~0; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,936 INFO L290 TraceCheckUtils]: 33: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} #res := ~__retres4~0; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,936 INFO L290 TraceCheckUtils]: 34: Hoare triple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} assume true; {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} is VALID [2022-02-21 03:10:18,936 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {22120#(not (< (mod (* |base2flt_#in~m| 4) 4294967296) 16777216))} {21992#true} #380#return; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 36: Hoare triple {21993#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L272 TraceCheckUtils]: 37: Hoare triple {21993#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 38: Hoare triple {21993#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 39: Hoare triple {21993#false} assume !(0 == ~m % 4294967296); {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 40: Hoare triple {21993#false} assume !(~m % 4294967296 < 16777216); {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 41: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 42: Hoare triple {21993#false} assume ~m % 4294967296 >= 33554432; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 43: Hoare triple {21993#false} assume ~e >= 127;~__retres4~0 := 4294967295; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 44: Hoare triple {21993#false} #res := ~__retres4~0; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 45: Hoare triple {21993#false} assume true; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21993#false} {21993#false} #382#return; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 47: Hoare triple {21993#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L272 TraceCheckUtils]: 48: Hoare triple {21993#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {21993#false} is VALID [2022-02-21 03:10:18,937 INFO L290 TraceCheckUtils]: 49: Hoare triple {21993#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 50: Hoare triple {21993#false} assume !(0 == ~m % 4294967296); {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 51: Hoare triple {21993#false} assume !(~m % 4294967296 < 16777216); {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 52: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 53: Hoare triple {21993#false} assume ~m % 4294967296 >= 33554432; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 54: Hoare triple {21993#false} assume ~e >= 127;~__retres4~0 := 4294967295; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 55: Hoare triple {21993#false} #res := ~__retres4~0; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 56: Hoare triple {21993#false} assume true; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {21993#false} {21993#false} #384#return; {21993#false} is VALID [2022-02-21 03:10:18,938 INFO L290 TraceCheckUtils]: 58: Hoare triple {21993#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 59: Hoare triple {21993#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 60: Hoare triple {21993#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 61: Hoare triple {21993#false} main_~sa~0#1 := main_~tmp~2#1; {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 62: Hoare triple {21993#false} 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; {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 63: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 64: Hoare triple {21993#false} assume !(0 == mulflt_~b#1 % 4294967296); {21993#false} is VALID [2022-02-21 03:10:18,939 INFO L290 TraceCheckUtils]: 65: Hoare triple {21993#false} assume !(0 == mulflt_~a#1); {21993#false} is VALID [2022-02-21 03:10:18,940 INFO L290 TraceCheckUtils]: 66: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:18,940 INFO L290 TraceCheckUtils]: 67: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:18,940 INFO L290 TraceCheckUtils]: 68: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:18,940 INFO L290 TraceCheckUtils]: 69: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:18,940 INFO L290 TraceCheckUtils]: 70: Hoare triple {21993#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); {21993#false} is VALID [2022-02-21 03:10:18,941 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:18,941 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:19,273 INFO L290 TraceCheckUtils]: 70: Hoare triple {21993#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); {21993#false} is VALID [2022-02-21 03:10:19,273 INFO L290 TraceCheckUtils]: 69: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:19,273 INFO L290 TraceCheckUtils]: 68: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 67: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 66: Hoare triple {21993#false} assume !false; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 65: Hoare triple {21993#false} assume !(0 == mulflt_~a#1); {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 64: Hoare triple {21993#false} assume !(0 == mulflt_~b#1 % 4294967296); {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 63: Hoare triple {21993#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; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 62: Hoare triple {21993#false} 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; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 61: Hoare triple {21993#false} main_~sa~0#1 := main_~tmp~2#1; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 60: Hoare triple {21993#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 59: Hoare triple {21993#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 58: Hoare triple {21993#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {21992#true} {21993#false} #384#return; {21993#false} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 56: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:19,274 INFO L290 TraceCheckUtils]: 55: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 54: Hoare triple {21992#true} assume ~e >= 127;~__retres4~0 := 4294967295; {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 53: Hoare triple {21992#true} assume ~m % 4294967296 >= 33554432; {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 52: Hoare triple {21992#true} assume !false; {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 51: Hoare triple {21992#true} assume !(~m % 4294967296 < 16777216); {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 50: Hoare triple {21992#true} assume !(0 == ~m % 4294967296); {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 49: Hoare triple {21992#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L272 TraceCheckUtils]: 48: Hoare triple {21993#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {21992#true} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 47: Hoare triple {21993#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {21993#false} is VALID [2022-02-21 03:10:19,275 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21992#true} {21993#false} #382#return; {21993#false} is VALID [2022-02-21 03:10:19,275 INFO L290 TraceCheckUtils]: 45: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 44: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 43: Hoare triple {21992#true} assume ~e >= 127;~__retres4~0 := 4294967295; {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 42: Hoare triple {21992#true} assume ~m % 4294967296 >= 33554432; {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 41: Hoare triple {21992#true} assume !false; {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 40: Hoare triple {21992#true} assume !(~m % 4294967296 < 16777216); {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 39: Hoare triple {21992#true} assume !(0 == ~m % 4294967296); {21992#true} is VALID [2022-02-21 03:10:19,276 INFO L290 TraceCheckUtils]: 38: Hoare triple {21992#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:19,277 INFO L272 TraceCheckUtils]: 37: Hoare triple {21993#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {21992#true} is VALID [2022-02-21 03:10:19,277 INFO L290 TraceCheckUtils]: 36: Hoare triple {21993#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {21993#false} is VALID [2022-02-21 03:10:19,277 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {22047#(not (= |base2flt_#in~m| 1))} {21992#true} #380#return; {21993#false} is VALID [2022-02-21 03:10:19,278 INFO L290 TraceCheckUtils]: 34: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume true; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,278 INFO L290 TraceCheckUtils]: 33: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,279 INFO L290 TraceCheckUtils]: 32: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,279 INFO L290 TraceCheckUtils]: 31: Hoare triple {22047#(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; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,279 INFO L290 TraceCheckUtils]: 30: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,280 INFO L290 TraceCheckUtils]: 29: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,280 INFO L290 TraceCheckUtils]: 28: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,280 INFO L290 TraceCheckUtils]: 27: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,281 INFO L290 TraceCheckUtils]: 26: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,281 INFO L290 TraceCheckUtils]: 25: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,281 INFO L290 TraceCheckUtils]: 24: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,281 INFO L290 TraceCheckUtils]: 23: Hoare triple {22047#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,282 INFO L290 TraceCheckUtils]: 22: Hoare triple {22412#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {22047#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:19,283 INFO L290 TraceCheckUtils]: 21: Hoare triple {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22412#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,283 INFO L290 TraceCheckUtils]: 20: Hoare triple {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,284 INFO L290 TraceCheckUtils]: 19: Hoare triple {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,284 INFO L290 TraceCheckUtils]: 18: Hoare triple {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,284 INFO L290 TraceCheckUtils]: 17: Hoare triple {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,286 INFO L290 TraceCheckUtils]: 16: Hoare triple {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {22416#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,286 INFO L290 TraceCheckUtils]: 15: Hoare triple {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,286 INFO L290 TraceCheckUtils]: 14: Hoare triple {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,286 INFO L290 TraceCheckUtils]: 13: Hoare triple {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,287 INFO L290 TraceCheckUtils]: 11: Hoare triple {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(0 == ~m % 4294967296); {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,287 INFO L290 TraceCheckUtils]: 10: Hoare triple {21992#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {22432#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:19,287 INFO L272 TraceCheckUtils]: 9: Hoare triple {21992#true} call main_#t~ret23#1 := base2flt(1, 0); {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 8: Hoare triple {21992#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {21992#true} {21992#true} #378#return; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 6: Hoare triple {21992#true} assume true; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {21992#true} #res := ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 4: Hoare triple {21992#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 3: Hoare triple {21992#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L272 TraceCheckUtils]: 2: Hoare triple {21992#true} call main_#t~ret22#1 := base2flt(0, 0); {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 1: Hoare triple {21992#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {21992#true} is VALID [2022-02-21 03:10:19,288 INFO L290 TraceCheckUtils]: 0: Hoare triple {21992#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); {21992#true} is VALID [2022-02-21 03:10:19,288 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:19,289 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1789530112] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:19,289 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:19,289 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-02-21 03:10:19,289 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [823441113] [2022-02-21 03:10:19,289 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:19,290 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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 71 [2022-02-21 03:10:19,291 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:19,292 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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:19,373 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:19,373 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-21 03:10:19,373 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:19,373 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-21 03:10:19,373 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=121, Unknown=0, NotChecked=0, Total=182 [2022-02-21 03:10:19,374 INFO L87 Difference]: Start difference. First operand 250 states and 318 transitions. Second operand has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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:22,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:22,241 INFO L93 Difference]: Finished difference Result 894 states and 1137 transitions. [2022-02-21 03:10:22,241 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-02-21 03:10:22,241 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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 71 [2022-02-21 03:10:22,241 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:22,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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:22,246 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 524 transitions. [2022-02-21 03:10:22,246 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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:22,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 524 transitions. [2022-02-21 03:10:22,251 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 524 transitions. [2022-02-21 03:10:22,683 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 524 edges. 524 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:22,706 INFO L225 Difference]: With dead ends: 894 [2022-02-21 03:10:22,706 INFO L226 Difference]: Without dead ends: 644 [2022-02-21 03:10:22,708 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 190 GetRequests, 157 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:22,709 INFO L933 BasicCegarLoop]: 138 mSDtfsCounter, 571 mSDsluCounter, 569 mSDsCounter, 0 mSdLazyCounter, 425 mSolverCounterSat, 106 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 571 SdHoareTripleChecker+Valid, 707 SdHoareTripleChecker+Invalid, 531 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 106 IncrementalHoareTripleChecker+Valid, 425 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:22,709 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [571 Valid, 707 Invalid, 531 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [106 Valid, 425 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-21 03:10:22,710 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 644 states. [2022-02-21 03:10:22,961 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 644 to 281. [2022-02-21 03:10:22,961 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:22,962 INFO L82 GeneralOperation]: Start isEquivalent. First operand 644 states. Second operand has 281 states, 260 states have (on average 1.3076923076923077) internal successors, (340), 271 states have internal predecessors, (340), 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,962 INFO L74 IsIncluded]: Start isIncluded. First operand 644 states. Second operand has 281 states, 260 states have (on average 1.3076923076923077) internal successors, (340), 271 states have internal predecessors, (340), 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,963 INFO L87 Difference]: Start difference. First operand 644 states. Second operand has 281 states, 260 states have (on average 1.3076923076923077) internal successors, (340), 271 states have internal predecessors, (340), 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,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:22,985 INFO L93 Difference]: Finished difference Result 644 states and 802 transitions. [2022-02-21 03:10:22,985 INFO L276 IsEmpty]: Start isEmpty. Operand 644 states and 802 transitions. [2022-02-21 03:10:22,986 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:22,986 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:22,986 INFO L74 IsIncluded]: Start isIncluded. First operand has 281 states, 260 states have (on average 1.3076923076923077) internal successors, (340), 271 states have internal predecessors, (340), 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 644 states. [2022-02-21 03:10:22,987 INFO L87 Difference]: Start difference. First operand has 281 states, 260 states have (on average 1.3076923076923077) internal successors, (340), 271 states have internal predecessors, (340), 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 644 states. [2022-02-21 03:10:23,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:23,006 INFO L93 Difference]: Finished difference Result 644 states and 802 transitions. [2022-02-21 03:10:23,006 INFO L276 IsEmpty]: Start isEmpty. Operand 644 states and 802 transitions. [2022-02-21 03:10:23,007 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:23,007 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:23,007 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:23,007 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:23,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 281 states, 260 states have (on average 1.3076923076923077) internal successors, (340), 271 states have internal predecessors, (340), 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:23,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 281 states to 281 states and 349 transitions. [2022-02-21 03:10:23,012 INFO L78 Accepts]: Start accepts. Automaton has 281 states and 349 transitions. Word has length 71 [2022-02-21 03:10:23,012 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:23,013 INFO L470 AbstractCegarLoop]: Abstraction has 281 states and 349 transitions. [2022-02-21 03:10:23,013 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 7.071428571428571) internal successors, (99), 13 states have internal predecessors, (99), 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:23,013 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 349 transitions. [2022-02-21 03:10:23,014 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-02-21 03:10:23,014 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:23,014 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, 1, 1, 1, 1] [2022-02-21 03:10:23,038 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:23,227 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:23,227 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:23,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:23,228 INFO L85 PathProgramCache]: Analyzing trace with hash -1043554459, now seen corresponding path program 1 times [2022-02-21 03:10:23,228 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:23,228 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1143731444] [2022-02-21 03:10:23,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:23,228 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:23,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,294 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:23,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,298 INFO L290 TraceCheckUtils]: 0: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,298 INFO L290 TraceCheckUtils]: 1: Hoare triple {25148#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {25148#true} is VALID [2022-02-21 03:10:23,298 INFO L290 TraceCheckUtils]: 2: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,298 INFO L290 TraceCheckUtils]: 3: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,298 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {25148#true} {25148#true} #378#return; {25148#true} is VALID [2022-02-21 03:10:23,299 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:23,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,413 INFO L290 TraceCheckUtils]: 0: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,414 INFO L290 TraceCheckUtils]: 1: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,414 INFO L290 TraceCheckUtils]: 2: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,415 INFO L290 TraceCheckUtils]: 3: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,415 INFO L290 TraceCheckUtils]: 4: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,416 INFO L290 TraceCheckUtils]: 5: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,417 INFO L290 TraceCheckUtils]: 6: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,417 INFO L290 TraceCheckUtils]: 7: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,418 INFO L290 TraceCheckUtils]: 9: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,418 INFO L290 TraceCheckUtils]: 10: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,419 INFO L290 TraceCheckUtils]: 11: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,420 INFO L290 TraceCheckUtils]: 12: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,420 INFO L290 TraceCheckUtils]: 13: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,421 INFO L290 TraceCheckUtils]: 14: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,421 INFO L290 TraceCheckUtils]: 15: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,422 INFO L290 TraceCheckUtils]: 16: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,422 INFO L290 TraceCheckUtils]: 17: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,423 INFO L290 TraceCheckUtils]: 18: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,423 INFO L290 TraceCheckUtils]: 19: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,424 INFO L290 TraceCheckUtils]: 20: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,424 INFO L290 TraceCheckUtils]: 21: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,425 INFO L290 TraceCheckUtils]: 22: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,425 INFO L290 TraceCheckUtils]: 23: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,426 INFO L290 TraceCheckUtils]: 24: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,427 INFO L290 TraceCheckUtils]: 25: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,427 INFO L290 TraceCheckUtils]: 26: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,428 INFO L290 TraceCheckUtils]: 27: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,428 INFO L290 TraceCheckUtils]: 28: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,429 INFO L290 TraceCheckUtils]: 29: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,429 INFO L290 TraceCheckUtils]: 30: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,430 INFO L290 TraceCheckUtils]: 31: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,431 INFO L290 TraceCheckUtils]: 32: Hoare triple {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,431 INFO L290 TraceCheckUtils]: 33: Hoare triple {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,432 INFO L290 TraceCheckUtils]: 34: Hoare triple {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {25219#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:23,432 INFO L290 TraceCheckUtils]: 35: Hoare triple {25219#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {25219#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:23,433 INFO L290 TraceCheckUtils]: 36: Hoare triple {25219#(not (= |base2flt_#in~e| 0))} assume true; {25219#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:23,433 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25219#(not (= |base2flt_#in~e| 0))} {25148#true} #380#return; {25149#false} is VALID [2022-02-21 03:10:23,434 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-21 03:10:23,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,440 INFO L290 TraceCheckUtils]: 0: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,440 INFO L290 TraceCheckUtils]: 1: Hoare triple {25148#true} assume !(0 == ~m % 4294967296); {25148#true} is VALID [2022-02-21 03:10:23,440 INFO L290 TraceCheckUtils]: 2: Hoare triple {25148#true} assume !(~m % 4294967296 < 16777216); {25148#true} is VALID [2022-02-21 03:10:23,440 INFO L290 TraceCheckUtils]: 3: Hoare triple {25148#true} assume !false; {25148#true} is VALID [2022-02-21 03:10:23,440 INFO L290 TraceCheckUtils]: 4: Hoare triple {25148#true} assume ~m % 4294967296 >= 33554432; {25148#true} is VALID [2022-02-21 03:10:23,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {25148#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25148#true} is VALID [2022-02-21 03:10:23,441 INFO L290 TraceCheckUtils]: 6: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,441 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {25148#true} {25149#false} #382#return; {25149#false} is VALID [2022-02-21 03:10:23,441 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 60 [2022-02-21 03:10:23,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,447 INFO L290 TraceCheckUtils]: 0: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {25148#true} assume !(0 == ~m % 4294967296); {25148#true} is VALID [2022-02-21 03:10:23,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {25148#true} assume !(~m % 4294967296 < 16777216); {25148#true} is VALID [2022-02-21 03:10:23,447 INFO L290 TraceCheckUtils]: 3: Hoare triple {25148#true} assume !false; {25148#true} is VALID [2022-02-21 03:10:23,448 INFO L290 TraceCheckUtils]: 4: Hoare triple {25148#true} assume ~m % 4294967296 >= 33554432; {25148#true} is VALID [2022-02-21 03:10:23,448 INFO L290 TraceCheckUtils]: 5: Hoare triple {25148#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25148#true} is VALID [2022-02-21 03:10:23,448 INFO L290 TraceCheckUtils]: 6: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,448 INFO L290 TraceCheckUtils]: 7: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,448 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {25148#true} {25149#false} #384#return; {25149#false} is VALID [2022-02-21 03:10:23,448 INFO L290 TraceCheckUtils]: 0: Hoare triple {25148#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); {25148#true} is VALID [2022-02-21 03:10:23,449 INFO L290 TraceCheckUtils]: 1: Hoare triple {25148#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {25148#true} is VALID [2022-02-21 03:10:23,449 INFO L272 TraceCheckUtils]: 2: Hoare triple {25148#true} call main_#t~ret22#1 := base2flt(0, 0); {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,449 INFO L290 TraceCheckUtils]: 3: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,450 INFO L290 TraceCheckUtils]: 4: Hoare triple {25148#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {25148#true} is VALID [2022-02-21 03:10:23,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,450 INFO L290 TraceCheckUtils]: 6: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,450 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {25148#true} {25148#true} #378#return; {25148#true} is VALID [2022-02-21 03:10:23,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {25148#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {25148#true} is VALID [2022-02-21 03:10:23,451 INFO L272 TraceCheckUtils]: 9: Hoare triple {25148#true} call main_#t~ret23#1 := base2flt(1, 0); {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,451 INFO L290 TraceCheckUtils]: 10: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,452 INFO L290 TraceCheckUtils]: 11: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(0 == ~m % 4294967296); {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~m % 4294967296 < 16777216; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !false; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,453 INFO L290 TraceCheckUtils]: 14: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume !(~e <= -128); {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,453 INFO L290 TraceCheckUtils]: 15: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 <= 2147483647; {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} is VALID [2022-02-21 03:10:23,454 INFO L290 TraceCheckUtils]: 16: Hoare triple {25212#(or (= base2flt_~e |base2flt_#in~e|) (= base2flt_~e 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,454 INFO L290 TraceCheckUtils]: 17: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~m % 4294967296 < 16777216; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,455 INFO L290 TraceCheckUtils]: 18: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !false; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,455 INFO L290 TraceCheckUtils]: 19: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume !(~e <= -128); {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 <= 2147483647; {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} is VALID [2022-02-21 03:10:23,456 INFO L290 TraceCheckUtils]: 21: Hoare triple {25213#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ base2flt_~e 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,456 INFO L290 TraceCheckUtils]: 22: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,457 INFO L290 TraceCheckUtils]: 23: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,457 INFO L290 TraceCheckUtils]: 24: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,458 INFO L290 TraceCheckUtils]: 25: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,458 INFO L290 TraceCheckUtils]: 26: Hoare triple {25214#(or (<= 0 (+ 2 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,459 INFO L290 TraceCheckUtils]: 27: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~m % 4294967296 < 16777216; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,459 INFO L290 TraceCheckUtils]: 28: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !false; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,459 INFO L290 TraceCheckUtils]: 29: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume !(~e <= -128); {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,460 INFO L290 TraceCheckUtils]: 30: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 <= 2147483647; {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} is VALID [2022-02-21 03:10:23,460 INFO L290 TraceCheckUtils]: 31: Hoare triple {25215#(or (not (= |base2flt_#in~e| 0)) (<= 0 (+ 3 base2flt_~e)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,461 INFO L290 TraceCheckUtils]: 32: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !false; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,462 INFO L290 TraceCheckUtils]: 34: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,462 INFO L290 TraceCheckUtils]: 35: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,463 INFO L290 TraceCheckUtils]: 36: Hoare triple {25216#(or (<= 0 (+ base2flt_~e 4)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,463 INFO L290 TraceCheckUtils]: 37: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,464 INFO L290 TraceCheckUtils]: 38: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,464 INFO L290 TraceCheckUtils]: 39: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !(~e <= -128); {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,464 INFO L290 TraceCheckUtils]: 40: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 <= 2147483647; {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,465 INFO L290 TraceCheckUtils]: 41: Hoare triple {25217#(or (<= 0 (+ 5 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,465 INFO L290 TraceCheckUtils]: 42: Hoare triple {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~m % 4294967296 < 16777216; {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,466 INFO L290 TraceCheckUtils]: 43: Hoare triple {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume !false; {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} is VALID [2022-02-21 03:10:23,466 INFO L290 TraceCheckUtils]: 44: Hoare triple {25218#(or (<= 0 (+ 6 base2flt_~e)) (not (= |base2flt_#in~e| 0)))} assume ~e <= -128;~__retres4~0 := 0; {25219#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:23,467 INFO L290 TraceCheckUtils]: 45: Hoare triple {25219#(not (= |base2flt_#in~e| 0))} #res := ~__retres4~0; {25219#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:23,467 INFO L290 TraceCheckUtils]: 46: Hoare triple {25219#(not (= |base2flt_#in~e| 0))} assume true; {25219#(not (= |base2flt_#in~e| 0))} is VALID [2022-02-21 03:10:23,468 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25219#(not (= |base2flt_#in~e| 0))} {25148#true} #380#return; {25149#false} is VALID [2022-02-21 03:10:23,468 INFO L290 TraceCheckUtils]: 48: Hoare triple {25149#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {25149#false} is VALID [2022-02-21 03:10:23,468 INFO L272 TraceCheckUtils]: 49: Hoare triple {25149#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,468 INFO L290 TraceCheckUtils]: 50: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,468 INFO L290 TraceCheckUtils]: 51: Hoare triple {25148#true} assume !(0 == ~m % 4294967296); {25148#true} is VALID [2022-02-21 03:10:23,468 INFO L290 TraceCheckUtils]: 52: Hoare triple {25148#true} assume !(~m % 4294967296 < 16777216); {25148#true} is VALID [2022-02-21 03:10:23,468 INFO L290 TraceCheckUtils]: 53: Hoare triple {25148#true} assume !false; {25148#true} is VALID [2022-02-21 03:10:23,469 INFO L290 TraceCheckUtils]: 54: Hoare triple {25148#true} assume ~m % 4294967296 >= 33554432; {25148#true} is VALID [2022-02-21 03:10:23,469 INFO L290 TraceCheckUtils]: 55: Hoare triple {25148#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25148#true} is VALID [2022-02-21 03:10:23,469 INFO L290 TraceCheckUtils]: 56: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,469 INFO L290 TraceCheckUtils]: 57: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,469 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {25148#true} {25149#false} #382#return; {25149#false} is VALID [2022-02-21 03:10:23,469 INFO L290 TraceCheckUtils]: 59: Hoare triple {25149#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {25149#false} is VALID [2022-02-21 03:10:23,469 INFO L272 TraceCheckUtils]: 60: Hoare triple {25149#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 61: Hoare triple {25211#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 62: Hoare triple {25148#true} assume !(0 == ~m % 4294967296); {25148#true} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 63: Hoare triple {25148#true} assume !(~m % 4294967296 < 16777216); {25148#true} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 64: Hoare triple {25148#true} assume !false; {25148#true} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 65: Hoare triple {25148#true} assume ~m % 4294967296 >= 33554432; {25148#true} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 66: Hoare triple {25148#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25148#true} is VALID [2022-02-21 03:10:23,470 INFO L290 TraceCheckUtils]: 67: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,471 INFO L290 TraceCheckUtils]: 68: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,471 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {25148#true} {25149#false} #384#return; {25149#false} is VALID [2022-02-21 03:10:23,471 INFO L290 TraceCheckUtils]: 70: Hoare triple {25149#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {25149#false} is VALID [2022-02-21 03:10:23,471 INFO L290 TraceCheckUtils]: 71: Hoare triple {25149#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {25149#false} is VALID [2022-02-21 03:10:23,471 INFO L290 TraceCheckUtils]: 72: Hoare triple {25149#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {25149#false} is VALID [2022-02-21 03:10:23,471 INFO L290 TraceCheckUtils]: 73: Hoare triple {25149#false} main_~sa~0#1 := main_~tmp~2#1; {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 74: Hoare triple {25149#false} 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; {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 75: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 76: Hoare triple {25149#false} assume !(0 == mulflt_~b#1 % 4294967296); {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 77: Hoare triple {25149#false} assume !(0 == mulflt_~a#1); {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 78: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 79: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:23,472 INFO L290 TraceCheckUtils]: 80: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:23,473 INFO L290 TraceCheckUtils]: 81: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:23,473 INFO L290 TraceCheckUtils]: 82: Hoare triple {25149#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); {25149#false} is VALID [2022-02-21 03:10:23,473 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:23,473 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:23,474 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1143731444] [2022-02-21 03:10:23,474 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1143731444] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:23,474 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [442076982] [2022-02-21 03:10:23,474 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:23,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:23,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:23,476 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:23,477 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:23,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,563 INFO L263 TraceCheckSpWp]: Trace formula consists of 230 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-21 03:10:23,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:23,591 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:23,928 INFO L290 TraceCheckUtils]: 0: Hoare triple {25148#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); {25148#true} is VALID [2022-02-21 03:10:23,928 INFO L290 TraceCheckUtils]: 1: Hoare triple {25148#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {25148#true} is VALID [2022-02-21 03:10:23,928 INFO L272 TraceCheckUtils]: 2: Hoare triple {25148#true} call main_#t~ret22#1 := base2flt(0, 0); {25148#true} is VALID [2022-02-21 03:10:23,928 INFO L290 TraceCheckUtils]: 3: Hoare triple {25148#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,928 INFO L290 TraceCheckUtils]: 4: Hoare triple {25148#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {25148#true} is VALID [2022-02-21 03:10:23,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:23,928 INFO L290 TraceCheckUtils]: 6: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:23,929 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {25148#true} {25148#true} #378#return; {25148#true} is VALID [2022-02-21 03:10:23,929 INFO L290 TraceCheckUtils]: 8: Hoare triple {25148#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {25148#true} is VALID [2022-02-21 03:10:23,929 INFO L272 TraceCheckUtils]: 9: Hoare triple {25148#true} call main_#t~ret23#1 := base2flt(1, 0); {25148#true} is VALID [2022-02-21 03:10:23,931 INFO L290 TraceCheckUtils]: 10: Hoare triple {25148#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25253#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:23,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {25253#(<= |base2flt_#in~e| base2flt_~e)} assume !(0 == ~m % 4294967296); {25253#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:23,932 INFO L290 TraceCheckUtils]: 12: Hoare triple {25253#(<= |base2flt_#in~e| base2flt_~e)} assume ~m % 4294967296 < 16777216; {25253#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:23,933 INFO L290 TraceCheckUtils]: 13: Hoare triple {25253#(<= |base2flt_#in~e| base2flt_~e)} assume !false; {25253#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:23,933 INFO L290 TraceCheckUtils]: 14: Hoare triple {25253#(<= |base2flt_#in~e| base2flt_~e)} assume !(~e <= -128); {25253#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:23,933 INFO L290 TraceCheckUtils]: 15: Hoare triple {25253#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 <= 2147483647; {25253#(<= |base2flt_#in~e| base2flt_~e)} is VALID [2022-02-21 03:10:23,934 INFO L290 TraceCheckUtils]: 16: Hoare triple {25253#(<= |base2flt_#in~e| base2flt_~e)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:23,935 INFO L290 TraceCheckUtils]: 17: Hoare triple {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~m % 4294967296 < 16777216; {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:23,935 INFO L290 TraceCheckUtils]: 18: Hoare triple {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !false; {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:23,936 INFO L290 TraceCheckUtils]: 19: Hoare triple {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume !(~e <= -128); {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:23,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 <= 2147483647; {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} is VALID [2022-02-21 03:10:23,937 INFO L290 TraceCheckUtils]: 21: Hoare triple {25272#(<= |base2flt_#in~e| (+ base2flt_~e 1))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:23,937 INFO L290 TraceCheckUtils]: 22: Hoare triple {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~m % 4294967296 < 16777216; {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:23,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !false; {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:23,938 INFO L290 TraceCheckUtils]: 24: Hoare triple {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume !(~e <= -128); {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:23,938 INFO L290 TraceCheckUtils]: 25: Hoare triple {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 <= 2147483647; {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} is VALID [2022-02-21 03:10:23,939 INFO L290 TraceCheckUtils]: 26: Hoare triple {25288#(<= |base2flt_#in~e| (+ 2 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:23,940 INFO L290 TraceCheckUtils]: 27: Hoare triple {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~m % 4294967296 < 16777216; {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:23,940 INFO L290 TraceCheckUtils]: 28: Hoare triple {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !false; {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:23,940 INFO L290 TraceCheckUtils]: 29: Hoare triple {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume !(~e <= -128); {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:23,941 INFO L290 TraceCheckUtils]: 30: Hoare triple {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 <= 2147483647; {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} is VALID [2022-02-21 03:10:23,942 INFO L290 TraceCheckUtils]: 31: Hoare triple {25304#(<= |base2flt_#in~e| (+ 3 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:23,942 INFO L290 TraceCheckUtils]: 32: Hoare triple {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~m % 4294967296 < 16777216; {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:23,943 INFO L290 TraceCheckUtils]: 33: Hoare triple {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !false; {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:23,943 INFO L290 TraceCheckUtils]: 34: Hoare triple {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume !(~e <= -128); {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:23,944 INFO L290 TraceCheckUtils]: 35: Hoare triple {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e - 1 <= 2147483647; {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} is VALID [2022-02-21 03:10:23,944 INFO L290 TraceCheckUtils]: 36: Hoare triple {25320#(<= |base2flt_#in~e| (+ base2flt_~e 4))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:23,945 INFO L290 TraceCheckUtils]: 37: Hoare triple {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~m % 4294967296 < 16777216; {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:23,945 INFO L290 TraceCheckUtils]: 38: Hoare triple {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume !false; {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:23,946 INFO L290 TraceCheckUtils]: 39: Hoare triple {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume !(~e <= -128); {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:23,946 INFO L290 TraceCheckUtils]: 40: Hoare triple {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~e - 1 <= 2147483647; {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} is VALID [2022-02-21 03:10:23,947 INFO L290 TraceCheckUtils]: 41: Hoare triple {25336#(<= |base2flt_#in~e| (+ 5 base2flt_~e))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25352#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:23,947 INFO L290 TraceCheckUtils]: 42: Hoare triple {25352#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~m % 4294967296 < 16777216; {25352#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:23,948 INFO L290 TraceCheckUtils]: 43: Hoare triple {25352#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume !false; {25352#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} is VALID [2022-02-21 03:10:23,948 INFO L290 TraceCheckUtils]: 44: Hoare triple {25352#(<= |base2flt_#in~e| (+ 6 base2flt_~e))} assume ~e <= -128;~__retres4~0 := 0; {25362#(<= (+ 122 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:23,949 INFO L290 TraceCheckUtils]: 45: Hoare triple {25362#(<= (+ 122 |base2flt_#in~e|) 0)} #res := ~__retres4~0; {25362#(<= (+ 122 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:23,949 INFO L290 TraceCheckUtils]: 46: Hoare triple {25362#(<= (+ 122 |base2flt_#in~e|) 0)} assume true; {25362#(<= (+ 122 |base2flt_#in~e|) 0)} is VALID [2022-02-21 03:10:23,950 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25362#(<= (+ 122 |base2flt_#in~e|) 0)} {25148#true} #380#return; {25149#false} is VALID [2022-02-21 03:10:23,950 INFO L290 TraceCheckUtils]: 48: Hoare triple {25149#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {25149#false} is VALID [2022-02-21 03:10:23,950 INFO L272 TraceCheckUtils]: 49: Hoare triple {25149#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 50: Hoare triple {25149#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 51: Hoare triple {25149#false} assume !(0 == ~m % 4294967296); {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 52: Hoare triple {25149#false} assume !(~m % 4294967296 < 16777216); {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 53: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 54: Hoare triple {25149#false} assume ~m % 4294967296 >= 33554432; {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 55: Hoare triple {25149#false} assume ~e >= 127;~__retres4~0 := 4294967295; {25149#false} is VALID [2022-02-21 03:10:23,951 INFO L290 TraceCheckUtils]: 56: Hoare triple {25149#false} #res := ~__retres4~0; {25149#false} is VALID [2022-02-21 03:10:23,952 INFO L290 TraceCheckUtils]: 57: Hoare triple {25149#false} assume true; {25149#false} is VALID [2022-02-21 03:10:23,952 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {25149#false} {25149#false} #382#return; {25149#false} is VALID [2022-02-21 03:10:23,952 INFO L290 TraceCheckUtils]: 59: Hoare triple {25149#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {25149#false} is VALID [2022-02-21 03:10:23,952 INFO L272 TraceCheckUtils]: 60: Hoare triple {25149#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {25149#false} is VALID [2022-02-21 03:10:23,952 INFO L290 TraceCheckUtils]: 61: Hoare triple {25149#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25149#false} is VALID [2022-02-21 03:10:23,952 INFO L290 TraceCheckUtils]: 62: Hoare triple {25149#false} assume !(0 == ~m % 4294967296); {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L290 TraceCheckUtils]: 63: Hoare triple {25149#false} assume !(~m % 4294967296 < 16777216); {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L290 TraceCheckUtils]: 64: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L290 TraceCheckUtils]: 65: Hoare triple {25149#false} assume ~m % 4294967296 >= 33554432; {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L290 TraceCheckUtils]: 66: Hoare triple {25149#false} assume ~e >= 127;~__retres4~0 := 4294967295; {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L290 TraceCheckUtils]: 67: Hoare triple {25149#false} #res := ~__retres4~0; {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L290 TraceCheckUtils]: 68: Hoare triple {25149#false} assume true; {25149#false} is VALID [2022-02-21 03:10:23,953 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {25149#false} {25149#false} #384#return; {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 70: Hoare triple {25149#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 71: Hoare triple {25149#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 72: Hoare triple {25149#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 73: Hoare triple {25149#false} main_~sa~0#1 := main_~tmp~2#1; {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 74: Hoare triple {25149#false} 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; {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 75: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:23,954 INFO L290 TraceCheckUtils]: 76: Hoare triple {25149#false} assume !(0 == mulflt_~b#1 % 4294967296); {25149#false} is VALID [2022-02-21 03:10:23,955 INFO L290 TraceCheckUtils]: 77: Hoare triple {25149#false} assume !(0 == mulflt_~a#1); {25149#false} is VALID [2022-02-21 03:10:23,955 INFO L290 TraceCheckUtils]: 78: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:23,955 INFO L290 TraceCheckUtils]: 79: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:23,955 INFO L290 TraceCheckUtils]: 80: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:23,955 INFO L290 TraceCheckUtils]: 81: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:23,955 INFO L290 TraceCheckUtils]: 82: Hoare triple {25149#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); {25149#false} is VALID [2022-02-21 03:10:23,956 INFO L134 CoverageAnalysis]: Checked inductivity of 123 backedges. 26 proven. 87 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-21 03:10:23,956 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:24,617 INFO L290 TraceCheckUtils]: 82: Hoare triple {25149#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); {25149#false} is VALID [2022-02-21 03:10:24,617 INFO L290 TraceCheckUtils]: 81: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:24,617 INFO L290 TraceCheckUtils]: 80: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:24,617 INFO L290 TraceCheckUtils]: 79: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:24,618 INFO L290 TraceCheckUtils]: 78: Hoare triple {25149#false} assume !false; {25149#false} is VALID [2022-02-21 03:10:24,618 INFO L290 TraceCheckUtils]: 77: Hoare triple {25149#false} assume !(0 == mulflt_~a#1); {25149#false} is VALID [2022-02-21 03:10:24,618 INFO L290 TraceCheckUtils]: 76: Hoare triple {25149#false} assume !(0 == mulflt_~b#1 % 4294967296); {25149#false} is VALID [2022-02-21 03:10:24,618 INFO L290 TraceCheckUtils]: 75: Hoare triple {25149#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; {25149#false} is VALID [2022-02-21 03:10:24,618 INFO L290 TraceCheckUtils]: 74: Hoare triple {25149#false} 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; {25149#false} is VALID [2022-02-21 03:10:24,618 INFO L290 TraceCheckUtils]: 73: Hoare triple {25149#false} main_~sa~0#1 := main_~tmp~2#1; {25149#false} is VALID [2022-02-21 03:10:24,619 INFO L290 TraceCheckUtils]: 72: Hoare triple {25149#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {25149#false} is VALID [2022-02-21 03:10:24,619 INFO L290 TraceCheckUtils]: 71: Hoare triple {25149#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {25149#false} is VALID [2022-02-21 03:10:24,619 INFO L290 TraceCheckUtils]: 70: Hoare triple {25149#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {25149#false} is VALID [2022-02-21 03:10:24,619 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {25148#true} {25149#false} #384#return; {25149#false} is VALID [2022-02-21 03:10:24,619 INFO L290 TraceCheckUtils]: 68: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:24,619 INFO L290 TraceCheckUtils]: 67: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:24,619 INFO L290 TraceCheckUtils]: 66: Hoare triple {25148#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L290 TraceCheckUtils]: 65: Hoare triple {25148#true} assume ~m % 4294967296 >= 33554432; {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L290 TraceCheckUtils]: 64: Hoare triple {25148#true} assume !false; {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L290 TraceCheckUtils]: 63: Hoare triple {25148#true} assume !(~m % 4294967296 < 16777216); {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L290 TraceCheckUtils]: 62: Hoare triple {25148#true} assume !(0 == ~m % 4294967296); {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L290 TraceCheckUtils]: 61: Hoare triple {25148#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L272 TraceCheckUtils]: 60: Hoare triple {25149#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {25148#true} is VALID [2022-02-21 03:10:24,620 INFO L290 TraceCheckUtils]: 59: Hoare triple {25149#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {25149#false} is VALID [2022-02-21 03:10:24,621 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {25148#true} {25149#false} #382#return; {25149#false} is VALID [2022-02-21 03:10:24,621 INFO L290 TraceCheckUtils]: 57: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:24,621 INFO L290 TraceCheckUtils]: 56: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:24,621 INFO L290 TraceCheckUtils]: 55: Hoare triple {25148#true} assume ~e >= 127;~__retres4~0 := 4294967295; {25148#true} is VALID [2022-02-21 03:10:24,621 INFO L290 TraceCheckUtils]: 54: Hoare triple {25148#true} assume ~m % 4294967296 >= 33554432; {25148#true} is VALID [2022-02-21 03:10:24,621 INFO L290 TraceCheckUtils]: 53: Hoare triple {25148#true} assume !false; {25148#true} is VALID [2022-02-21 03:10:24,621 INFO L290 TraceCheckUtils]: 52: Hoare triple {25148#true} assume !(~m % 4294967296 < 16777216); {25148#true} is VALID [2022-02-21 03:10:24,622 INFO L290 TraceCheckUtils]: 51: Hoare triple {25148#true} assume !(0 == ~m % 4294967296); {25148#true} is VALID [2022-02-21 03:10:24,622 INFO L290 TraceCheckUtils]: 50: Hoare triple {25148#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:24,622 INFO L272 TraceCheckUtils]: 49: Hoare triple {25149#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {25148#true} is VALID [2022-02-21 03:10:24,622 INFO L290 TraceCheckUtils]: 48: Hoare triple {25149#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {25149#false} is VALID [2022-02-21 03:10:24,623 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25585#(not (<= 0 |base2flt_#in~e|))} {25148#true} #380#return; {25149#false} is VALID [2022-02-21 03:10:24,624 INFO L290 TraceCheckUtils]: 46: Hoare triple {25585#(not (<= 0 |base2flt_#in~e|))} assume true; {25585#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:24,624 INFO L290 TraceCheckUtils]: 45: Hoare triple {25585#(not (<= 0 |base2flt_#in~e|))} #res := ~__retres4~0; {25585#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:24,625 INFO L290 TraceCheckUtils]: 44: Hoare triple {25595#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~e <= -128;~__retres4~0 := 0; {25585#(not (<= 0 |base2flt_#in~e|))} is VALID [2022-02-21 03:10:24,625 INFO L290 TraceCheckUtils]: 43: Hoare triple {25595#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25595#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,625 INFO L290 TraceCheckUtils]: 42: Hoare triple {25595#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25595#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,626 INFO L290 TraceCheckUtils]: 41: Hoare triple {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25595#(or (not (<= (+ 128 base2flt_~e) 0)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,627 INFO L290 TraceCheckUtils]: 40: Hoare triple {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,627 INFO L290 TraceCheckUtils]: 39: Hoare triple {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,627 INFO L290 TraceCheckUtils]: 38: Hoare triple {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,628 INFO L290 TraceCheckUtils]: 37: Hoare triple {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,628 INFO L290 TraceCheckUtils]: 36: Hoare triple {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25605#(or (< 0 (+ base2flt_~e 127)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,629 INFO L290 TraceCheckUtils]: 35: Hoare triple {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,629 INFO L290 TraceCheckUtils]: 34: Hoare triple {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,630 INFO L290 TraceCheckUtils]: 33: Hoare triple {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,630 INFO L290 TraceCheckUtils]: 32: Hoare triple {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,631 INFO L290 TraceCheckUtils]: 31: Hoare triple {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25621#(or (< 0 (+ 126 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,631 INFO L290 TraceCheckUtils]: 30: Hoare triple {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,631 INFO L290 TraceCheckUtils]: 29: Hoare triple {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,632 INFO L290 TraceCheckUtils]: 28: Hoare triple {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,632 INFO L290 TraceCheckUtils]: 27: Hoare triple {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,633 INFO L290 TraceCheckUtils]: 26: Hoare triple {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25637#(or (< 0 (+ 125 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,633 INFO L290 TraceCheckUtils]: 25: Hoare triple {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,634 INFO L290 TraceCheckUtils]: 24: Hoare triple {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,634 INFO L290 TraceCheckUtils]: 23: Hoare triple {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,634 INFO L290 TraceCheckUtils]: 22: Hoare triple {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,635 INFO L290 TraceCheckUtils]: 21: Hoare triple {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25653#(or (< 0 (+ base2flt_~e 124)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,636 INFO L290 TraceCheckUtils]: 20: Hoare triple {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,636 INFO L290 TraceCheckUtils]: 19: Hoare triple {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,637 INFO L290 TraceCheckUtils]: 18: Hoare triple {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,637 INFO L290 TraceCheckUtils]: 17: Hoare triple {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,638 INFO L290 TraceCheckUtils]: 16: Hoare triple {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {25669#(or (< 0 (+ 123 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,638 INFO L290 TraceCheckUtils]: 15: Hoare triple {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~e - 1 <= 2147483647; {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,639 INFO L290 TraceCheckUtils]: 14: Hoare triple {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(~e <= -128); {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,639 INFO L290 TraceCheckUtils]: 13: Hoare triple {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !false; {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,640 INFO L290 TraceCheckUtils]: 12: Hoare triple {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume ~m % 4294967296 < 16777216; {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,640 INFO L290 TraceCheckUtils]: 11: Hoare triple {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} assume !(0 == ~m % 4294967296); {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,641 INFO L290 TraceCheckUtils]: 10: Hoare triple {25148#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25685#(or (< 0 (+ 122 base2flt_~e)) (not (<= 0 |base2flt_#in~e|)))} is VALID [2022-02-21 03:10:24,641 INFO L272 TraceCheckUtils]: 9: Hoare triple {25148#true} call main_#t~ret23#1 := base2flt(1, 0); {25148#true} is VALID [2022-02-21 03:10:24,641 INFO L290 TraceCheckUtils]: 8: Hoare triple {25148#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {25148#true} is VALID [2022-02-21 03:10:24,641 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {25148#true} {25148#true} #378#return; {25148#true} is VALID [2022-02-21 03:10:24,641 INFO L290 TraceCheckUtils]: 6: Hoare triple {25148#true} assume true; {25148#true} is VALID [2022-02-21 03:10:24,641 INFO L290 TraceCheckUtils]: 5: Hoare triple {25148#true} #res := ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:24,642 INFO L290 TraceCheckUtils]: 4: Hoare triple {25148#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {25148#true} is VALID [2022-02-21 03:10:24,642 INFO L290 TraceCheckUtils]: 3: Hoare triple {25148#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {25148#true} is VALID [2022-02-21 03:10:24,642 INFO L272 TraceCheckUtils]: 2: Hoare triple {25148#true} call main_#t~ret22#1 := base2flt(0, 0); {25148#true} is VALID [2022-02-21 03:10:24,642 INFO L290 TraceCheckUtils]: 1: Hoare triple {25148#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {25148#true} is VALID [2022-02-21 03:10:24,642 INFO L290 TraceCheckUtils]: 0: Hoare triple {25148#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); {25148#true} is VALID [2022-02-21 03:10:24,643 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:24,643 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [442076982] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:24,643 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:24,643 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 27 [2022-02-21 03:10:24,643 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [515081412] [2022-02-21 03:10:24,644 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:24,644 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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 83 [2022-02-21 03:10:24,646 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:24,646 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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:24,762 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:24,762 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-02-21 03:10:24,763 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:24,763 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-02-21 03:10:24,763 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=232, Invalid=470, Unknown=0, NotChecked=0, Total=702 [2022-02-21 03:10:24,764 INFO L87 Difference]: Start difference. First operand 281 states and 349 transitions. Second operand has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:29,073 INFO L93 Difference]: Finished difference Result 1899 states and 2505 transitions. [2022-02-21 03:10:29,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 51 states. [2022-02-21 03:10:29,074 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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 83 [2022-02-21 03:10:29,074 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:29,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 1086 transitions. [2022-02-21 03:10:29,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 1086 transitions. [2022-02-21 03:10:29,097 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 51 states and 1086 transitions. [2022-02-21 03:10:29,961 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1086 edges. 1086 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:30,074 INFO L225 Difference]: With dead ends: 1899 [2022-02-21 03:10:30,074 INFO L226 Difference]: Without dead ends: 1663 [2022-02-21 03:10:30,076 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 246 GetRequests, 188 SyntacticMatches, 0 SemanticMatches, 58 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 918 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=1154, Invalid=2386, Unknown=0, NotChecked=0, Total=3540 [2022-02-21 03:10:30,076 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 1569 mSDsluCounter, 968 mSDsCounter, 0 mSdLazyCounter, 516 mSolverCounterSat, 234 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1569 SdHoareTripleChecker+Valid, 1086 SdHoareTripleChecker+Invalid, 750 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 234 IncrementalHoareTripleChecker+Valid, 516 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:30,077 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1569 Valid, 1086 Invalid, 750 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [234 Valid, 516 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-21 03:10:30,078 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1663 states. [2022-02-21 03:10:30,390 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1663 to 332. [2022-02-21 03:10:30,390 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:30,390 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1663 states. Second operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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,391 INFO L74 IsIncluded]: Start isIncluded. First operand 1663 states. Second operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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,391 INFO L87 Difference]: Start difference. First operand 1663 states. Second operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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,484 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:30,484 INFO L93 Difference]: Finished difference Result 1663 states and 2155 transitions. [2022-02-21 03:10:30,484 INFO L276 IsEmpty]: Start isEmpty. Operand 1663 states and 2155 transitions. [2022-02-21 03:10:30,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:30,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:30,488 INFO L74 IsIncluded]: Start isIncluded. First operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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 1663 states. [2022-02-21 03:10:30,488 INFO L87 Difference]: Start difference. First operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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 1663 states. [2022-02-21 03:10:30,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:30,573 INFO L93 Difference]: Finished difference Result 1663 states and 2155 transitions. [2022-02-21 03:10:30,573 INFO L276 IsEmpty]: Start isEmpty. Operand 1663 states and 2155 transitions. [2022-02-21 03:10:30,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:30,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:30,575 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:30,575 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:30,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 332 states to 332 states and 412 transitions. [2022-02-21 03:10:30,581 INFO L78 Accepts]: Start accepts. Automaton has 332 states and 412 transitions. Word has length 83 [2022-02-21 03:10:30,581 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:30,581 INFO L470 AbstractCegarLoop]: Abstraction has 332 states and 412 transitions. [2022-02-21 03:10:30,581 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 5.444444444444445) internal successors, (147), 26 states have internal predecessors, (147), 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:30,581 INFO L276 IsEmpty]: Start isEmpty. Operand 332 states and 412 transitions. [2022-02-21 03:10:30,582 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-21 03:10:30,582 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:30,583 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 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:30,601 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:30,792 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:30,792 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:30,792 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:30,792 INFO L85 PathProgramCache]: Analyzing trace with hash -602965433, now seen corresponding path program 2 times [2022-02-21 03:10:30,792 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:30,792 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1980010145] [2022-02-21 03:10:30,793 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:30,793 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:30,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:30,868 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:30,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:30,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:30,872 INFO L290 TraceCheckUtils]: 1: Hoare triple {31676#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {31676#true} is VALID [2022-02-21 03:10:30,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:30,872 INFO L290 TraceCheckUtils]: 3: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:30,872 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {31676#true} {31676#true} #378#return; {31676#true} is VALID [2022-02-21 03:10:30,872 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:30,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,032 INFO L290 TraceCheckUtils]: 0: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,032 INFO L290 TraceCheckUtils]: 1: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,033 INFO L290 TraceCheckUtils]: 3: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,033 INFO L290 TraceCheckUtils]: 4: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,034 INFO L290 TraceCheckUtils]: 6: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,037 INFO L290 TraceCheckUtils]: 10: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,038 INFO L290 TraceCheckUtils]: 11: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,039 INFO L290 TraceCheckUtils]: 13: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,040 INFO L290 TraceCheckUtils]: 14: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,040 INFO L290 TraceCheckUtils]: 15: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,041 INFO L290 TraceCheckUtils]: 16: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,042 INFO L290 TraceCheckUtils]: 17: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,042 INFO L290 TraceCheckUtils]: 18: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,042 INFO L290 TraceCheckUtils]: 19: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,043 INFO L290 TraceCheckUtils]: 20: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,044 INFO L290 TraceCheckUtils]: 21: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,044 INFO L290 TraceCheckUtils]: 22: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,045 INFO L290 TraceCheckUtils]: 23: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,045 INFO L290 TraceCheckUtils]: 24: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,046 INFO L290 TraceCheckUtils]: 25: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,047 INFO L290 TraceCheckUtils]: 26: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,055 INFO L290 TraceCheckUtils]: 27: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,056 INFO L290 TraceCheckUtils]: 28: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,056 INFO L290 TraceCheckUtils]: 29: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,057 INFO L290 TraceCheckUtils]: 30: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,058 INFO L290 TraceCheckUtils]: 31: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31754#(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,059 INFO L290 TraceCheckUtils]: 32: Hoare triple {31754#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,059 INFO L290 TraceCheckUtils]: 33: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,060 INFO L290 TraceCheckUtils]: 34: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,060 INFO L290 TraceCheckUtils]: 35: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,061 INFO L290 TraceCheckUtils]: 36: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,061 INFO L290 TraceCheckUtils]: 37: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,061 INFO L290 TraceCheckUtils]: 38: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,062 INFO L290 TraceCheckUtils]: 39: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,062 INFO L290 TraceCheckUtils]: 40: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,062 INFO L290 TraceCheckUtils]: 41: Hoare triple {31755#(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; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,063 INFO L290 TraceCheckUtils]: 42: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,063 INFO L290 TraceCheckUtils]: 43: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,064 INFO L290 TraceCheckUtils]: 44: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume true; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,064 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {31755#(not (= |base2flt_#in~m| 1))} {31676#true} #380#return; {31677#false} is VALID [2022-02-21 03:10:31,065 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:31,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,072 INFO L290 TraceCheckUtils]: 0: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,072 INFO L290 TraceCheckUtils]: 1: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L290 TraceCheckUtils]: 2: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L290 TraceCheckUtils]: 3: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L290 TraceCheckUtils]: 4: Hoare triple {31676#true} assume ~m % 4294967296 >= 33554432; {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L290 TraceCheckUtils]: 5: Hoare triple {31676#true} assume ~e >= 127;~__retres4~0 := 4294967295; {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L290 TraceCheckUtils]: 6: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L290 TraceCheckUtils]: 7: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,073 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {31676#true} {31677#false} #382#return; {31677#false} is VALID [2022-02-21 03:10:31,074 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:31,076 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,078 INFO L290 TraceCheckUtils]: 0: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,078 INFO L290 TraceCheckUtils]: 1: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,078 INFO L290 TraceCheckUtils]: 3: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,079 INFO L290 TraceCheckUtils]: 4: Hoare triple {31676#true} assume ~m % 4294967296 >= 33554432; {31676#true} is VALID [2022-02-21 03:10:31,079 INFO L290 TraceCheckUtils]: 5: Hoare triple {31676#true} assume ~e >= 127;~__retres4~0 := 4294967295; {31676#true} is VALID [2022-02-21 03:10:31,079 INFO L290 TraceCheckUtils]: 6: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,079 INFO L290 TraceCheckUtils]: 7: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,079 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {31676#true} {31677#false} #384#return; {31677#false} is VALID [2022-02-21 03:10:31,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {31676#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); {31676#true} is VALID [2022-02-21 03:10:31,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {31676#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {31676#true} is VALID [2022-02-21 03:10:31,080 INFO L272 TraceCheckUtils]: 2: Hoare triple {31676#true} call main_#t~ret22#1 := base2flt(0, 0); {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,080 INFO L290 TraceCheckUtils]: 3: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,080 INFO L290 TraceCheckUtils]: 4: Hoare triple {31676#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {31676#true} is VALID [2022-02-21 03:10:31,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,081 INFO L290 TraceCheckUtils]: 6: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,081 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {31676#true} {31676#true} #378#return; {31676#true} is VALID [2022-02-21 03:10:31,081 INFO L290 TraceCheckUtils]: 8: Hoare triple {31676#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {31676#true} is VALID [2022-02-21 03:10:31,081 INFO L272 TraceCheckUtils]: 9: Hoare triple {31676#true} call main_#t~ret23#1 := base2flt(1, 0); {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,082 INFO L290 TraceCheckUtils]: 10: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,082 INFO L290 TraceCheckUtils]: 11: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,083 INFO L290 TraceCheckUtils]: 12: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,083 INFO L290 TraceCheckUtils]: 14: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,084 INFO L290 TraceCheckUtils]: 15: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:31,084 INFO L290 TraceCheckUtils]: 16: Hoare triple {31748#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,085 INFO L290 TraceCheckUtils]: 17: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,086 INFO L290 TraceCheckUtils]: 18: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,086 INFO L290 TraceCheckUtils]: 19: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,087 INFO L290 TraceCheckUtils]: 20: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,088 INFO L290 TraceCheckUtils]: 21: Hoare triple {31749#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,088 INFO L290 TraceCheckUtils]: 22: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,089 INFO L290 TraceCheckUtils]: 23: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,089 INFO L290 TraceCheckUtils]: 24: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,090 INFO L290 TraceCheckUtils]: 25: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,091 INFO L290 TraceCheckUtils]: 26: Hoare triple {31750#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,091 INFO L290 TraceCheckUtils]: 27: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,091 INFO L290 TraceCheckUtils]: 28: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,092 INFO L290 TraceCheckUtils]: 29: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,092 INFO L290 TraceCheckUtils]: 30: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,093 INFO L290 TraceCheckUtils]: 31: Hoare triple {31751#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,093 INFO L290 TraceCheckUtils]: 32: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,094 INFO L290 TraceCheckUtils]: 33: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,094 INFO L290 TraceCheckUtils]: 34: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,095 INFO L290 TraceCheckUtils]: 35: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,096 INFO L290 TraceCheckUtils]: 36: Hoare triple {31752#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,096 INFO L290 TraceCheckUtils]: 37: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,097 INFO L290 TraceCheckUtils]: 38: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,097 INFO L290 TraceCheckUtils]: 39: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,098 INFO L290 TraceCheckUtils]: 40: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:31,099 INFO L290 TraceCheckUtils]: 41: Hoare triple {31753#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31754#(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,100 INFO L290 TraceCheckUtils]: 42: Hoare triple {31754#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,100 INFO L290 TraceCheckUtils]: 43: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,101 INFO L290 TraceCheckUtils]: 44: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,101 INFO L290 TraceCheckUtils]: 45: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,101 INFO L290 TraceCheckUtils]: 46: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,102 INFO L290 TraceCheckUtils]: 47: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,102 INFO L290 TraceCheckUtils]: 48: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,102 INFO L290 TraceCheckUtils]: 49: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,103 INFO L290 TraceCheckUtils]: 50: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,103 INFO L290 TraceCheckUtils]: 51: Hoare triple {31755#(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; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,103 INFO L290 TraceCheckUtils]: 52: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,104 INFO L290 TraceCheckUtils]: 53: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,104 INFO L290 TraceCheckUtils]: 54: Hoare triple {31755#(not (= |base2flt_#in~m| 1))} assume true; {31755#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:31,105 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {31755#(not (= |base2flt_#in~m| 1))} {31676#true} #380#return; {31677#false} is VALID [2022-02-21 03:10:31,105 INFO L290 TraceCheckUtils]: 56: Hoare triple {31677#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {31677#false} is VALID [2022-02-21 03:10:31,105 INFO L272 TraceCheckUtils]: 57: Hoare triple {31677#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,105 INFO L290 TraceCheckUtils]: 58: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,105 INFO L290 TraceCheckUtils]: 59: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,105 INFO L290 TraceCheckUtils]: 60: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,106 INFO L290 TraceCheckUtils]: 61: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,106 INFO L290 TraceCheckUtils]: 62: Hoare triple {31676#true} assume ~m % 4294967296 >= 33554432; {31676#true} is VALID [2022-02-21 03:10:31,106 INFO L290 TraceCheckUtils]: 63: Hoare triple {31676#true} assume ~e >= 127;~__retres4~0 := 4294967295; {31676#true} is VALID [2022-02-21 03:10:31,106 INFO L290 TraceCheckUtils]: 64: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,106 INFO L290 TraceCheckUtils]: 65: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,106 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {31676#true} {31677#false} #382#return; {31677#false} is VALID [2022-02-21 03:10:31,106 INFO L290 TraceCheckUtils]: 67: Hoare triple {31677#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {31677#false} is VALID [2022-02-21 03:10:31,107 INFO L272 TraceCheckUtils]: 68: Hoare triple {31677#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:31,107 INFO L290 TraceCheckUtils]: 69: Hoare triple {31747#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,107 INFO L290 TraceCheckUtils]: 70: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,107 INFO L290 TraceCheckUtils]: 71: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,107 INFO L290 TraceCheckUtils]: 72: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,107 INFO L290 TraceCheckUtils]: 73: Hoare triple {31676#true} assume ~m % 4294967296 >= 33554432; {31676#true} is VALID [2022-02-21 03:10:31,107 INFO L290 TraceCheckUtils]: 74: Hoare triple {31676#true} assume ~e >= 127;~__retres4~0 := 4294967295; {31676#true} is VALID [2022-02-21 03:10:31,108 INFO L290 TraceCheckUtils]: 75: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,108 INFO L290 TraceCheckUtils]: 76: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,108 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {31676#true} {31677#false} #384#return; {31677#false} is VALID [2022-02-21 03:10:31,108 INFO L290 TraceCheckUtils]: 78: Hoare triple {31677#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {31677#false} is VALID [2022-02-21 03:10:31,108 INFO L290 TraceCheckUtils]: 79: Hoare triple {31677#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {31677#false} is VALID [2022-02-21 03:10:31,108 INFO L290 TraceCheckUtils]: 80: Hoare triple {31677#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {31677#false} is VALID [2022-02-21 03:10:31,108 INFO L290 TraceCheckUtils]: 81: Hoare triple {31677#false} main_~sa~0#1 := main_~tmp~2#1; {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 82: Hoare triple {31677#false} 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; {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 83: Hoare triple {31677#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; {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 84: Hoare triple {31677#false} assume !(0 == mulflt_~b#1 % 4294967296); {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 85: Hoare triple {31677#false} assume !(0 == mulflt_~a#1); {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 86: Hoare triple {31677#false} assume !false; {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 87: Hoare triple {31677#false} assume !false; {31677#false} is VALID [2022-02-21 03:10:31,109 INFO L290 TraceCheckUtils]: 88: Hoare triple {31677#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; {31677#false} is VALID [2022-02-21 03:10:31,110 INFO L290 TraceCheckUtils]: 89: Hoare triple {31677#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; {31677#false} is VALID [2022-02-21 03:10:31,110 INFO L290 TraceCheckUtils]: 90: Hoare triple {31677#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); {31677#false} is VALID [2022-02-21 03:10:31,110 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 4 proven. 85 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:31,110 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:31,111 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1980010145] [2022-02-21 03:10:31,111 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1980010145] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:31,111 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1113307189] [2022-02-21 03:10:31,111 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-21 03:10:31,111 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:31,111 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:31,116 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:31,146 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:31,208 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-21 03:10:31,208 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-21 03:10:31,210 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-21 03:10:31,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:31,228 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:31,449 INFO L290 TraceCheckUtils]: 0: Hoare triple {31676#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); {31676#true} is VALID [2022-02-21 03:10:31,449 INFO L290 TraceCheckUtils]: 1: Hoare triple {31676#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L272 TraceCheckUtils]: 2: Hoare triple {31676#true} call main_#t~ret22#1 := base2flt(0, 0); {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 3: Hoare triple {31676#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 4: Hoare triple {31676#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 6: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {31676#true} {31676#true} #378#return; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {31676#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L272 TraceCheckUtils]: 9: Hoare triple {31676#true} call main_#t~ret23#1 := base2flt(1, 0); {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 10: Hoare triple {31676#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 11: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {31676#true} assume ~m % 4294967296 < 16777216; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 13: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 14: Hoare triple {31676#true} assume !(~e <= -128); {31676#true} is VALID [2022-02-21 03:10:31,450 INFO L290 TraceCheckUtils]: 15: Hoare triple {31676#true} assume ~e - 1 <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 16: Hoare triple {31676#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 17: Hoare triple {31676#true} assume ~m % 4294967296 < 16777216; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 18: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 19: Hoare triple {31676#true} assume !(~e <= -128); {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {31676#true} assume ~e - 1 <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 21: Hoare triple {31676#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 22: Hoare triple {31676#true} assume ~m % 4294967296 < 16777216; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 23: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,451 INFO L290 TraceCheckUtils]: 24: Hoare triple {31676#true} assume !(~e <= -128); {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 25: Hoare triple {31676#true} assume ~e - 1 <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 26: Hoare triple {31676#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 27: Hoare triple {31676#true} assume ~m % 4294967296 < 16777216; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 28: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 29: Hoare triple {31676#true} assume !(~e <= -128); {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 30: Hoare triple {31676#true} assume ~e - 1 <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 31: Hoare triple {31676#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 32: Hoare triple {31676#true} assume ~m % 4294967296 < 16777216; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 33: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 34: Hoare triple {31676#true} assume !(~e <= -128); {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 35: Hoare triple {31676#true} assume ~e - 1 <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,452 INFO L290 TraceCheckUtils]: 36: Hoare triple {31676#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 37: Hoare triple {31676#true} assume ~m % 4294967296 < 16777216; {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 38: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 39: Hoare triple {31676#true} assume !(~e <= -128); {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 40: Hoare triple {31676#true} assume ~e - 1 <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 41: Hoare triple {31676#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 42: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,453 INFO L290 TraceCheckUtils]: 43: Hoare triple {31676#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 44: Hoare triple {31676#true} assume 128 + ~e <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 45: Hoare triple {31676#true} assume 128 + ~e >= -2147483648; {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 46: Hoare triple {31676#true} assume 128 + ~e <= 2147483647; {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 47: Hoare triple {31676#true} assume 128 + ~e >= -2147483648; {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 48: Hoare triple {31676#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 49: Hoare triple {31676#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {31676#true} is VALID [2022-02-21 03:10:31,454 INFO L290 TraceCheckUtils]: 50: Hoare triple {31676#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {31676#true} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 51: Hoare triple {31676#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; {31676#true} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 52: Hoare triple {31676#true} ~__retres4~0 := ~res~0; {31676#true} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 53: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 54: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,455 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {31676#true} {31676#true} #380#return; {31676#true} is VALID [2022-02-21 03:10:31,455 INFO L290 TraceCheckUtils]: 56: Hoare triple {31676#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L272 TraceCheckUtils]: 57: Hoare triple {31676#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 58: Hoare triple {31676#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 59: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 60: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 61: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 62: Hoare triple {31676#true} assume ~m % 4294967296 >= 33554432; {31676#true} is VALID [2022-02-21 03:10:31,456 INFO L290 TraceCheckUtils]: 63: Hoare triple {31676#true} assume ~e >= 127;~__retres4~0 := 4294967295; {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 64: Hoare triple {31676#true} #res := ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 65: Hoare triple {31676#true} assume true; {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {31676#true} {31676#true} #382#return; {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 67: Hoare triple {31676#true} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L272 TraceCheckUtils]: 68: Hoare triple {31676#true} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 69: Hoare triple {31676#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {31676#true} is VALID [2022-02-21 03:10:31,457 INFO L290 TraceCheckUtils]: 70: Hoare triple {31676#true} assume !(0 == ~m % 4294967296); {31676#true} is VALID [2022-02-21 03:10:31,458 INFO L290 TraceCheckUtils]: 71: Hoare triple {31676#true} assume !(~m % 4294967296 < 16777216); {31676#true} is VALID [2022-02-21 03:10:31,458 INFO L290 TraceCheckUtils]: 72: Hoare triple {31676#true} assume !false; {31676#true} is VALID [2022-02-21 03:10:31,458 INFO L290 TraceCheckUtils]: 73: Hoare triple {31676#true} assume ~m % 4294967296 >= 33554432; {31676#true} is VALID [2022-02-21 03:10:31,463 INFO L290 TraceCheckUtils]: 74: Hoare triple {31676#true} assume ~e >= 127;~__retres4~0 := 4294967295; {31981#(= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:31,464 INFO L290 TraceCheckUtils]: 75: Hoare triple {31981#(= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {31985#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:31,464 INFO L290 TraceCheckUtils]: 76: Hoare triple {31985#(= |base2flt_#res| 4294967295)} assume true; {31985#(= |base2flt_#res| 4294967295)} is VALID [2022-02-21 03:10:31,465 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {31985#(= |base2flt_#res| 4294967295)} {31676#true} #384#return; {31992#(= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} is VALID [2022-02-21 03:10:31,465 INFO L290 TraceCheckUtils]: 78: Hoare triple {31992#(= 4294967295 |ULTIMATE.start_main_#t~ret25#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-21 03:10:31,466 INFO L290 TraceCheckUtils]: 79: Hoare triple {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-21 03:10:31,466 INFO L290 TraceCheckUtils]: 80: Hoare triple {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-21 03:10:31,467 INFO L290 TraceCheckUtils]: 81: Hoare triple {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} main_~sa~0#1 := main_~tmp~2#1; {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-21 03:10:31,467 INFO L290 TraceCheckUtils]: 82: Hoare triple {31996#(= 4294967295 |ULTIMATE.start_main_~b~0#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; {32009#(= 4294967295 |ULTIMATE.start_mulflt_~b#1|)} is VALID [2022-02-21 03:10:31,468 INFO L290 TraceCheckUtils]: 83: Hoare triple {32009#(= 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; {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,469 INFO L290 TraceCheckUtils]: 84: Hoare triple {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,470 INFO L290 TraceCheckUtils]: 85: Hoare triple {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,470 INFO L290 TraceCheckUtils]: 86: Hoare triple {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,470 INFO L290 TraceCheckUtils]: 87: Hoare triple {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,471 INFO L290 TraceCheckUtils]: 88: Hoare triple {32013#(= 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; {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,471 INFO L290 TraceCheckUtils]: 89: Hoare triple {32013#(= 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; {32013#(= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:31,472 INFO L290 TraceCheckUtils]: 90: Hoare triple {32013#(= 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); {31677#false} is VALID [2022-02-21 03:10:31,472 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2022-02-21 03:10:31,472 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-21 03:10:31,472 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1113307189] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-21 03:10:31,473 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-21 03:10:31,473 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [11] total 17 [2022-02-21 03:10:31,473 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1116802987] [2022-02-21 03:10:31,473 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-21 03:10:31,474 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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 91 [2022-02-21 03:10:31,474 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:31,474 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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:31,512 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:31,513 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-21 03:10:31,513 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:31,513 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-21 03:10:31,513 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=229, Unknown=0, NotChecked=0, Total=272 [2022-02-21 03:10:31,513 INFO L87 Difference]: Start difference. First operand 332 states and 412 transitions. Second operand has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:32,359 INFO L93 Difference]: Finished difference Result 423 states and 515 transitions. [2022-02-21 03:10:32,359 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-21 03:10:32,359 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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 91 [2022-02-21 03:10:32,359 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:32,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 260 transitions. [2022-02-21 03:10:32,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 260 transitions. [2022-02-21 03:10:32,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 260 transitions. [2022-02-21 03:10:32,537 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:32,552 INFO L225 Difference]: With dead ends: 423 [2022-02-21 03:10:32,552 INFO L226 Difference]: Without dead ends: 421 [2022-02-21 03:10:32,553 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 111 GetRequests, 93 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=325, Unknown=0, NotChecked=0, Total=380 [2022-02-21 03:10:32,553 INFO L933 BasicCegarLoop]: 171 mSDtfsCounter, 240 mSDsluCounter, 849 mSDsCounter, 0 mSdLazyCounter, 99 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 240 SdHoareTripleChecker+Valid, 1020 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 99 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:32,553 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [240 Valid, 1020 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 99 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:32,554 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 421 states. [2022-02-21 03:10:32,818 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 421 to 332. [2022-02-21 03:10:32,818 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:32,819 INFO L82 GeneralOperation]: Start isEquivalent. First operand 421 states. Second operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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:32,819 INFO L74 IsIncluded]: Start isIncluded. First operand 421 states. Second operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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:32,819 INFO L87 Difference]: Start difference. First operand 421 states. Second operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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:32,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:32,825 INFO L93 Difference]: Finished difference Result 421 states and 513 transitions. [2022-02-21 03:10:32,825 INFO L276 IsEmpty]: Start isEmpty. Operand 421 states and 513 transitions. [2022-02-21 03:10:32,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:32,826 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:32,826 INFO L74 IsIncluded]: Start isIncluded. First operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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 421 states. [2022-02-21 03:10:32,827 INFO L87 Difference]: Start difference. First operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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 421 states. [2022-02-21 03:10:32,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:32,836 INFO L93 Difference]: Finished difference Result 421 states and 513 transitions. [2022-02-21 03:10:32,836 INFO L276 IsEmpty]: Start isEmpty. Operand 421 states and 513 transitions. [2022-02-21 03:10:32,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:32,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:32,837 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:32,837 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:32,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 332 states, 311 states have (on average 1.2958199356913183) internal successors, (403), 322 states have internal predecessors, (403), 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:32,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 332 states to 332 states and 412 transitions. [2022-02-21 03:10:32,844 INFO L78 Accepts]: Start accepts. Automaton has 332 states and 412 transitions. Word has length 91 [2022-02-21 03:10:32,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:32,844 INFO L470 AbstractCegarLoop]: Abstraction has 332 states and 412 transitions. [2022-02-21 03:10:32,844 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 6.714285714285714) internal successors, (47), 7 states have internal predecessors, (47), 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,845 INFO L276 IsEmpty]: Start isEmpty. Operand 332 states and 412 transitions. [2022-02-21 03:10:32,845 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-21 03:10:32,845 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:32,846 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 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:32,851 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-02-21 03:10:33,050 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:33,051 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:33,051 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:33,051 INFO L85 PathProgramCache]: Analyzing trace with hash -1412310137, now seen corresponding path program 1 times [2022-02-21 03:10:33,051 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:33,051 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1039332945] [2022-02-21 03:10:33,051 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:33,051 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:33,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,136 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:33,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,140 INFO L290 TraceCheckUtils]: 0: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {33730#true} is VALID [2022-02-21 03:10:33,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,141 INFO L290 TraceCheckUtils]: 3: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,141 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {33730#true} {33730#true} #378#return; {33730#true} is VALID [2022-02-21 03:10:33,141 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:33,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,157 INFO L290 TraceCheckUtils]: 0: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,158 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,158 INFO L290 TraceCheckUtils]: 2: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,158 INFO L290 TraceCheckUtils]: 3: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,158 INFO L290 TraceCheckUtils]: 4: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 6: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 7: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 8: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 9: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 10: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 11: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 13: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 14: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 15: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 16: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 17: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,161 INFO L290 TraceCheckUtils]: 22: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,161 INFO L290 TraceCheckUtils]: 23: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,161 INFO L290 TraceCheckUtils]: 24: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,161 INFO L290 TraceCheckUtils]: 25: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 26: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 27: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 28: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 29: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 30: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 31: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,162 INFO L290 TraceCheckUtils]: 32: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 33: Hoare triple {33730#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 34: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 35: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 36: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 37: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 38: Hoare triple {33730#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,163 INFO L290 TraceCheckUtils]: 39: Hoare triple {33730#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,164 INFO L290 TraceCheckUtils]: 40: Hoare triple {33730#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {33730#true} is VALID [2022-02-21 03:10:33,164 INFO L290 TraceCheckUtils]: 41: Hoare triple {33730#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; {33730#true} is VALID [2022-02-21 03:10:33,164 INFO L290 TraceCheckUtils]: 42: Hoare triple {33730#true} ~__retres4~0 := ~res~0; {33730#true} is VALID [2022-02-21 03:10:33,164 INFO L290 TraceCheckUtils]: 43: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,164 INFO L290 TraceCheckUtils]: 44: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,164 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {33730#true} {33730#true} #380#return; {33730#true} is VALID [2022-02-21 03:10:33,165 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:33,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,184 INFO L290 TraceCheckUtils]: 0: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,184 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,184 INFO L290 TraceCheckUtils]: 2: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,184 INFO L290 TraceCheckUtils]: 3: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,185 INFO L290 TraceCheckUtils]: 4: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,185 INFO L290 TraceCheckUtils]: 5: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33805#(<= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:33,185 INFO L290 TraceCheckUtils]: 6: Hoare triple {33805#(<= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {33806#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,186 INFO L290 TraceCheckUtils]: 7: Hoare triple {33806#(<= 4294967295 |base2flt_#res|)} assume true; {33806#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,186 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {33806#(<= 4294967295 |base2flt_#res|)} {33730#true} #382#return; {33792#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} is VALID [2022-02-21 03:10:33,187 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:33,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,200 INFO L290 TraceCheckUtils]: 0: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,200 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,200 INFO L290 TraceCheckUtils]: 2: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,200 INFO L290 TraceCheckUtils]: 3: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,201 INFO L290 TraceCheckUtils]: 4: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,201 INFO L290 TraceCheckUtils]: 5: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33730#true} is VALID [2022-02-21 03:10:33,201 INFO L290 TraceCheckUtils]: 6: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,201 INFO L290 TraceCheckUtils]: 7: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,202 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {33730#true} {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} #384#return; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,202 INFO L290 TraceCheckUtils]: 0: Hoare triple {33730#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); {33730#true} is VALID [2022-02-21 03:10:33,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {33730#true} is VALID [2022-02-21 03:10:33,203 INFO L272 TraceCheckUtils]: 2: Hoare triple {33730#true} call main_#t~ret22#1 := base2flt(0, 0); {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:33,203 INFO L290 TraceCheckUtils]: 3: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,203 INFO L290 TraceCheckUtils]: 4: Hoare triple {33730#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {33730#true} is VALID [2022-02-21 03:10:33,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,203 INFO L290 TraceCheckUtils]: 6: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,204 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {33730#true} {33730#true} #378#return; {33730#true} is VALID [2022-02-21 03:10:33,204 INFO L290 TraceCheckUtils]: 8: Hoare triple {33730#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {33730#true} is VALID [2022-02-21 03:10:33,204 INFO L272 TraceCheckUtils]: 9: Hoare triple {33730#true} call main_#t~ret23#1 := base2flt(1, 0); {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:33,204 INFO L290 TraceCheckUtils]: 10: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 11: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 12: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 13: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 14: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 15: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 16: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,205 INFO L290 TraceCheckUtils]: 17: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 18: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 19: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 20: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 21: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 22: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 23: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,206 INFO L290 TraceCheckUtils]: 24: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 25: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 26: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 27: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 28: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 29: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 30: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,207 INFO L290 TraceCheckUtils]: 31: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 32: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 33: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 34: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 35: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 36: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 37: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,208 INFO L290 TraceCheckUtils]: 38: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 39: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 40: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 41: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 42: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 43: Hoare triple {33730#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 44: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,209 INFO L290 TraceCheckUtils]: 45: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 46: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 47: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 48: Hoare triple {33730#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 49: Hoare triple {33730#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 50: Hoare triple {33730#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 51: Hoare triple {33730#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; {33730#true} is VALID [2022-02-21 03:10:33,210 INFO L290 TraceCheckUtils]: 52: Hoare triple {33730#true} ~__retres4~0 := ~res~0; {33730#true} is VALID [2022-02-21 03:10:33,211 INFO L290 TraceCheckUtils]: 53: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,211 INFO L290 TraceCheckUtils]: 54: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,211 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33730#true} {33730#true} #380#return; {33730#true} is VALID [2022-02-21 03:10:33,211 INFO L290 TraceCheckUtils]: 56: Hoare triple {33730#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {33730#true} is VALID [2022-02-21 03:10:33,212 INFO L272 TraceCheckUtils]: 57: Hoare triple {33730#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:33,212 INFO L290 TraceCheckUtils]: 58: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,212 INFO L290 TraceCheckUtils]: 59: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,212 INFO L290 TraceCheckUtils]: 60: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,212 INFO L290 TraceCheckUtils]: 61: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,213 INFO L290 TraceCheckUtils]: 62: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,213 INFO L290 TraceCheckUtils]: 63: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33805#(<= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:33,213 INFO L290 TraceCheckUtils]: 64: Hoare triple {33805#(<= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {33806#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,214 INFO L290 TraceCheckUtils]: 65: Hoare triple {33806#(<= 4294967295 |base2flt_#res|)} assume true; {33806#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,214 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {33806#(<= 4294967295 |base2flt_#res|)} {33730#true} #382#return; {33792#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} is VALID [2022-02-21 03:10:33,215 INFO L290 TraceCheckUtils]: 67: Hoare triple {33792#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,216 INFO L272 TraceCheckUtils]: 68: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:33,216 INFO L290 TraceCheckUtils]: 69: Hoare triple {33804#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,216 INFO L290 TraceCheckUtils]: 70: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,216 INFO L290 TraceCheckUtils]: 71: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,216 INFO L290 TraceCheckUtils]: 72: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,216 INFO L290 TraceCheckUtils]: 73: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,216 INFO L290 TraceCheckUtils]: 74: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33730#true} is VALID [2022-02-21 03:10:33,217 INFO L290 TraceCheckUtils]: 75: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,217 INFO L290 TraceCheckUtils]: 76: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,217 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {33730#true} {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} #384#return; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,218 INFO L290 TraceCheckUtils]: 78: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,218 INFO L290 TraceCheckUtils]: 79: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,218 INFO L290 TraceCheckUtils]: 80: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,219 INFO L290 TraceCheckUtils]: 81: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} main_~sa~0#1 := main_~tmp~2#1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,219 INFO L290 TraceCheckUtils]: 82: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#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; {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,220 INFO L290 TraceCheckUtils]: 83: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,220 INFO L290 TraceCheckUtils]: 84: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,221 INFO L290 TraceCheckUtils]: 85: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,221 INFO L290 TraceCheckUtils]: 86: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,221 INFO L290 TraceCheckUtils]: 87: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,222 INFO L290 TraceCheckUtils]: 88: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {33731#false} is VALID [2022-02-21 03:10:33,222 INFO L290 TraceCheckUtils]: 89: Hoare triple {33731#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; {33731#false} is VALID [2022-02-21 03:10:33,222 INFO L290 TraceCheckUtils]: 90: Hoare triple {33731#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); {33731#false} is VALID [2022-02-21 03:10:33,223 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2022-02-21 03:10:33,223 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:33,223 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1039332945] [2022-02-21 03:10:33,223 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1039332945] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:33,223 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1581421089] [2022-02-21 03:10:33,223 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:33,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:33,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:33,225 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:33,257 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:33,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,310 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-21 03:10:33,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:33,326 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 0: Hoare triple {33730#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); {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L272 TraceCheckUtils]: 2: Hoare triple {33730#true} call main_#t~ret22#1 := base2flt(0, 0); {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 3: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 4: Hoare triple {33730#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 6: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {33730#true} {33730#true} #378#return; {33730#true} is VALID [2022-02-21 03:10:33,557 INFO L290 TraceCheckUtils]: 8: Hoare triple {33730#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L272 TraceCheckUtils]: 9: Hoare triple {33730#true} call main_#t~ret23#1 := base2flt(1, 0); {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 10: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 11: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 12: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 15: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 16: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 17: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 18: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 19: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,558 INFO L290 TraceCheckUtils]: 20: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,559 INFO L290 TraceCheckUtils]: 21: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,559 INFO L290 TraceCheckUtils]: 22: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,559 INFO L290 TraceCheckUtils]: 23: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,559 INFO L290 TraceCheckUtils]: 24: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 26: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 27: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 29: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 31: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,560 INFO L290 TraceCheckUtils]: 32: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 33: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 34: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 35: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 36: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 37: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 38: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,561 INFO L290 TraceCheckUtils]: 39: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,562 INFO L290 TraceCheckUtils]: 40: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,562 INFO L290 TraceCheckUtils]: 41: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,562 INFO L290 TraceCheckUtils]: 42: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,562 INFO L290 TraceCheckUtils]: 43: Hoare triple {33730#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {33730#true} is VALID [2022-02-21 03:10:33,562 INFO L290 TraceCheckUtils]: 44: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,562 INFO L290 TraceCheckUtils]: 45: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 46: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 47: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 48: Hoare triple {33730#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 49: Hoare triple {33730#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 50: Hoare triple {33730#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 51: Hoare triple {33730#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; {33730#true} is VALID [2022-02-21 03:10:33,563 INFO L290 TraceCheckUtils]: 52: Hoare triple {33730#true} ~__retres4~0 := ~res~0; {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L290 TraceCheckUtils]: 53: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L290 TraceCheckUtils]: 54: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33730#true} {33730#true} #380#return; {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L290 TraceCheckUtils]: 56: Hoare triple {33730#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L272 TraceCheckUtils]: 57: Hoare triple {33730#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L290 TraceCheckUtils]: 58: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,564 INFO L290 TraceCheckUtils]: 59: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,565 INFO L290 TraceCheckUtils]: 60: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,565 INFO L290 TraceCheckUtils]: 61: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,565 INFO L290 TraceCheckUtils]: 62: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,567 INFO L290 TraceCheckUtils]: 63: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33805#(<= 4294967295 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:33,568 INFO L290 TraceCheckUtils]: 64: Hoare triple {33805#(<= 4294967295 base2flt_~__retres4~0)} #res := ~__retres4~0; {33806#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,568 INFO L290 TraceCheckUtils]: 65: Hoare triple {33806#(<= 4294967295 |base2flt_#res|)} assume true; {33806#(<= 4294967295 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,574 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {33806#(<= 4294967295 |base2flt_#res|)} {33730#true} #382#return; {33792#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} is VALID [2022-02-21 03:10:33,575 INFO L290 TraceCheckUtils]: 67: Hoare triple {33792#(<= 4294967295 |ULTIMATE.start_main_#t~ret24#1|)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,575 INFO L272 TraceCheckUtils]: 68: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {33730#true} is VALID [2022-02-21 03:10:33,575 INFO L290 TraceCheckUtils]: 69: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 70: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 71: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 72: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 73: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 74: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 75: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,576 INFO L290 TraceCheckUtils]: 76: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,577 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {33730#true} {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} #384#return; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,578 INFO L290 TraceCheckUtils]: 78: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,578 INFO L290 TraceCheckUtils]: 79: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,578 INFO L290 TraceCheckUtils]: 80: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,579 INFO L290 TraceCheckUtils]: 81: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} main_~sa~0#1 := main_~tmp~2#1; {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,579 INFO L290 TraceCheckUtils]: 82: Hoare triple {33793#(<= 4294967295 |ULTIMATE.start_main_~a~0#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; {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,580 INFO L290 TraceCheckUtils]: 83: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,580 INFO L290 TraceCheckUtils]: 84: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,580 INFO L290 TraceCheckUtils]: 85: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,581 INFO L290 TraceCheckUtils]: 86: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,581 INFO L290 TraceCheckUtils]: 87: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,582 INFO L290 TraceCheckUtils]: 88: Hoare triple {33803#(<= 4294967295 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {33731#false} is VALID [2022-02-21 03:10:33,582 INFO L290 TraceCheckUtils]: 89: Hoare triple {33731#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; {33731#false} is VALID [2022-02-21 03:10:33,582 INFO L290 TraceCheckUtils]: 90: Hoare triple {33731#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); {33731#false} is VALID [2022-02-21 03:10:33,582 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2022-02-21 03:10:33,582 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:33,893 INFO L290 TraceCheckUtils]: 90: Hoare triple {33731#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); {33731#false} is VALID [2022-02-21 03:10:33,893 INFO L290 TraceCheckUtils]: 89: Hoare triple {33731#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; {33731#false} is VALID [2022-02-21 03:10:33,894 INFO L290 TraceCheckUtils]: 88: Hoare triple {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 >= 0);mulflt_~ma~1#1 := mulflt_#t~nondet12#1;havoc mulflt_#t~nondet12#1; {33731#false} is VALID [2022-02-21 03:10:33,895 INFO L290 TraceCheckUtils]: 87: Hoare triple {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,895 INFO L290 TraceCheckUtils]: 86: Hoare triple {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !false; {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,895 INFO L290 TraceCheckUtils]: 85: Hoare triple {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~a#1); {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,895 INFO L290 TraceCheckUtils]: 84: Hoare triple {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(0 == mulflt_~b#1 % 4294967296); {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,896 INFO L290 TraceCheckUtils]: 83: Hoare triple {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,896 INFO L290 TraceCheckUtils]: 82: Hoare triple {34105#(<= 0 |ULTIMATE.start_main_~a~0#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; {34086#(<= 0 |ULTIMATE.start_mulflt_~a#1|)} is VALID [2022-02-21 03:10:33,896 INFO L290 TraceCheckUtils]: 81: Hoare triple {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} main_~sa~0#1 := main_~tmp~2#1; {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,897 INFO L290 TraceCheckUtils]: 80: Hoare triple {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,897 INFO L290 TraceCheckUtils]: 79: Hoare triple {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,897 INFO L290 TraceCheckUtils]: 78: Hoare triple {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,898 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {33730#true} {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} #384#return; {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 76: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 75: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 74: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 73: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 72: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 71: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 70: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L290 TraceCheckUtils]: 69: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,898 INFO L272 TraceCheckUtils]: 68: Hoare triple {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {33730#true} is VALID [2022-02-21 03:10:33,899 INFO L290 TraceCheckUtils]: 67: Hoare triple {34151#(<= 0 |ULTIMATE.start_main_#t~ret24#1|)} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {34105#(<= 0 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-21 03:10:33,899 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {34158#(<= 0 |base2flt_#res|)} {33730#true} #382#return; {34151#(<= 0 |ULTIMATE.start_main_#t~ret24#1|)} is VALID [2022-02-21 03:10:33,900 INFO L290 TraceCheckUtils]: 65: Hoare triple {34158#(<= 0 |base2flt_#res|)} assume true; {34158#(<= 0 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,900 INFO L290 TraceCheckUtils]: 64: Hoare triple {34165#(<= 0 base2flt_~__retres4~0)} #res := ~__retres4~0; {34158#(<= 0 |base2flt_#res|)} is VALID [2022-02-21 03:10:33,900 INFO L290 TraceCheckUtils]: 63: Hoare triple {33730#true} assume ~e >= 127;~__retres4~0 := 4294967295; {34165#(<= 0 base2flt_~__retres4~0)} is VALID [2022-02-21 03:10:33,900 INFO L290 TraceCheckUtils]: 62: Hoare triple {33730#true} assume ~m % 4294967296 >= 33554432; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 61: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 60: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 59: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 58: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L272 TraceCheckUtils]: 57: Hoare triple {33730#true} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 56: Hoare triple {33730#true} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33730#true} {33730#true} #380#return; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 54: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 53: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 52: Hoare triple {33730#true} ~__retres4~0 := ~res~0; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 51: Hoare triple {33730#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; {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 50: Hoare triple {33730#true} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 49: Hoare triple {33730#true} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,901 INFO L290 TraceCheckUtils]: 48: Hoare triple {33730#true} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 47: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 46: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 45: Hoare triple {33730#true} assume 128 + ~e >= -2147483648; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 44: Hoare triple {33730#true} assume 128 + ~e <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 43: Hoare triple {33730#true} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 42: Hoare triple {33730#true} assume !(~m % 4294967296 < 16777216); {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 41: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 40: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 39: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 38: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 37: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 36: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 35: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 34: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,902 INFO L290 TraceCheckUtils]: 33: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 32: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 31: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 30: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 29: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 28: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 27: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 26: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 25: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 24: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 23: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 22: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,903 INFO L290 TraceCheckUtils]: 21: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 19: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 17: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 16: Hoare triple {33730#true} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 15: Hoare triple {33730#true} assume ~e - 1 <= 2147483647; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 14: Hoare triple {33730#true} assume !(~e <= -128); {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 13: Hoare triple {33730#true} assume !false; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 12: Hoare triple {33730#true} assume ~m % 4294967296 < 16777216; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 11: Hoare triple {33730#true} assume !(0 == ~m % 4294967296); {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 10: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L272 TraceCheckUtils]: 9: Hoare triple {33730#true} call main_#t~ret23#1 := base2flt(1, 0); {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 8: Hoare triple {33730#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {33730#true} {33730#true} #378#return; {33730#true} is VALID [2022-02-21 03:10:33,904 INFO L290 TraceCheckUtils]: 6: Hoare triple {33730#true} assume true; {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L290 TraceCheckUtils]: 5: Hoare triple {33730#true} #res := ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L290 TraceCheckUtils]: 4: Hoare triple {33730#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L290 TraceCheckUtils]: 3: Hoare triple {33730#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L272 TraceCheckUtils]: 2: Hoare triple {33730#true} call main_#t~ret22#1 := base2flt(0, 0); {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L290 TraceCheckUtils]: 1: Hoare triple {33730#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L290 TraceCheckUtils]: 0: Hoare triple {33730#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); {33730#true} is VALID [2022-02-21 03:10:33,905 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2022-02-21 03:10:33,905 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1581421089] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:33,905 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:33,905 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 13 [2022-02-21 03:10:33,906 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [684050249] [2022-02-21 03:10:33,906 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:33,906 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) Word has length 91 [2022-02-21 03:10:33,907 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:33,908 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-21 03:10:33,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:33,968 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-21 03:10:33,968 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:33,968 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-21 03:10:33,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=128, Unknown=0, NotChecked=0, Total=156 [2022-02-21 03:10:33,969 INFO L87 Difference]: Start difference. First operand 332 states and 412 transitions. Second operand has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-21 03:10:35,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:35,307 INFO L93 Difference]: Finished difference Result 710 states and 862 transitions. [2022-02-21 03:10:35,307 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-21 03:10:35,308 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) Word has length 91 [2022-02-21 03:10:35,308 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-21 03:10:35,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-21 03:10:35,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 458 transitions. [2022-02-21 03:10:35,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-21 03:10:35,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 458 transitions. [2022-02-21 03:10:35,313 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 458 transitions. [2022-02-21 03:10:35,646 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 458 edges. 458 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:35,666 INFO L225 Difference]: With dead ends: 710 [2022-02-21 03:10:35,667 INFO L226 Difference]: Without dead ends: 646 [2022-02-21 03:10:35,667 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 202 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=66, Invalid=276, Unknown=0, NotChecked=0, Total=342 [2022-02-21 03:10:35,668 INFO L933 BasicCegarLoop]: 176 mSDtfsCounter, 460 mSDsluCounter, 1299 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 460 SdHoareTripleChecker+Valid, 1475 SdHoareTripleChecker+Invalid, 166 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-21 03:10:35,668 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [460 Valid, 1475 Invalid, 166 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-21 03:10:35,669 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 646 states. [2022-02-21 03:10:35,972 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 646 to 359. [2022-02-21 03:10:35,972 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-21 03:10:35,974 INFO L82 GeneralOperation]: Start isEquivalent. First operand 646 states. Second operand has 359 states, 336 states have (on average 1.2857142857142858) internal successors, (432), 346 states have internal predecessors, (432), 5 states have call successors, (5), 4 states have call predecessors, (5), 6 states have return successors, (8), 8 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-21 03:10:35,974 INFO L74 IsIncluded]: Start isIncluded. First operand 646 states. Second operand has 359 states, 336 states have (on average 1.2857142857142858) internal successors, (432), 346 states have internal predecessors, (432), 5 states have call successors, (5), 4 states have call predecessors, (5), 6 states have return successors, (8), 8 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-21 03:10:35,975 INFO L87 Difference]: Start difference. First operand 646 states. Second operand has 359 states, 336 states have (on average 1.2857142857142858) internal successors, (432), 346 states have internal predecessors, (432), 5 states have call successors, (5), 4 states have call predecessors, (5), 6 states have return successors, (8), 8 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-21 03:10:35,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:35,993 INFO L93 Difference]: Finished difference Result 646 states and 784 transitions. [2022-02-21 03:10:35,993 INFO L276 IsEmpty]: Start isEmpty. Operand 646 states and 784 transitions. [2022-02-21 03:10:35,996 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:35,996 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:35,997 INFO L74 IsIncluded]: Start isIncluded. First operand has 359 states, 336 states have (on average 1.2857142857142858) internal successors, (432), 346 states have internal predecessors, (432), 5 states have call successors, (5), 4 states have call predecessors, (5), 6 states have return successors, (8), 8 states have call predecessors, (8), 5 states have call successors, (8) Second operand 646 states. [2022-02-21 03:10:35,997 INFO L87 Difference]: Start difference. First operand has 359 states, 336 states have (on average 1.2857142857142858) internal successors, (432), 346 states have internal predecessors, (432), 5 states have call successors, (5), 4 states have call predecessors, (5), 6 states have return successors, (8), 8 states have call predecessors, (8), 5 states have call successors, (8) Second operand 646 states. [2022-02-21 03:10:36,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-21 03:10:36,016 INFO L93 Difference]: Finished difference Result 646 states and 784 transitions. [2022-02-21 03:10:36,016 INFO L276 IsEmpty]: Start isEmpty. Operand 646 states and 784 transitions. [2022-02-21 03:10:36,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-21 03:10:36,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-21 03:10:36,017 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-21 03:10:36,017 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-21 03:10:36,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 359 states, 336 states have (on average 1.2857142857142858) internal successors, (432), 346 states have internal predecessors, (432), 5 states have call successors, (5), 4 states have call predecessors, (5), 6 states have return successors, (8), 8 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-21 03:10:36,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 359 states to 359 states and 445 transitions. [2022-02-21 03:10:36,027 INFO L78 Accepts]: Start accepts. Automaton has 359 states and 445 transitions. Word has length 91 [2022-02-21 03:10:36,027 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-21 03:10:36,027 INFO L470 AbstractCegarLoop]: Abstraction has 359 states and 445 transitions. [2022-02-21 03:10:36,028 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.846153846153846) internal successors, (63), 10 states have internal predecessors, (63), 3 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-21 03:10:36,028 INFO L276 IsEmpty]: Start isEmpty. Operand 359 states and 445 transitions. [2022-02-21 03:10:36,029 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-21 03:10:36,029 INFO L506 BasicCegarLoop]: Found error trace [2022-02-21 03:10:36,029 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 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:36,052 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:36,243 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,SelfDestructingSolverStorable19 [2022-02-21 03:10:36,243 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:36,244 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-21 03:10:36,244 INFO L85 PathProgramCache]: Analyzing trace with hash -1412312059, now seen corresponding path program 1 times [2022-02-21 03:10:36,244 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-21 03:10:36,244 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [166604837] [2022-02-21 03:10:36,244 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:36,244 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-21 03:10:36,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,298 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-21 03:10:36,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,304 INFO L290 TraceCheckUtils]: 0: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {36828#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {36828#true} is VALID [2022-02-21 03:10:36,304 INFO L290 TraceCheckUtils]: 2: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,304 INFO L290 TraceCheckUtils]: 3: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:36,305 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {36828#true} {36828#true} #378#return; {36828#true} is VALID [2022-02-21 03:10:36,305 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 9 [2022-02-21 03:10:36,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,480 INFO L290 TraceCheckUtils]: 0: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,480 INFO L290 TraceCheckUtils]: 1: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,480 INFO L290 TraceCheckUtils]: 2: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,481 INFO L290 TraceCheckUtils]: 3: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,481 INFO L290 TraceCheckUtils]: 4: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,481 INFO L290 TraceCheckUtils]: 5: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,482 INFO L290 TraceCheckUtils]: 6: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,483 INFO L290 TraceCheckUtils]: 7: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,483 INFO L290 TraceCheckUtils]: 8: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,484 INFO L290 TraceCheckUtils]: 9: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,484 INFO L290 TraceCheckUtils]: 10: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,485 INFO L290 TraceCheckUtils]: 11: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,485 INFO L290 TraceCheckUtils]: 12: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,486 INFO L290 TraceCheckUtils]: 13: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,486 INFO L290 TraceCheckUtils]: 14: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,487 INFO L290 TraceCheckUtils]: 15: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,487 INFO L290 TraceCheckUtils]: 16: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,488 INFO L290 TraceCheckUtils]: 17: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,488 INFO L290 TraceCheckUtils]: 18: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,488 INFO L290 TraceCheckUtils]: 19: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,489 INFO L290 TraceCheckUtils]: 20: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,489 INFO L290 TraceCheckUtils]: 21: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,490 INFO L290 TraceCheckUtils]: 22: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,490 INFO L290 TraceCheckUtils]: 23: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,491 INFO L290 TraceCheckUtils]: 24: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,491 INFO L290 TraceCheckUtils]: 25: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,492 INFO L290 TraceCheckUtils]: 26: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,492 INFO L290 TraceCheckUtils]: 27: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,493 INFO L290 TraceCheckUtils]: 28: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,493 INFO L290 TraceCheckUtils]: 29: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,493 INFO L290 TraceCheckUtils]: 30: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,494 INFO L290 TraceCheckUtils]: 31: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36906#(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,495 INFO L290 TraceCheckUtils]: 32: Hoare triple {36906#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,495 INFO L290 TraceCheckUtils]: 33: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,496 INFO L290 TraceCheckUtils]: 34: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,496 INFO L290 TraceCheckUtils]: 35: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,496 INFO L290 TraceCheckUtils]: 36: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,496 INFO L290 TraceCheckUtils]: 37: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,499 INFO L290 TraceCheckUtils]: 38: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,499 INFO L290 TraceCheckUtils]: 39: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,500 INFO L290 TraceCheckUtils]: 40: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,500 INFO L290 TraceCheckUtils]: 41: Hoare triple {36907#(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; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,500 INFO L290 TraceCheckUtils]: 42: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,500 INFO L290 TraceCheckUtils]: 43: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,501 INFO L290 TraceCheckUtils]: 44: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume true; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,501 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {36907#(not (= |base2flt_#in~m| 1))} {36828#true} #380#return; {36829#false} is VALID [2022-02-21 03:10:36,502 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 57 [2022-02-21 03:10:36,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,507 INFO L290 TraceCheckUtils]: 0: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,507 INFO L290 TraceCheckUtils]: 1: Hoare triple {36828#true} assume !(0 == ~m % 4294967296); {36828#true} is VALID [2022-02-21 03:10:36,507 INFO L290 TraceCheckUtils]: 2: Hoare triple {36828#true} assume !(~m % 4294967296 < 16777216); {36828#true} is VALID [2022-02-21 03:10:36,507 INFO L290 TraceCheckUtils]: 3: Hoare triple {36828#true} assume !false; {36828#true} is VALID [2022-02-21 03:10:36,507 INFO L290 TraceCheckUtils]: 4: Hoare triple {36828#true} assume ~m % 4294967296 >= 33554432; {36828#true} is VALID [2022-02-21 03:10:36,507 INFO L290 TraceCheckUtils]: 5: Hoare triple {36828#true} assume ~e >= 127;~__retres4~0 := 4294967295; {36828#true} is VALID [2022-02-21 03:10:36,508 INFO L290 TraceCheckUtils]: 6: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:36,508 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {36828#true} {36829#false} #382#return; {36829#false} is VALID [2022-02-21 03:10:36,508 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-21 03:10:36,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,512 INFO L290 TraceCheckUtils]: 0: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,513 INFO L290 TraceCheckUtils]: 1: Hoare triple {36828#true} assume !(0 == ~m % 4294967296); {36828#true} is VALID [2022-02-21 03:10:36,513 INFO L290 TraceCheckUtils]: 2: Hoare triple {36828#true} assume !(~m % 4294967296 < 16777216); {36828#true} is VALID [2022-02-21 03:10:36,513 INFO L290 TraceCheckUtils]: 3: Hoare triple {36828#true} assume !false; {36828#true} is VALID [2022-02-21 03:10:36,513 INFO L290 TraceCheckUtils]: 4: Hoare triple {36828#true} assume ~m % 4294967296 >= 33554432; {36828#true} is VALID [2022-02-21 03:10:36,513 INFO L290 TraceCheckUtils]: 5: Hoare triple {36828#true} assume ~e >= 127;~__retres4~0 := 4294967295; {36828#true} is VALID [2022-02-21 03:10:36,513 INFO L290 TraceCheckUtils]: 6: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,514 INFO L290 TraceCheckUtils]: 7: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:36,514 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {36828#true} {36829#false} #384#return; {36829#false} is VALID [2022-02-21 03:10:36,514 INFO L290 TraceCheckUtils]: 0: Hoare triple {36828#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); {36828#true} is VALID [2022-02-21 03:10:36,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {36828#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {36828#true} is VALID [2022-02-21 03:10:36,515 INFO L272 TraceCheckUtils]: 2: Hoare triple {36828#true} call main_#t~ret22#1 := base2flt(0, 0); {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,515 INFO L290 TraceCheckUtils]: 3: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,515 INFO L290 TraceCheckUtils]: 4: Hoare triple {36828#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {36828#true} is VALID [2022-02-21 03:10:36,515 INFO L290 TraceCheckUtils]: 5: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,515 INFO L290 TraceCheckUtils]: 6: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:36,515 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {36828#true} {36828#true} #378#return; {36828#true} is VALID [2022-02-21 03:10:36,516 INFO L290 TraceCheckUtils]: 8: Hoare triple {36828#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {36828#true} is VALID [2022-02-21 03:10:36,516 INFO L272 TraceCheckUtils]: 9: Hoare triple {36828#true} call main_#t~ret23#1 := base2flt(1, 0); {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,517 INFO L290 TraceCheckUtils]: 10: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,517 INFO L290 TraceCheckUtils]: 11: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(0 == ~m % 4294967296); {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,517 INFO L290 TraceCheckUtils]: 12: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~m % 4294967296 < 16777216; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,518 INFO L290 TraceCheckUtils]: 13: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !false; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,518 INFO L290 TraceCheckUtils]: 14: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume !(~e <= -128); {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,518 INFO L290 TraceCheckUtils]: 15: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 <= 2147483647; {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} is VALID [2022-02-21 03:10:36,519 INFO L290 TraceCheckUtils]: 16: Hoare triple {36900#(or (= base2flt_~m |base2flt_#in~m|) (= (+ (- 1) base2flt_~m) 0))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,520 INFO L290 TraceCheckUtils]: 17: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,520 INFO L290 TraceCheckUtils]: 18: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,521 INFO L290 TraceCheckUtils]: 20: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,522 INFO L290 TraceCheckUtils]: 21: Hoare triple {36901#(or (and (<= base2flt_~m 2) (<= 2 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,523 INFO L290 TraceCheckUtils]: 22: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,524 INFO L290 TraceCheckUtils]: 23: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !false; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,524 INFO L290 TraceCheckUtils]: 24: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,526 INFO L290 TraceCheckUtils]: 26: Hoare triple {36902#(or (and (<= 4 base2flt_~m) (<= base2flt_~m 4)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,526 INFO L290 TraceCheckUtils]: 27: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,526 INFO L290 TraceCheckUtils]: 28: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !false; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,527 INFO L290 TraceCheckUtils]: 29: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,527 INFO L290 TraceCheckUtils]: 30: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,528 INFO L290 TraceCheckUtils]: 31: Hoare triple {36903#(or (and (<= 8 base2flt_~m) (<= base2flt_~m 8)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,528 INFO L290 TraceCheckUtils]: 32: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,529 INFO L290 TraceCheckUtils]: 33: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,529 INFO L290 TraceCheckUtils]: 34: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,530 INFO L290 TraceCheckUtils]: 35: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,531 INFO L290 TraceCheckUtils]: 36: Hoare triple {36904#(or (and (<= base2flt_~m 16) (<= 16 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,531 INFO L290 TraceCheckUtils]: 37: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,532 INFO L290 TraceCheckUtils]: 38: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !false; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,532 INFO L290 TraceCheckUtils]: 39: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,533 INFO L290 TraceCheckUtils]: 40: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:36,534 INFO L290 TraceCheckUtils]: 41: Hoare triple {36905#(or (and (<= base2flt_~m 32) (<= 32 base2flt_~m)) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36906#(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,535 INFO L290 TraceCheckUtils]: 42: Hoare triple {36906#(or (and (not (<= (+ (div base2flt_~m 4294967296) 1) 0)) (<= base2flt_~m 64)) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,535 INFO L290 TraceCheckUtils]: 43: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,535 INFO L290 TraceCheckUtils]: 44: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,536 INFO L290 TraceCheckUtils]: 45: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,536 INFO L290 TraceCheckUtils]: 46: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,536 INFO L290 TraceCheckUtils]: 47: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,537 INFO L290 TraceCheckUtils]: 48: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,537 INFO L290 TraceCheckUtils]: 49: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,537 INFO L290 TraceCheckUtils]: 50: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,537 INFO L290 TraceCheckUtils]: 51: Hoare triple {36907#(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; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,538 INFO L290 TraceCheckUtils]: 52: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,538 INFO L290 TraceCheckUtils]: 53: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,538 INFO L290 TraceCheckUtils]: 54: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume true; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:36,539 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {36907#(not (= |base2flt_#in~m| 1))} {36828#true} #380#return; {36829#false} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 56: Hoare triple {36829#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {36829#false} is VALID [2022-02-21 03:10:36,539 INFO L272 TraceCheckUtils]: 57: Hoare triple {36829#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 58: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 59: Hoare triple {36828#true} assume !(0 == ~m % 4294967296); {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 60: Hoare triple {36828#true} assume !(~m % 4294967296 < 16777216); {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 61: Hoare triple {36828#true} assume !false; {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 62: Hoare triple {36828#true} assume ~m % 4294967296 >= 33554432; {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 63: Hoare triple {36828#true} assume ~e >= 127;~__retres4~0 := 4294967295; {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 64: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,539 INFO L290 TraceCheckUtils]: 65: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {36828#true} {36829#false} #382#return; {36829#false} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 67: Hoare triple {36829#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {36829#false} is VALID [2022-02-21 03:10:36,540 INFO L272 TraceCheckUtils]: 68: Hoare triple {36829#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 69: Hoare triple {36899#(and (= abs_77 |old(abs_77)|) (= abs_76 |old(abs_76)|))} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 70: Hoare triple {36828#true} assume !(0 == ~m % 4294967296); {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 71: Hoare triple {36828#true} assume !(~m % 4294967296 < 16777216); {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 72: Hoare triple {36828#true} assume !false; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 73: Hoare triple {36828#true} assume ~m % 4294967296 >= 33554432; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 74: Hoare triple {36828#true} assume ~e >= 127;~__retres4~0 := 4294967295; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 75: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 76: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:36,540 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {36828#true} {36829#false} #384#return; {36829#false} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 78: Hoare triple {36829#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {36829#false} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 79: Hoare triple {36829#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:36,540 INFO L290 TraceCheckUtils]: 80: Hoare triple {36829#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 81: Hoare triple {36829#false} main_~sa~0#1 := main_~tmp~2#1; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 82: Hoare triple {36829#false} 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; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 83: Hoare triple {36829#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 84: Hoare triple {36829#false} assume !(0 == mulflt_~b#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 85: Hoare triple {36829#false} assume !(0 == mulflt_~a#1); {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 86: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 87: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 88: Hoare triple {36829#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; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 89: Hoare triple {36829#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; {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L290 TraceCheckUtils]: 90: Hoare triple {36829#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); {36829#false} is VALID [2022-02-21 03:10:36,541 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 4 proven. 85 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:36,542 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-21 03:10:36,542 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [166604837] [2022-02-21 03:10:36,542 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [166604837] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-21 03:10:36,542 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1068678592] [2022-02-21 03:10:36,542 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-21 03:10:36,542 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-21 03:10:36,542 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-21 03:10:36,543 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,544 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,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,857 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-21 03:10:36,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-21 03:10:36,878 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-21 03:10:37,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {36828#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); {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 1: Hoare triple {36828#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L272 TraceCheckUtils]: 2: Hoare triple {36828#true} call main_#t~ret22#1 := base2flt(0, 0); {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 3: Hoare triple {36828#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 4: Hoare triple {36828#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 6: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {36828#true} {36828#true} #378#return; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L290 TraceCheckUtils]: 8: Hoare triple {36828#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {36828#true} is VALID [2022-02-21 03:10:37,166 INFO L272 TraceCheckUtils]: 9: Hoare triple {36828#true} call main_#t~ret23#1 := base2flt(1, 0); {36828#true} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 10: Hoare triple {36828#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36941#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 11: Hoare triple {36941#(= base2flt_~m |base2flt_#in~m|)} assume !(0 == ~m % 4294967296); {36941#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 12: Hoare triple {36941#(= base2flt_~m |base2flt_#in~m|)} assume ~m % 4294967296 < 16777216; {36941#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:37,167 INFO L290 TraceCheckUtils]: 13: Hoare triple {36941#(= base2flt_~m |base2flt_#in~m|)} assume !false; {36941#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:37,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {36941#(= base2flt_~m |base2flt_#in~m|)} assume !(~e <= -128); {36941#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:37,168 INFO L290 TraceCheckUtils]: 15: Hoare triple {36941#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 <= 2147483647; {36941#(= base2flt_~m |base2flt_#in~m|)} is VALID [2022-02-21 03:10:37,168 INFO L290 TraceCheckUtils]: 16: Hoare triple {36941#(= base2flt_~m |base2flt_#in~m|)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !false; {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,169 INFO L290 TraceCheckUtils]: 19: Hoare triple {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 20: Hoare triple {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,170 INFO L290 TraceCheckUtils]: 21: Hoare triple {36960#(= (* 2 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 22: Hoare triple {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume ~m % 4294967296 < 16777216; {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 23: Hoare triple {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !false; {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:37,171 INFO L290 TraceCheckUtils]: 24: Hoare triple {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume !(~e <= -128); {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 25: Hoare triple {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume ~e - 1 <= 2147483647; {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} is VALID [2022-02-21 03:10:37,172 INFO L290 TraceCheckUtils]: 26: Hoare triple {36976#(= (* |base2flt_#in~m| 4) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 27: Hoare triple {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 28: Hoare triple {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume !false; {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,173 INFO L290 TraceCheckUtils]: 29: Hoare triple {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 30: Hoare triple {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,174 INFO L290 TraceCheckUtils]: 31: Hoare triple {36992#(= (* 8 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 33: Hoare triple {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume !false; {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 34: Hoare triple {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,175 INFO L290 TraceCheckUtils]: 35: Hoare triple {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 36: Hoare triple {37008#(= (* 16 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,176 INFO L290 TraceCheckUtils]: 37: Hoare triple {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume ~m % 4294967296 < 16777216; {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 38: Hoare triple {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume !false; {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 39: Hoare triple {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume !(~e <= -128); {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,177 INFO L290 TraceCheckUtils]: 40: Hoare triple {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 <= 2147483647; {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,178 INFO L290 TraceCheckUtils]: 41: Hoare triple {37024#(= (* 32 |base2flt_#in~m|) base2flt_~m)} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37040#(= (* 64 |base2flt_#in~m|) base2flt_~m)} is VALID [2022-02-21 03:10:37,180 INFO L290 TraceCheckUtils]: 42: Hoare triple {37040#(= (* 64 |base2flt_#in~m|) base2flt_~m)} assume !(~m % 4294967296 < 16777216); {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,180 INFO L290 TraceCheckUtils]: 43: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,181 INFO L290 TraceCheckUtils]: 44: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,181 INFO L290 TraceCheckUtils]: 45: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,181 INFO L290 TraceCheckUtils]: 46: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e <= 2147483647; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,182 INFO L290 TraceCheckUtils]: 47: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume 128 + ~e >= -2147483648; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,182 INFO L290 TraceCheckUtils]: 48: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,182 INFO L290 TraceCheckUtils]: 49: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,182 INFO L290 TraceCheckUtils]: 50: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,183 INFO L290 TraceCheckUtils]: 51: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;abs_77 := (if ~m < 16777216 * (128 + ~e) then 16777216 * (128 + ~e) else ~m);assume ~m >= 0 && 16777216 * (128 + ~e) >= 0;assume ~res~0 >= abs_77; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,183 INFO L290 TraceCheckUtils]: 52: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} ~__retres4~0 := ~res~0; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,183 INFO L290 TraceCheckUtils]: 53: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} #res := ~__retres4~0; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,184 INFO L290 TraceCheckUtils]: 54: Hoare triple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} assume true; {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} is VALID [2022-02-21 03:10:37,184 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {37044#(not (< (mod (* 64 |base2flt_#in~m|) 4294967296) 16777216))} {36828#true} #380#return; {36829#false} is VALID [2022-02-21 03:10:37,184 INFO L290 TraceCheckUtils]: 56: Hoare triple {36829#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {36829#false} is VALID [2022-02-21 03:10:37,184 INFO L272 TraceCheckUtils]: 57: Hoare triple {36829#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {36829#false} is VALID [2022-02-21 03:10:37,184 INFO L290 TraceCheckUtils]: 58: Hoare triple {36829#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 59: Hoare triple {36829#false} assume !(0 == ~m % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 60: Hoare triple {36829#false} assume !(~m % 4294967296 < 16777216); {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 61: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 62: Hoare triple {36829#false} assume ~m % 4294967296 >= 33554432; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 63: Hoare triple {36829#false} assume ~e >= 127;~__retres4~0 := 4294967295; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 64: Hoare triple {36829#false} #res := ~__retres4~0; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 65: Hoare triple {36829#false} assume true; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {36829#false} {36829#false} #382#return; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 67: Hoare triple {36829#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L272 TraceCheckUtils]: 68: Hoare triple {36829#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 69: Hoare triple {36829#false} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 70: Hoare triple {36829#false} assume !(0 == ~m % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 71: Hoare triple {36829#false} assume !(~m % 4294967296 < 16777216); {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 72: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:37,185 INFO L290 TraceCheckUtils]: 73: Hoare triple {36829#false} assume ~m % 4294967296 >= 33554432; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 74: Hoare triple {36829#false} assume ~e >= 127;~__retres4~0 := 4294967295; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 75: Hoare triple {36829#false} #res := ~__retres4~0; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 76: Hoare triple {36829#false} assume true; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {36829#false} {36829#false} #384#return; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 78: Hoare triple {36829#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 79: Hoare triple {36829#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 80: Hoare triple {36829#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 81: Hoare triple {36829#false} main_~sa~0#1 := main_~tmp~2#1; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 82: Hoare triple {36829#false} 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; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 83: Hoare triple {36829#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 84: Hoare triple {36829#false} assume !(0 == mulflt_~b#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 85: Hoare triple {36829#false} assume !(0 == mulflt_~a#1); {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 86: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:37,186 INFO L290 TraceCheckUtils]: 87: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:37,187 INFO L290 TraceCheckUtils]: 88: Hoare triple {36829#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; {36829#false} is VALID [2022-02-21 03:10:37,187 INFO L290 TraceCheckUtils]: 89: Hoare triple {36829#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; {36829#false} is VALID [2022-02-21 03:10:37,187 INFO L290 TraceCheckUtils]: 90: Hoare triple {36829#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); {36829#false} is VALID [2022-02-21 03:10:37,187 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 26 proven. 75 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-21 03:10:37,187 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-21 03:10:37,740 INFO L290 TraceCheckUtils]: 90: Hoare triple {36829#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); {36829#false} is VALID [2022-02-21 03:10:37,740 INFO L290 TraceCheckUtils]: 89: Hoare triple {36829#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; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 88: Hoare triple {36829#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; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 87: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 86: Hoare triple {36829#false} assume !false; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 85: Hoare triple {36829#false} assume !(0 == mulflt_~a#1); {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 84: Hoare triple {36829#false} assume !(0 == mulflt_~b#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 83: Hoare triple {36829#false} assume !(mulflt_~a#1 % 4294967296 < mulflt_~b#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 82: Hoare triple {36829#false} 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; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 81: Hoare triple {36829#false} main_~sa~0#1 := main_~tmp~2#1; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 80: Hoare triple {36829#false} assume main_~a~0#1 % 4294967296 > main_~zero~0#1 % 4294967296;main_~tmp~2#1 := 1; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 79: Hoare triple {36829#false} assume !(main_~a~0#1 % 4294967296 < main_~zero~0#1 % 4294967296); {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 78: Hoare triple {36829#false} main_~b~0#1 := main_#t~ret25#1;havoc main_#t~ret25#1; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {36828#true} {36829#false} #384#return; {36829#false} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 76: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:37,741 INFO L290 TraceCheckUtils]: 75: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 74: Hoare triple {36828#true} assume ~e >= 127;~__retres4~0 := 4294967295; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 73: Hoare triple {36828#true} assume ~m % 4294967296 >= 33554432; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 72: Hoare triple {36828#true} assume !false; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 71: Hoare triple {36828#true} assume !(~m % 4294967296 < 16777216); {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 70: Hoare triple {36828#true} assume !(0 == ~m % 4294967296); {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 69: Hoare triple {36828#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L272 TraceCheckUtils]: 68: Hoare triple {36829#false} call main_#t~ret25#1 := base2flt(main_~mb~2#1, main_~eb~2#1); {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 67: Hoare triple {36829#false} main_~a~0#1 := main_#t~ret24#1;havoc main_#t~ret24#1; {36829#false} is VALID [2022-02-21 03:10:37,742 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {36828#true} {36829#false} #382#return; {36829#false} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 65: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 64: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 63: Hoare triple {36828#true} assume ~e >= 127;~__retres4~0 := 4294967295; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 62: Hoare triple {36828#true} assume ~m % 4294967296 >= 33554432; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 61: Hoare triple {36828#true} assume !false; {36828#true} is VALID [2022-02-21 03:10:37,742 INFO L290 TraceCheckUtils]: 60: Hoare triple {36828#true} assume !(~m % 4294967296 < 16777216); {36828#true} is VALID [2022-02-21 03:10:37,743 INFO L290 TraceCheckUtils]: 59: Hoare triple {36828#true} assume !(0 == ~m % 4294967296); {36828#true} is VALID [2022-02-21 03:10:37,743 INFO L290 TraceCheckUtils]: 58: Hoare triple {36828#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,743 INFO L272 TraceCheckUtils]: 57: Hoare triple {36829#false} call main_#t~ret24#1 := base2flt(main_~ma~2#1, main_~ea~2#1); {36828#true} is VALID [2022-02-21 03:10:37,743 INFO L290 TraceCheckUtils]: 56: Hoare triple {36829#false} main_~one~0#1 := main_#t~ret23#1;havoc main_#t~ret23#1; {36829#false} is VALID [2022-02-21 03:10:37,743 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {36907#(not (= |base2flt_#in~m| 1))} {36828#true} #380#return; {36829#false} is VALID [2022-02-21 03:10:37,744 INFO L290 TraceCheckUtils]: 54: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume true; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,744 INFO L290 TraceCheckUtils]: 53: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} #res := ~__retres4~0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,744 INFO L290 TraceCheckUtils]: 52: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} ~__retres4~0 := ~res~0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,744 INFO L290 TraceCheckUtils]: 51: Hoare triple {36907#(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; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,745 INFO L290 TraceCheckUtils]: 50: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !((0 == ~m || 1 == ~m) && 0 == 16777216 * (128 + ~e)); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,745 INFO L290 TraceCheckUtils]: 49: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !(0 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,745 INFO L290 TraceCheckUtils]: 48: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume !((1 == ~m && (0 == 16777216 * (128 + ~e) || 1 == 16777216 * (128 + ~e))) || ((0 == ~m || 1 == ~m) && 1 == 16777216 * (128 + ~e))); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,746 INFO L290 TraceCheckUtils]: 47: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,746 INFO L290 TraceCheckUtils]: 46: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,746 INFO L290 TraceCheckUtils]: 45: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e >= -2147483648; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,746 INFO L290 TraceCheckUtils]: 44: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 128 + ~e <= 2147483647; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,747 INFO L290 TraceCheckUtils]: 43: Hoare triple {36907#(not (= |base2flt_#in~m| 1))} assume 0 == ~m || 0 == ~bitwiseComplement(16777216);~m := 0; {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,747 INFO L290 TraceCheckUtils]: 42: Hoare triple {37336#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~m % 4294967296 < 16777216); {36907#(not (= |base2flt_#in~m| 1))} is VALID [2022-02-21 03:10:37,748 INFO L290 TraceCheckUtils]: 41: Hoare triple {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37336#(or (< (mod base2flt_~m 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,748 INFO L290 TraceCheckUtils]: 40: Hoare triple {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,749 INFO L290 TraceCheckUtils]: 39: Hoare triple {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,749 INFO L290 TraceCheckUtils]: 38: Hoare triple {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,750 INFO L290 TraceCheckUtils]: 37: Hoare triple {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,752 INFO L290 TraceCheckUtils]: 36: Hoare triple {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37340#(or (< (mod (* 2 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,752 INFO L290 TraceCheckUtils]: 35: Hoare triple {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,752 INFO L290 TraceCheckUtils]: 34: Hoare triple {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,753 INFO L290 TraceCheckUtils]: 33: Hoare triple {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,753 INFO L290 TraceCheckUtils]: 32: Hoare triple {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,754 INFO L290 TraceCheckUtils]: 31: Hoare triple {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37356#(or (< (mod (* base2flt_~m 4) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,754 INFO L290 TraceCheckUtils]: 30: Hoare triple {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,754 INFO L290 TraceCheckUtils]: 29: Hoare triple {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,755 INFO L290 TraceCheckUtils]: 28: Hoare triple {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,757 INFO L290 TraceCheckUtils]: 26: Hoare triple {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37372#(or (< (mod (* base2flt_~m 8) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,757 INFO L290 TraceCheckUtils]: 25: Hoare triple {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,757 INFO L290 TraceCheckUtils]: 24: Hoare triple {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,758 INFO L290 TraceCheckUtils]: 23: Hoare triple {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,758 INFO L290 TraceCheckUtils]: 22: Hoare triple {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,759 INFO L290 TraceCheckUtils]: 21: Hoare triple {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37388#(or (< (mod (* 16 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,759 INFO L290 TraceCheckUtils]: 20: Hoare triple {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,759 INFO L290 TraceCheckUtils]: 19: Hoare triple {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,760 INFO L290 TraceCheckUtils]: 18: Hoare triple {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,760 INFO L290 TraceCheckUtils]: 17: Hoare triple {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,761 INFO L290 TraceCheckUtils]: 16: Hoare triple {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 >= -2147483648;~e := ~e - 1;~m := 2 * ~m; {37404#(or (< (mod (* 32 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,761 INFO L290 TraceCheckUtils]: 15: Hoare triple {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~e - 1 <= 2147483647; {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,761 INFO L290 TraceCheckUtils]: 14: Hoare triple {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(~e <= -128); {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,762 INFO L290 TraceCheckUtils]: 13: Hoare triple {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !false; {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,762 INFO L290 TraceCheckUtils]: 12: Hoare triple {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume ~m % 4294967296 < 16777216; {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,762 INFO L290 TraceCheckUtils]: 11: Hoare triple {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} assume !(0 == ~m % 4294967296); {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 10: Hoare triple {36828#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {37420#(or (< (mod (* 64 base2flt_~m) 4294967296) 16777216) (not (= |base2flt_#in~m| 1)))} is VALID [2022-02-21 03:10:37,763 INFO L272 TraceCheckUtils]: 9: Hoare triple {36828#true} call main_#t~ret23#1 := base2flt(1, 0); {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {36828#true} main_~zero~0#1 := main_#t~ret22#1;havoc main_#t~ret22#1; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {36828#true} {36828#true} #378#return; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 6: Hoare triple {36828#true} assume true; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 5: Hoare triple {36828#true} #res := ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 4: Hoare triple {36828#true} assume 0 == ~m % 4294967296;~__retres4~0 := 0; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 3: Hoare triple {36828#true} ~m := #in~m;~e := #in~e;havoc ~res~0;havoc ~__retres4~0; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L272 TraceCheckUtils]: 2: Hoare triple {36828#true} call main_#t~ret22#1 := base2flt(0, 0); {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 1: Hoare triple {36828#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_~sa~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_~sa~0#1;havoc main_~tmp~2#1;havoc main_~tmp___0~0#1;havoc main_~tmp___1~0#1;havoc main_~__retres16~0#1; {36828#true} is VALID [2022-02-21 03:10:37,763 INFO L290 TraceCheckUtils]: 0: Hoare triple {36828#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); {36828#true} is VALID [2022-02-21 03:10:37,764 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 4 proven. 85 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-21 03:10:37,764 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1068678592] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-21 03:10:37,764 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-21 03:10:37,764 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 26 [2022-02-21 03:10:37,764 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1991065329] [2022-02-21 03:10:37,764 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-21 03:10:37,765 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 6.115384615384615) internal successors, (159), 25 states have internal predecessors, (159), 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 91 [2022-02-21 03:10:37,767 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-21 03:10:37,767 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 6.115384615384615) internal successors, (159), 25 states have internal predecessors, (159), 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:37,911 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-21 03:10:37,911 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-02-21 03:10:37,911 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-21 03:10:37,911 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-02-21 03:10:37,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=193, Invalid=457, Unknown=0, NotChecked=0, Total=650 [2022-02-21 03:10:37,912 INFO L87 Difference]: Start difference. First operand 359 states and 445 transitions. Second operand has 26 states, 26 states have (on average 6.115384615384615) internal successors, (159), 25 states have internal predecessors, (159), 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)