./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/float-newlib/double_req_bl_1051.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-newlib/double_req_bl_1051.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 22112bf5fec517f156789ccf9f4e6d3a5bacd7e511b4f0e72a5035e85c02df36 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 16:36:25,507 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 16:36:25,508 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 16:36:25,552 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 16:36:25,553 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 16:36:25,556 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 16:36:25,557 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 16:36:25,559 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 16:36:25,561 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 16:36:25,565 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 16:36:25,566 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 16:36:25,567 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 16:36:25,567 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 16:36:25,569 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 16:36:25,570 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 16:36:25,572 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 16:36:25,573 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 16:36:25,573 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 16:36:25,575 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 16:36:25,577 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 16:36:25,579 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 16:36:25,580 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 16:36:25,581 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 16:36:25,582 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 16:36:25,584 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 16:36:25,585 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 16:36:25,585 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 16:36:25,586 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 16:36:25,586 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 16:36:25,587 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 16:36:25,587 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 16:36:25,588 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 16:36:25,589 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 16:36:25,590 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 16:36:25,590 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 16:36:25,591 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 16:36:25,591 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 16:36:25,591 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 16:36:25,591 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 16:36:25,592 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 16:36:25,592 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 16:36:25,594 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 16:36:25,618 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 16:36:25,619 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 16:36:25,619 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 16:36:25,619 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 16:36:25,620 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 16:36:25,620 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 16:36:25,621 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 16:36:25,621 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 16:36:25,621 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 16:36:25,621 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 16:36:25,622 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 16:36:25,622 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 16:36:25,622 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 16:36:25,622 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 16:36:25,622 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 16:36:25,623 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 16:36:25,623 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 16:36:25,623 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 16:36:25,623 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 16:36:25,623 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 16:36:25,623 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 16:36:25,624 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 16:36:25,624 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 16:36:25,624 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 16:36:25,624 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:25,624 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 16:36:25,624 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 16:36:25,625 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 16:36:25,626 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 16:36:25,626 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 16:36:25,626 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 16:36:25,626 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 16:36:25,626 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 16:36:25,626 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 22112bf5fec517f156789ccf9f4e6d3a5bacd7e511b4f0e72a5035e85c02df36 [2022-02-20 16:36:25,786 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 16:36:25,803 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 16:36:25,805 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 16:36:25,806 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 16:36:25,806 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 16:36:25,807 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-newlib/double_req_bl_1051.c [2022-02-20 16:36:25,864 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d908e5e06/7eb9c9590d0242adbb79921af4514074/FLAG11a16f329 [2022-02-20 16:36:26,226 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 16:36:26,226 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/float-newlib/double_req_bl_1051.c [2022-02-20 16:36:26,232 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d908e5e06/7eb9c9590d0242adbb79921af4514074/FLAG11a16f329 [2022-02-20 16:36:26,245 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d908e5e06/7eb9c9590d0242adbb79921af4514074 [2022-02-20 16:36:26,246 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 16:36:26,249 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 16:36:26,251 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:26,251 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 16:36:26,253 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 16:36:26,254 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,255 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5d6bb64e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26, skipping insertion in model container [2022-02-20 16:36:26,255 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,260 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 16:36:26,273 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:36:26,403 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/float-newlib/double_req_bl_1051.c[2106,2119] [2022-02-20 16:36:26,405 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:26,410 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 16:36:26,430 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/float-newlib/double_req_bl_1051.c[2106,2119] [2022-02-20 16:36:26,431 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:26,443 INFO L208 MainTranslator]: Completed translation [2022-02-20 16:36:26,444 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26 WrapperNode [2022-02-20 16:36:26,444 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:26,445 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:26,445 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 16:36:26,445 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 16:36:26,449 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,455 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,502 INFO L137 Inliner]: procedures = 16, calls = 19, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 100 [2022-02-20 16:36:26,502 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:26,502 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 16:36:26,503 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 16:36:26,503 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 16:36:26,508 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,508 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,511 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,511 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,529 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,532 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,544 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,546 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 16:36:26,547 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 16:36:26,551 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 16:36:26,551 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 16:36:26,552 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (1/1) ... [2022-02-20 16:36:26,557 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:26,565 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:36:26,577 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 16:36:26,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 16:36:26,608 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 16:36:26,608 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 16:36:26,608 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 16:36:26,608 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2022-02-20 16:36:26,608 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 16:36:26,609 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2022-02-20 16:36:26,609 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 16:36:26,609 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 16:36:26,609 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 16:36:26,610 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 16:36:26,673 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 16:36:26,674 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 16:36:27,051 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 16:36:27,056 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 16:36:27,057 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 16:36:27,058 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:27 BoogieIcfgContainer [2022-02-20 16:36:27,058 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 16:36:27,059 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 16:36:27,059 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 16:36:27,062 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 16:36:27,062 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 04:36:26" (1/3) ... [2022-02-20 16:36:27,063 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6009671e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:27, skipping insertion in model container [2022-02-20 16:36:27,064 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:26" (2/3) ... [2022-02-20 16:36:27,064 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6009671e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:27, skipping insertion in model container [2022-02-20 16:36:27,064 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:27" (3/3) ... [2022-02-20 16:36:27,065 INFO L111 eAbstractionObserver]: Analyzing ICFG double_req_bl_1051.c [2022-02-20 16:36:27,069 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 16:36:27,069 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 16:36:27,100 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 16:36:27,104 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 16:36:27,105 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 16:36:27,116 INFO L276 IsEmpty]: Start isEmpty. Operand has 34 states, 32 states have (on average 1.65625) internal successors, (53), 33 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,120 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 16:36:27,120 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:27,121 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:27,121 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:27,125 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:27,125 INFO L85 PathProgramCache]: Analyzing trace with hash -1930047821, now seen corresponding path program 1 times [2022-02-20 16:36:27,132 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:36:27,132 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1595231402] [2022-02-20 16:36:27,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:27,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:36:27,208 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:27,255 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(21, 2);call #Ultimate.allocInit(12, 3);~huge_floor~0 := 1.0E300; {37#true} is VALID [2022-02-20 16:36:27,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~someBinaryArithmeticDOUBLEoperation(0.0, 0.0);assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {37#true} is VALID [2022-02-20 16:36:27,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume !true; {38#false} is VALID [2022-02-20 16:36:27,267 INFO L290 TraceCheckUtils]: 3: Hoare triple {38#false} floor_double_~j0~0#1 := (if 0 == floor_double_~i0~0#1 / 1048576 then 0 else (if 1 == floor_double_~i0~0#1 / 1048576 then 1 else ~bitwiseAnd(floor_double_~i0~0#1 / 1048576, 2047))) - 1023; {38#false} is VALID [2022-02-20 16:36:27,267 INFO L290 TraceCheckUtils]: 4: Hoare triple {38#false} assume floor_double_~j0~0#1 < 20; {38#false} is VALID [2022-02-20 16:36:27,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#false} assume !(floor_double_~j0~0#1 < 0);floor_double_~i~0#1 := (if 31 == floor_double_~j0~0#1 || 63 == floor_double_~j0~0#1 then 0 else ~shiftRight(1048575, floor_double_~j0~0#1)); {38#false} is VALID [2022-02-20 16:36:27,271 INFO L290 TraceCheckUtils]: 6: Hoare triple {38#false} assume 0 == (if (1 == (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1)))) || 0 == (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))))) && 0 == floor_double_~i1~0#1 then (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1)))) else (if 0 == (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1)))) && (1 == floor_double_~i1~0#1 || 0 == floor_double_~i1~0#1) then floor_double_~i1~0#1 else (if (1 == (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1)))) && (1 == floor_double_~i1~0#1 || 0 == floor_double_~i1~0#1)) || ((1 == (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1)))) || 0 == (if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))))) && 1 == floor_double_~i1~0#1) then 1 else ~bitwiseOr((if 0 == floor_double_~i0~0#1 || 0 == floor_double_~i~0#1 then 0 else (if 1 == floor_double_~i~0#1 then (if 1 == floor_double_~i0~0#1 || 0 == floor_double_~i0~0#1 then floor_double_~i0~0#1 else (if floor_double_~i0~0#1 >= 0 then floor_double_~i0~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else (if 1 == floor_double_~i0~0#1 then (if 1 == floor_double_~i~0#1 || 0 == floor_double_~i~0#1 then floor_double_~i~0#1 else (if floor_double_~i~0#1 >= 0 then floor_double_~i~0#1 % 2 else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1))) else ~bitwiseAnd(floor_double_~i0~0#1, floor_double_~i~0#1)))), floor_double_~i1~0#1)))) % 4294967296;floor_double_#res#1 := floor_double_~x#1; {38#false} is VALID [2022-02-20 16:36:27,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#false} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if ~someBinaryDOUBLEComparisonOperation(isnan_double_~x#1, isnan_double_~x#1) then 1 else 0); {38#false} is VALID [2022-02-20 16:36:27,272 INFO L290 TraceCheckUtils]: 8: Hoare triple {38#false} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true;assume -2147483648 <= main_#t~ret8#1 && main_#t~ret8#1 <= 2147483647; {38#false} is VALID [2022-02-20 16:36:27,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume 0 == main_#t~ret8#1;havoc main_#t~ret8#1; {38#false} is VALID [2022-02-20 16:36:27,273 INFO L290 TraceCheckUtils]: 10: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-02-20 16:36:27,274 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:27,274 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 16:36:27,274 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1595231402] [2022-02-20 16:36:27,275 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1595231402] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:27,275 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:27,275 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 16:36:27,276 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [582990541] [2022-02-20 16:36:27,277 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:27,280 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 16:36:27,281 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:27,283 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:27,302 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 16:36:27,302 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 16:36:27,321 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 16:36:27,322 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:36:27,324 INFO L87 Difference]: Start difference. First operand has 34 states, 32 states have (on average 1.65625) internal successors, (53), 33 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:27,388 INFO L93 Difference]: Finished difference Result 66 states and 104 transitions. [2022-02-20 16:36:27,388 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 16:36:27,389 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 16:36:27,389 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:27,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:27,398 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:27,401 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 104 transitions. [2022-02-20 16:36:27,515 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:27,521 INFO L225 Difference]: With dead ends: 66 [2022-02-20 16:36:27,521 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:27,523 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-20 16:36:27,526 INFO L933 BasicCegarLoop]: 48 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, 48 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:27,526 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 16:36:27,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:27,546 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:27,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:27,548 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,549 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,550 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:27,553 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:27,553 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:27,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:27,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:27,554 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:27,555 INFO L87 Difference]: Start difference. First operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:27,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:27,557 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:27,558 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:27,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:27,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:27,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:27,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:27,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 45 transitions. [2022-02-20 16:36:27,563 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 45 transitions. Word has length 11 [2022-02-20 16:36:27,564 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:27,564 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 45 transitions. [2022-02-20 16:36:27,564 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:27,564 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:27,565 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:27,566 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:27,566 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:27,568 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 16:36:27,569 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:27,571 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:27,571 INFO L85 PathProgramCache]: Analyzing trace with hash -1310126896, now seen corresponding path program 1 times [2022-02-20 16:36:27,572 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:36:27,572 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [586074284] [2022-02-20 16:36:27,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:27,573 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:36:27,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 16:36:27,707 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 16:36:27,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 16:36:27,794 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 16:36:27,798 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 16:36:27,799 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 16:36:27,800 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 16:36:27,803 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1] [2022-02-20 16:36:27,805 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 16:36:27,829 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L21-2 has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L21-2 has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L21-1 has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L21-1 has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L21-3 has no Hoare annotation [2022-02-20 16:36:27,830 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 16:36:27,831 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 16:36:27,831 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2022-02-20 16:36:27,831 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2022-02-20 16:36:27,831 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-02-20 16:36:27,831 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-02-20 16:36:27,831 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-02-20 16:36:27,832 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L78 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L58 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L58 has no Hoare annotation [2022-02-20 16:36:27,833 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L72-2 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L82 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-02-20 16:36:27,834 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L43-2 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L59-1 has no Hoare annotation [2022-02-20 16:36:27,835 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-02-20 16:36:27,836 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-02-20 16:36:27,836 WARN L170 areAnnotationChecker]: L99 has no Hoare annotation [2022-02-20 16:36:27,836 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:27,836 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:27,836 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 16:36:27,836 WARN L170 areAnnotationChecker]: L64-2 has no Hoare annotation [2022-02-20 16:36:27,836 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-02-20 16:36:27,837 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 04:36:27 BoogieIcfgContainer [2022-02-20 16:36:27,838 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 16:36:27,839 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 16:36:27,839 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 16:36:27,839 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 16:36:27,840 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:27" (3/4) ... [2022-02-20 16:36:27,842 INFO L140 WitnessPrinter]: No result that supports witness generation found [2022-02-20 16:36:27,842 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 16:36:27,843 INFO L158 Benchmark]: Toolchain (without parser) took 1593.76ms. Allocated memory was 100.7MB in the beginning and 132.1MB in the end (delta: 31.5MB). Free memory was 69.7MB in the beginning and 81.7MB in the end (delta: -12.0MB). Peak memory consumption was 18.5MB. Max. memory is 16.1GB. [2022-02-20 16:36:27,844 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 83.9MB. Free memory was 38.6MB in the beginning and 38.5MB in the end (delta: 84.1kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 16:36:27,846 INFO L158 Benchmark]: CACSL2BoogieTranslator took 193.62ms. Allocated memory is still 100.7MB. Free memory was 69.4MB in the beginning and 73.8MB in the end (delta: -4.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 16:36:27,847 INFO L158 Benchmark]: Boogie Procedure Inliner took 57.32ms. Allocated memory is still 100.7MB. Free memory was 73.8MB in the beginning and 70.4MB in the end (delta: 3.5MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 16:36:27,849 INFO L158 Benchmark]: Boogie Preprocessor took 44.06ms. Allocated memory is still 100.7MB. Free memory was 70.4MB in the beginning and 67.9MB in the end (delta: 2.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:27,849 INFO L158 Benchmark]: RCFGBuilder took 510.92ms. Allocated memory is still 100.7MB. Free memory was 67.9MB in the beginning and 73.5MB in the end (delta: -5.6MB). Peak memory consumption was 22.6MB. Max. memory is 16.1GB. [2022-02-20 16:36:27,849 INFO L158 Benchmark]: TraceAbstraction took 779.61ms. Allocated memory was 100.7MB in the beginning and 132.1MB in the end (delta: 31.5MB). Free memory was 73.0MB in the beginning and 82.7MB in the end (delta: -9.7MB). Peak memory consumption was 21.7MB. Max. memory is 16.1GB. [2022-02-20 16:36:27,850 INFO L158 Benchmark]: Witness Printer took 3.01ms. Allocated memory is still 132.1MB. Free memory is still 81.7MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 16:36:27,852 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 83.9MB. Free memory was 38.6MB in the beginning and 38.5MB in the end (delta: 84.1kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 193.62ms. Allocated memory is still 100.7MB. Free memory was 69.4MB in the beginning and 73.8MB in the end (delta: -4.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 57.32ms. Allocated memory is still 100.7MB. Free memory was 73.8MB in the beginning and 70.4MB in the end (delta: 3.5MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 44.06ms. Allocated memory is still 100.7MB. Free memory was 70.4MB in the beginning and 67.9MB in the end (delta: 2.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 510.92ms. Allocated memory is still 100.7MB. Free memory was 67.9MB in the beginning and 73.5MB in the end (delta: -5.6MB). Peak memory consumption was 22.6MB. Max. memory is 16.1GB. * TraceAbstraction took 779.61ms. Allocated memory was 100.7MB in the beginning and 132.1MB in the end (delta: 31.5MB). Free memory was 73.0MB in the beginning and 82.7MB in the end (delta: -9.7MB). Peak memory consumption was 21.7MB. Max. memory is 16.1GB. * Witness Printer took 3.01ms. Allocated memory is still 132.1MB. Free memory is still 81.7MB. There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 95]: Unable to prove that call to reach_error is unreachable Unable to prove that call to reach_error is unreachable Reason: overapproximation of shiftRight at line 39, overapproximation of bitwiseOr at line 40, overapproximation of someBinaryArithmeticDOUBLEoperation at line 90, overapproximation of bitwiseAnd at line 40, overapproximation of someBinaryDOUBLEComparisonOperation at line 82. Possible FailurePath: [L16] static const double huge_floor = 1.0e300; VAL [huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000] [L90] double x = 0.0 / 0.0; [L91] CALL, EXPR floor_double(x) [L19] __int32_t i0, i1, j0; [L20] __uint32_t i, j; VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] [L22] ieee_double_shape_type ew_u; [L23] ew_u.value = (x) [L24] EXPR ew_u.parts.msw [L24] (i0) = ew_u.parts.msw [L25] EXPR ew_u.parts.lsw [L25] (i1) = ew_u.parts.lsw [L27] j0 = ((i0 >> 20) & 0x7ff) - 0x3ff VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i0=-1048576, i1=2147483647, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] [L28] COND TRUE j0 < 20 VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i0=-1048576, i1=2147483647, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] [L29] COND FALSE !(j0 < 0) [L39] i = (0x000fffff) >> j0 VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i=1, i0=-1048576, i1=2147483647, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] [L40] COND TRUE ((i0 & i) | i1) == 0 [L41] return x; VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, \result=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i=1, i0=-1048576, i1=2147483647, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] [L91] RET, EXPR floor_double(x) [L91] double res = floor_double(x); [L94] CALL, EXPR isnan_double(res) [L82] return x != x; VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, \result=0, huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] [L94] RET, EXPR isnan_double(res) [L94] COND TRUE !isnan_double(res) [L95] reach_error() VAL [huge_floor=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, res=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001] - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 34 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.7s, OverallIterations: 2, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 48 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 48 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=34occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 23 NumberOfCodeBlocks, 23 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 10 ConstructedInterpolants, 0 QuantifiedInterpolants, 10 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2022-02-20 16:36:27,886 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-newlib/double_req_bl_1051.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 22112bf5fec517f156789ccf9f4e6d3a5bacd7e511b4f0e72a5035e85c02df36 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 16:36:29,505 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 16:36:29,507 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 16:36:29,536 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 16:36:29,537 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 16:36:29,540 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 16:36:29,541 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 16:36:29,545 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 16:36:29,546 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 16:36:29,550 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 16:36:29,557 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 16:36:29,558 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 16:36:29,559 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 16:36:29,561 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 16:36:29,562 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 16:36:29,566 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 16:36:29,566 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 16:36:29,567 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 16:36:29,569 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 16:36:29,576 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 16:36:29,577 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 16:36:29,578 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 16:36:29,578 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 16:36:29,580 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 16:36:29,585 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 16:36:29,585 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 16:36:29,585 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 16:36:29,587 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 16:36:29,587 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 16:36:29,588 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 16:36:29,588 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 16:36:29,588 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 16:36:29,589 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 16:36:29,590 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 16:36:29,591 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 16:36:29,591 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 16:36:29,592 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 16:36:29,592 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 16:36:29,592 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 16:36:29,593 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 16:36:29,594 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 16:36:29,594 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2022-02-20 16:36:29,623 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 16:36:29,624 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 16:36:29,625 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 16:36:29,625 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 16:36:29,626 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 16:36:29,626 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 16:36:29,627 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 16:36:29,627 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 16:36:29,627 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 16:36:29,627 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 16:36:29,628 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 16:36:29,628 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 16:36:29,628 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 16:36:29,629 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 16:36:29,629 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 16:36:29,629 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 16:36:29,629 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 16:36:29,629 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 16:36:29,629 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 16:36:29,630 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 16:36:29,630 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 16:36:29,630 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 16:36:29,630 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 16:36:29,630 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 16:36:29,631 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 16:36:29,631 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 16:36:29,631 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:29,631 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 16:36:29,631 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 16:36:29,631 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 16:36:29,632 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 16:36:29,632 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 16:36:29,632 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 16:36:29,632 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 16:36:29,632 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 16:36:29,633 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 16:36:29,633 INFO L138 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 22112bf5fec517f156789ccf9f4e6d3a5bacd7e511b4f0e72a5035e85c02df36 [2022-02-20 16:36:29,881 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 16:36:29,900 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 16:36:29,902 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 16:36:29,903 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 16:36:29,903 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 16:36:29,904 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-newlib/double_req_bl_1051.c [2022-02-20 16:36:29,950 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/407fbecc1/36d4f774fcb540829e1429c012529ca2/FLAGeb87df32e [2022-02-20 16:36:30,277 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 16:36:30,277 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/float-newlib/double_req_bl_1051.c [2022-02-20 16:36:30,282 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/407fbecc1/36d4f774fcb540829e1429c012529ca2/FLAGeb87df32e [2022-02-20 16:36:30,715 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/407fbecc1/36d4f774fcb540829e1429c012529ca2 [2022-02-20 16:36:30,717 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 16:36:30,718 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 16:36:30,720 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:30,721 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 16:36:30,723 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 16:36:30,724 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,724 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@53f89edb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30, skipping insertion in model container [2022-02-20 16:36:30,725 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,730 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 16:36:30,741 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:36:30,861 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/float-newlib/double_req_bl_1051.c[2106,2119] [2022-02-20 16:36:30,863 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:30,879 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 16:36:30,908 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/float-newlib/double_req_bl_1051.c[2106,2119] [2022-02-20 16:36:30,915 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:30,928 INFO L208 MainTranslator]: Completed translation [2022-02-20 16:36:30,928 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30 WrapperNode [2022-02-20 16:36:30,928 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:30,929 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:30,929 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 16:36:30,930 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 16:36:30,934 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,941 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,959 INFO L137 Inliner]: procedures = 19, calls = 19, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 100 [2022-02-20 16:36:30,962 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:30,963 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 16:36:30,963 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 16:36:30,963 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 16:36:30,969 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,969 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,979 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,979 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,987 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,990 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,992 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:30,994 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 16:36:30,994 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 16:36:30,994 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 16:36:30,995 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 16:36:30,995 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (1/1) ... [2022-02-20 16:36:31,005 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:31,013 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:36:31,021 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 16:36:31,026 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 16:36:31,046 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 16:36:31,046 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2022-02-20 16:36:31,047 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2022-02-20 16:36:31,047 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 16:36:31,047 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 16:36:31,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 16:36:31,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 16:36:31,047 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 16:36:31,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 16:36:31,048 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 16:36:31,101 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 16:36:31,102 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 16:36:32,260 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 16:36:32,264 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 16:36:32,265 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 16:36:32,266 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:32 BoogieIcfgContainer [2022-02-20 16:36:32,266 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 16:36:32,267 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 16:36:32,267 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 16:36:32,268 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 16:36:32,269 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 04:36:30" (1/3) ... [2022-02-20 16:36:32,269 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25fc7eec and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:32, skipping insertion in model container [2022-02-20 16:36:32,269 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:30" (2/3) ... [2022-02-20 16:36:32,269 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25fc7eec and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:32, skipping insertion in model container [2022-02-20 16:36:32,269 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:32" (3/3) ... [2022-02-20 16:36:32,270 INFO L111 eAbstractionObserver]: Analyzing ICFG double_req_bl_1051.c [2022-02-20 16:36:32,281 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 16:36:32,281 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 16:36:32,308 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 16:36:32,313 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 16:36:32,313 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 16:36:32,333 INFO L276 IsEmpty]: Start isEmpty. Operand has 34 states, 32 states have (on average 1.65625) internal successors, (53), 33 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:32,337 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 16:36:32,337 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:32,338 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:32,338 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:32,346 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:32,346 INFO L85 PathProgramCache]: Analyzing trace with hash -1930047821, now seen corresponding path program 1 times [2022-02-20 16:36:32,356 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:32,357 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2028261398] [2022-02-20 16:36:32,357 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:32,358 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:32,358 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:32,360 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:36:32,361 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2022-02-20 16:36:32,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:32,445 INFO L263 TraceCheckSpWp]: Trace formula consists of 33 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 16:36:32,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:32,454 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:32,533 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(21bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~huge_floor~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {37#true} is VALID [2022-02-20 16:36:32,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~DOUBLE(), ~Pluszero~DOUBLE());assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {37#true} is VALID [2022-02-20 16:36:32,535 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume !true; {38#false} is VALID [2022-02-20 16:36:32,535 INFO L290 TraceCheckUtils]: 3: Hoare triple {38#false} floor_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(floor_double_~i0~0#1, 20bv32)), 1023bv32); {38#false} is VALID [2022-02-20 16:36:32,535 INFO L290 TraceCheckUtils]: 4: Hoare triple {38#false} assume ~bvslt32(floor_double_~j0~0#1, 20bv32); {38#false} is VALID [2022-02-20 16:36:32,535 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#false} assume !~bvslt32(floor_double_~j0~0#1, 0bv32);floor_double_~i~0#1 := ~bvashr32(1048575bv32, floor_double_~j0~0#1); {38#false} is VALID [2022-02-20 16:36:32,536 INFO L290 TraceCheckUtils]: 6: Hoare triple {38#false} assume 0bv32 == ~bvor32(~bvand32(floor_double_~i0~0#1, floor_double_~i~0#1), floor_double_~i1~0#1);floor_double_#res#1 := floor_double_~x#1; {38#false} is VALID [2022-02-20 16:36:32,536 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#false} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if !~fp.eq~DOUBLE(isnan_double_~x#1, isnan_double_~x#1) then 1bv32 else 0bv32); {38#false} is VALID [2022-02-20 16:36:32,536 INFO L290 TraceCheckUtils]: 8: Hoare triple {38#false} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true; {38#false} is VALID [2022-02-20 16:36:32,536 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume 0bv32 == main_#t~ret8#1;havoc main_#t~ret8#1; {38#false} is VALID [2022-02-20 16:36:32,537 INFO L290 TraceCheckUtils]: 10: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-02-20 16:36:32,538 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:32,538 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:32,538 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:32,539 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2028261398] [2022-02-20 16:36:32,539 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2028261398] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:32,539 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:32,539 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 16:36:32,541 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1007873278] [2022-02-20 16:36:32,541 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:32,546 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 16:36:32,547 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:32,550 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:32,566 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:32,567 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 16:36:32,567 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:32,583 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 16:36:32,584 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:36:32,586 INFO L87 Difference]: Start difference. First operand has 34 states, 32 states have (on average 1.65625) internal successors, (53), 33 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:33,417 INFO L93 Difference]: Finished difference Result 66 states and 104 transitions. [2022-02-20 16:36:33,417 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 16:36:33,417 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 16:36:33,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:33,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:33,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:33,427 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 104 transitions. [2022-02-20 16:36:33,803 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:33,809 INFO L225 Difference]: With dead ends: 66 [2022-02-20 16:36:33,809 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:33,811 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:36:33,813 INFO L933 BasicCegarLoop]: 48 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, 48 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:33,814 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 16:36:33,823 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:33,830 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:33,830 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:33,830 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,831 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,831 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:33,833 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:33,834 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:33,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:33,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:33,834 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:33,835 INFO L87 Difference]: Start difference. First operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:33,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:33,837 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:33,837 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:33,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:33,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:33,837 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:33,838 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:33,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 30 states have (on average 1.5) internal successors, (45), 30 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,839 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 45 transitions. [2022-02-20 16:36:33,840 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 45 transitions. Word has length 11 [2022-02-20 16:36:33,840 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:33,840 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 45 transitions. [2022-02-20 16:36:33,841 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:33,841 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:33,841 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:33,841 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:33,841 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:33,852 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 16:36:34,050 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:36:34,051 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:34,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:34,053 INFO L85 PathProgramCache]: Analyzing trace with hash -1310126896, now seen corresponding path program 1 times [2022-02-20 16:36:34,054 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:34,054 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1219802057] [2022-02-20 16:36:34,054 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:34,054 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:34,054 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:34,055 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:36:34,056 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2022-02-20 16:36:34,106 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:34,108 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 16:36:34,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:34,117 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:34,340 INFO L290 TraceCheckUtils]: 0: Hoare triple {241#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(21bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~huge_floor~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {241#true} is VALID [2022-02-20 16:36:34,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {241#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~DOUBLE(), ~Pluszero~DOUBLE());assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:34,343 INFO L290 TraceCheckUtils]: 2: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} call floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(floor_double_~x#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 8bv32);call floor_double_#t~mem4#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, ~bvadd32(4bv32, floor_double_~#ew_u~0#1.offset), 4bv32);floor_double_~i0~0#1 := floor_double_#t~mem4#1;havoc floor_double_#t~mem4#1;call floor_double_#t~mem5#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 4bv32);floor_double_~i1~0#1 := floor_double_#t~mem5#1;havoc floor_double_#t~mem5#1;call ULTIMATE.dealloc(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset);havoc floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset; {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:34,344 INFO L290 TraceCheckUtils]: 3: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} goto; {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:34,345 INFO L290 TraceCheckUtils]: 4: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} floor_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(floor_double_~i0~0#1, 20bv32)), 1023bv32); {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:34,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} assume ~bvslt32(floor_double_~j0~0#1, 20bv32); {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:34,346 INFO L290 TraceCheckUtils]: 6: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} assume !~bvslt32(floor_double_~j0~0#1, 0bv32);floor_double_~i~0#1 := ~bvashr32(1048575bv32, floor_double_~j0~0#1); {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:34,346 INFO L290 TraceCheckUtils]: 7: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} assume 0bv32 == ~bvor32(~bvand32(floor_double_~i0~0#1, floor_double_~i~0#1), floor_double_~i1~0#1);floor_double_#res#1 := floor_double_~x#1; {268#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_#res#1|))} is VALID [2022-02-20 16:36:34,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {268#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_#res#1|))} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if !~fp.eq~DOUBLE(isnan_double_~x#1, isnan_double_~x#1) then 1bv32 else 0bv32); {272#(= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|)} is VALID [2022-02-20 16:36:34,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {272#(= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|)} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true; {276#(= (_ bv1 32) |ULTIMATE.start_main_#t~ret8#1|)} is VALID [2022-02-20 16:36:34,352 INFO L290 TraceCheckUtils]: 10: Hoare triple {276#(= (_ bv1 32) |ULTIMATE.start_main_#t~ret8#1|)} assume 0bv32 == main_#t~ret8#1;havoc main_#t~ret8#1; {242#false} is VALID [2022-02-20 16:36:34,352 INFO L290 TraceCheckUtils]: 11: Hoare triple {242#false} assume !false; {242#false} is VALID [2022-02-20 16:36:34,352 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:34,352 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:34,352 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:34,353 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1219802057] [2022-02-20 16:36:34,353 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1219802057] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:34,353 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:34,353 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 16:36:34,353 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1385890876] [2022-02-20 16:36:34,353 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:34,354 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 16:36:34,354 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:34,354 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,374 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:34,375 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 16:36:34,375 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:34,375 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 16:36:34,375 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 16:36:34,376 INFO L87 Difference]: Start difference. First operand 31 states and 45 transitions. Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:34,651 INFO L93 Difference]: Finished difference Result 36 states and 49 transitions. [2022-02-20 16:36:34,651 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 16:36:34,652 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 16:36:34,652 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:34,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-02-20 16:36:34,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-02-20 16:36:34,654 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2022-02-20 16:36:34,852 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:34,853 INFO L225 Difference]: With dead ends: 36 [2022-02-20 16:36:34,853 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:34,853 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 16:36:34,854 INFO L933 BasicCegarLoop]: 32 mSDtfsCounter, 7 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 18 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:34,854 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 143 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 5 Invalid, 0 Unknown, 18 Unchecked, 0.0s Time] [2022-02-20 16:36:34,855 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:34,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:34,857 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:34,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.4666666666666666) internal successors, (44), 30 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,857 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.4666666666666666) internal successors, (44), 30 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,858 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.4666666666666666) internal successors, (44), 30 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:34,859 INFO L93 Difference]: Finished difference Result 31 states and 44 transitions. [2022-02-20 16:36:34,859 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 44 transitions. [2022-02-20 16:36:34,860 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:34,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:34,860 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 30 states have (on average 1.4666666666666666) internal successors, (44), 30 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:34,860 INFO L87 Difference]: Start difference. First operand has 31 states, 30 states have (on average 1.4666666666666666) internal successors, (44), 30 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:34,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:34,862 INFO L93 Difference]: Finished difference Result 31 states and 44 transitions. [2022-02-20 16:36:34,862 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 44 transitions. [2022-02-20 16:36:34,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:34,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:34,862 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:34,862 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:34,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 30 states have (on average 1.4666666666666666) internal successors, (44), 30 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 44 transitions. [2022-02-20 16:36:34,864 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 44 transitions. Word has length 12 [2022-02-20 16:36:34,864 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:34,864 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 44 transitions. [2022-02-20 16:36:34,864 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:34,864 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 44 transitions. [2022-02-20 16:36:34,865 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:34,865 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:34,865 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:34,878 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2022-02-20 16:36:35,071 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:36:35,072 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:35,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:35,073 INFO L85 PathProgramCache]: Analyzing trace with hash -1803097798, now seen corresponding path program 1 times [2022-02-20 16:36:35,073 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:35,073 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [816650221] [2022-02-20 16:36:35,073 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:35,073 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:35,073 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:35,074 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:36:35,076 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2022-02-20 16:36:35,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:35,145 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 16:36:35,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:35,153 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:35,345 INFO L290 TraceCheckUtils]: 0: Hoare triple {421#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(21bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~huge_floor~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {421#true} is VALID [2022-02-20 16:36:35,348 INFO L290 TraceCheckUtils]: 1: Hoare triple {421#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~DOUBLE(), ~Pluszero~DOUBLE());assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:35,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} call floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(floor_double_~x#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 8bv32);call floor_double_#t~mem4#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, ~bvadd32(4bv32, floor_double_~#ew_u~0#1.offset), 4bv32);floor_double_~i0~0#1 := floor_double_#t~mem4#1;havoc floor_double_#t~mem4#1;call floor_double_#t~mem5#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 4bv32);floor_double_~i1~0#1 := floor_double_#t~mem5#1;havoc floor_double_#t~mem5#1;call ULTIMATE.dealloc(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset);havoc floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset; {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:35,349 INFO L290 TraceCheckUtils]: 3: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} goto; {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:35,350 INFO L290 TraceCheckUtils]: 4: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} floor_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(floor_double_~i0~0#1, 20bv32)), 1023bv32); {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:35,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} assume !~bvslt32(floor_double_~j0~0#1, 20bv32); {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:35,351 INFO L290 TraceCheckUtils]: 6: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} assume !~bvsgt32(floor_double_~j0~0#1, 51bv32);floor_double_~i~0#1 := ~bvlshr32(4294967295bv32, ~bvsub32(floor_double_~j0~0#1, 20bv32)); {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:35,352 INFO L290 TraceCheckUtils]: 7: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} assume 0bv32 == ~bvand32(floor_double_~i1~0#1, floor_double_~i~0#1);floor_double_#res#1 := floor_double_~x#1; {448#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_#res#1|))} is VALID [2022-02-20 16:36:35,356 INFO L290 TraceCheckUtils]: 8: Hoare triple {448#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_#res#1|))} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if !~fp.eq~DOUBLE(isnan_double_~x#1, isnan_double_~x#1) then 1bv32 else 0bv32); {452#(= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|)} is VALID [2022-02-20 16:36:35,356 INFO L290 TraceCheckUtils]: 9: Hoare triple {452#(= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|)} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true; {456#(= (_ bv1 32) |ULTIMATE.start_main_#t~ret8#1|)} is VALID [2022-02-20 16:36:35,359 INFO L290 TraceCheckUtils]: 10: Hoare triple {456#(= (_ bv1 32) |ULTIMATE.start_main_#t~ret8#1|)} assume 0bv32 == main_#t~ret8#1;havoc main_#t~ret8#1; {422#false} is VALID [2022-02-20 16:36:35,359 INFO L290 TraceCheckUtils]: 11: Hoare triple {422#false} assume !false; {422#false} is VALID [2022-02-20 16:36:35,359 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:35,359 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:35,360 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:35,360 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [816650221] [2022-02-20 16:36:35,360 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [816650221] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:35,360 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:35,360 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 16:36:35,360 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1665038506] [2022-02-20 16:36:35,360 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:35,361 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 16:36:35,361 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:35,361 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,388 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:35,389 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 16:36:35,389 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:35,389 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 16:36:35,389 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 16:36:35,390 INFO L87 Difference]: Start difference. First operand 31 states and 44 transitions. Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:35,710 INFO L93 Difference]: Finished difference Result 36 states and 48 transitions. [2022-02-20 16:36:35,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 16:36:35,710 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 16:36:35,710 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:35,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-02-20 16:36:35,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-02-20 16:36:35,716 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-02-20 16:36:35,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:35,915 INFO L225 Difference]: With dead ends: 36 [2022-02-20 16:36:35,915 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:35,915 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 16:36:35,916 INFO L933 BasicCegarLoop]: 32 mSDtfsCounter, 7 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 17 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:35,916 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 145 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 5 Invalid, 0 Unknown, 17 Unchecked, 0.0s Time] [2022-02-20 16:36:35,917 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:35,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:35,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:35,919 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.4333333333333333) internal successors, (43), 30 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,919 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.4333333333333333) internal successors, (43), 30 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,919 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 30 states have (on average 1.4333333333333333) internal successors, (43), 30 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:35,920 INFO L93 Difference]: Finished difference Result 31 states and 43 transitions. [2022-02-20 16:36:35,920 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 43 transitions. [2022-02-20 16:36:35,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:35,921 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:35,921 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 30 states have (on average 1.4333333333333333) internal successors, (43), 30 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:35,921 INFO L87 Difference]: Start difference. First operand has 31 states, 30 states have (on average 1.4333333333333333) internal successors, (43), 30 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 16:36:35,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:35,922 INFO L93 Difference]: Finished difference Result 31 states and 43 transitions. [2022-02-20 16:36:35,922 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 43 transitions. [2022-02-20 16:36:35,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:35,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:35,923 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:35,923 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:35,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 30 states have (on average 1.4333333333333333) internal successors, (43), 30 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 43 transitions. [2022-02-20 16:36:35,924 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 43 transitions. Word has length 12 [2022-02-20 16:36:35,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:35,924 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 43 transitions. [2022-02-20 16:36:35,924 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:35,924 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 43 transitions. [2022-02-20 16:36:35,925 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:35,925 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:35,928 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:35,939 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2022-02-20 16:36:36,135 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:36:36,136 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:36,136 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:36,136 INFO L85 PathProgramCache]: Analyzing trace with hash -2009966502, now seen corresponding path program 1 times [2022-02-20 16:36:36,137 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:36,137 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [570311439] [2022-02-20 16:36:36,137 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:36,137 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:36,137 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:36,138 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:36:36,139 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2022-02-20 16:36:36,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:36,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 16:36:36,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:36,224 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:36,357 INFO L290 TraceCheckUtils]: 0: Hoare triple {601#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(21bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~huge_floor~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {606#(= currentRoundingMode roundNearestTiesToEven)} is VALID [2022-02-20 16:36:36,357 INFO L290 TraceCheckUtils]: 1: Hoare triple {606#(= currentRoundingMode roundNearestTiesToEven)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~DOUBLE(), ~Pluszero~DOUBLE());assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:36,358 INFO L290 TraceCheckUtils]: 2: Hoare triple {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} call floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(floor_double_~x#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 8bv32);call floor_double_#t~mem4#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, ~bvadd32(4bv32, floor_double_~#ew_u~0#1.offset), 4bv32);floor_double_~i0~0#1 := floor_double_#t~mem4#1;havoc floor_double_#t~mem4#1;call floor_double_#t~mem5#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 4bv32);floor_double_~i1~0#1 := floor_double_#t~mem5#1;havoc floor_double_#t~mem5#1;call ULTIMATE.dealloc(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset);havoc floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset; {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:36,358 INFO L290 TraceCheckUtils]: 3: Hoare triple {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} goto; {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:36,359 INFO L290 TraceCheckUtils]: 4: Hoare triple {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} floor_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(floor_double_~i0~0#1, 20bv32)), 1023bv32); {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:36,359 INFO L290 TraceCheckUtils]: 5: Hoare triple {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} assume !~bvslt32(floor_double_~j0~0#1, 20bv32); {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:36,360 INFO L290 TraceCheckUtils]: 6: Hoare triple {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} assume ~bvsgt32(floor_double_~j0~0#1, 51bv32); {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:36,360 INFO L290 TraceCheckUtils]: 7: Hoare triple {610#(and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven))} assume 1024bv32 == floor_double_~j0~0#1;floor_double_#res#1 := ~fp.add~DOUBLE(currentRoundingMode, floor_double_~x#1, floor_double_~x#1); {629#(= (fp.add roundNearestTiesToEven (fp.div roundNearestTiesToEven (_ +zero 11 53) (_ +zero 11 53)) (fp.div roundNearestTiesToEven (_ +zero 11 53) (_ +zero 11 53))) |ULTIMATE.start_floor_double_#res#1|)} is VALID [2022-02-20 16:36:36,361 INFO L290 TraceCheckUtils]: 8: Hoare triple {629#(= (fp.add roundNearestTiesToEven (fp.div roundNearestTiesToEven (_ +zero 11 53) (_ +zero 11 53)) (fp.div roundNearestTiesToEven (_ +zero 11 53) (_ +zero 11 53))) |ULTIMATE.start_floor_double_#res#1|)} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if !~fp.eq~DOUBLE(isnan_double_~x#1, isnan_double_~x#1) then 1bv32 else 0bv32); {633#(= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|)} is VALID [2022-02-20 16:36:36,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {633#(= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|)} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true; {637#(= (_ bv1 32) |ULTIMATE.start_main_#t~ret8#1|)} is VALID [2022-02-20 16:36:36,361 INFO L290 TraceCheckUtils]: 10: Hoare triple {637#(= (_ bv1 32) |ULTIMATE.start_main_#t~ret8#1|)} assume 0bv32 == main_#t~ret8#1;havoc main_#t~ret8#1; {602#false} is VALID [2022-02-20 16:36:36,362 INFO L290 TraceCheckUtils]: 11: Hoare triple {602#false} assume !false; {602#false} is VALID [2022-02-20 16:36:36,362 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:36,362 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:36,362 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:36,362 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [570311439] [2022-02-20 16:36:36,362 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [570311439] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:36,363 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:36,363 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 16:36:36,363 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [555518493] [2022-02-20 16:36:36,363 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:36,363 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 16:36:36,364 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:36,364 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:36,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:36,400 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 16:36:36,400 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:36,401 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 16:36:36,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 16:36:36,401 INFO L87 Difference]: Start difference. First operand 31 states and 43 transitions. Second operand has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:37,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:37,821 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-02-20 16:36:37,821 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 16:36:37,821 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 16:36:37,821 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:37,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:37,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 53 transitions. [2022-02-20 16:36:37,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:37,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 53 transitions. [2022-02-20 16:36:37,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 53 transitions. [2022-02-20 16:36:38,006 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:38,007 INFO L225 Difference]: With dead ends: 42 [2022-02-20 16:36:38,007 INFO L226 Difference]: Without dead ends: 21 [2022-02-20 16:36:38,007 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-02-20 16:36:38,008 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 29 mSDsluCounter, 52 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 68 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:38,008 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 68 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-02-20 16:36:38,009 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-02-20 16:36:38,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 21. [2022-02-20 16:36:38,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:38,010 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand has 21 states, 20 states have (on average 1.1) internal successors, (22), 20 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:38,010 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand has 21 states, 20 states have (on average 1.1) internal successors, (22), 20 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:38,011 INFO L87 Difference]: Start difference. First operand 21 states. Second operand has 21 states, 20 states have (on average 1.1) internal successors, (22), 20 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:38,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:38,011 INFO L93 Difference]: Finished difference Result 21 states and 22 transitions. [2022-02-20 16:36:38,011 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 22 transitions. [2022-02-20 16:36:38,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:38,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:38,012 INFO L74 IsIncluded]: Start isIncluded. First operand has 21 states, 20 states have (on average 1.1) internal successors, (22), 20 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 21 states. [2022-02-20 16:36:38,012 INFO L87 Difference]: Start difference. First operand has 21 states, 20 states have (on average 1.1) internal successors, (22), 20 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 21 states. [2022-02-20 16:36:38,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:38,013 INFO L93 Difference]: Finished difference Result 21 states and 22 transitions. [2022-02-20 16:36:38,013 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 22 transitions. [2022-02-20 16:36:38,013 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:38,013 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:38,013 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:38,013 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:38,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 1.1) internal successors, (22), 20 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:38,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 22 transitions. [2022-02-20 16:36:38,014 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 22 transitions. Word has length 12 [2022-02-20 16:36:38,014 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:38,014 INFO L470 AbstractCegarLoop]: Abstraction has 21 states and 22 transitions. [2022-02-20 16:36:38,017 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:38,017 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 22 transitions. [2022-02-20 16:36:38,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 16:36:38,017 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:38,017 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:38,027 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Ended with exit code 0 [2022-02-20 16:36:38,226 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:36:38,226 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:38,227 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:38,227 INFO L85 PathProgramCache]: Analyzing trace with hash -649399050, now seen corresponding path program 1 times [2022-02-20 16:36:38,227 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:38,228 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [800118086] [2022-02-20 16:36:38,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:38,228 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:38,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:38,229 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:36:38,230 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Waiting until timeout for monitored process [2022-02-20 16:36:38,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:38,346 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 16:36:38,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:38,355 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:38,535 INFO L290 TraceCheckUtils]: 0: Hoare triple {764#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(21bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~huge_floor~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {764#true} is VALID [2022-02-20 16:36:38,538 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~DOUBLE(), ~Pluszero~DOUBLE());assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {772#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:38,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {772#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} call floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(floor_double_~x#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 8bv32);call floor_double_#t~mem4#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, ~bvadd32(4bv32, floor_double_~#ew_u~0#1.offset), 4bv32);floor_double_~i0~0#1 := floor_double_#t~mem4#1;havoc floor_double_#t~mem4#1;call floor_double_#t~mem5#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 4bv32);floor_double_~i1~0#1 := floor_double_#t~mem5#1;havoc floor_double_#t~mem5#1;call ULTIMATE.dealloc(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset);havoc floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset; {776#(exists ((|v_skolemized_q#valueAsBitvector_7| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_7|)) (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= |ULTIMATE.start_floor_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} is VALID [2022-02-20 16:36:38,545 INFO L290 TraceCheckUtils]: 3: Hoare triple {776#(exists ((|v_skolemized_q#valueAsBitvector_7| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_7|)) (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= |ULTIMATE.start_floor_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} goto; {776#(exists ((|v_skolemized_q#valueAsBitvector_7| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_7|)) (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= |ULTIMATE.start_floor_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} is VALID [2022-02-20 16:36:38,553 INFO L290 TraceCheckUtils]: 4: Hoare triple {776#(exists ((|v_skolemized_q#valueAsBitvector_7| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_7|)) (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= |ULTIMATE.start_floor_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} floor_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(floor_double_~i0~0#1, 20bv32)), 1023bv32); {783#(exists ((|v_skolemized_q#valueAsBitvector_7| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_7|)) (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= (bvadd (bvand (_ bv2047 32) (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|) (_ bv20 32))) (_ bv4294966273 32)) |ULTIMATE.start_floor_double_~j0~0#1|)))} is VALID [2022-02-20 16:36:38,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {783#(exists ((|v_skolemized_q#valueAsBitvector_7| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_7|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_7|)) (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= (bvadd (bvand (_ bv2047 32) (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|) (_ bv20 32))) (_ bv4294966273 32)) |ULTIMATE.start_floor_double_~j0~0#1|)))} assume ~bvslt32(floor_double_~j0~0#1, 20bv32); {765#false} is VALID [2022-02-20 16:36:38,556 INFO L290 TraceCheckUtils]: 6: Hoare triple {765#false} assume ~bvslt32(floor_double_~j0~0#1, 0bv32); {765#false} is VALID [2022-02-20 16:36:38,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {765#false} assume !~fp.gt~DOUBLE(~fp.add~DOUBLE(currentRoundingMode, ~huge_floor~0, floor_double_~x#1), ~Pluszero~DOUBLE()); {765#false} is VALID [2022-02-20 16:36:38,556 INFO L290 TraceCheckUtils]: 8: Hoare triple {765#false} call floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intINTTYPE4(floor_double_~i0~0#1, floor_double_~#iw_u~0#1.base, ~bvadd32(4bv32, floor_double_~#iw_u~0#1.offset), 4bv32);call write~intINTTYPE4(floor_double_~i1~0#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, 4bv32);call floor_double_#t~mem6#1 := read~intFLOATTYPE8(floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, 8bv32);floor_double_~x#1 := floor_double_#t~mem6#1;havoc floor_double_#t~mem6#1;call ULTIMATE.dealloc(floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset);havoc floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset; {765#false} is VALID [2022-02-20 16:36:38,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {765#false} goto; {765#false} is VALID [2022-02-20 16:36:38,556 INFO L290 TraceCheckUtils]: 10: Hoare triple {765#false} floor_double_#res#1 := floor_double_~x#1; {765#false} is VALID [2022-02-20 16:36:38,557 INFO L290 TraceCheckUtils]: 11: Hoare triple {765#false} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if !~fp.eq~DOUBLE(isnan_double_~x#1, isnan_double_~x#1) then 1bv32 else 0bv32); {765#false} is VALID [2022-02-20 16:36:38,557 INFO L290 TraceCheckUtils]: 12: Hoare triple {765#false} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true; {765#false} is VALID [2022-02-20 16:36:38,557 INFO L290 TraceCheckUtils]: 13: Hoare triple {765#false} assume 0bv32 == main_#t~ret8#1;havoc main_#t~ret8#1; {765#false} is VALID [2022-02-20 16:36:38,557 INFO L290 TraceCheckUtils]: 14: Hoare triple {765#false} assume !false; {765#false} is VALID [2022-02-20 16:36:38,557 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:38,557 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:38,557 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:38,557 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [800118086] [2022-02-20 16:36:38,558 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [800118086] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:38,558 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:38,558 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 16:36:38,558 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2058847185] [2022-02-20 16:36:38,558 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:38,558 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 16:36:38,559 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:38,559 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:38,599 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-20 16:36:38,599 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 16:36:38,599 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:38,600 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 16:36:38,600 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 16:36:38,600 INFO L87 Difference]: Start difference. First operand 21 states and 22 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:39,242 INFO L93 Difference]: Finished difference Result 29 states and 29 transitions. [2022-02-20 16:36:39,242 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 16:36:39,242 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 16:36:39,242 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:39,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-02-20 16:36:39,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-02-20 16:36:39,243 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 29 transitions. [2022-02-20 16:36:39,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:39,338 INFO L225 Difference]: With dead ends: 29 [2022-02-20 16:36:39,338 INFO L226 Difference]: Without dead ends: 17 [2022-02-20 16:36:39,339 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 16:36:39,339 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 0 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 10 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:39,339 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 43 Invalid, 10 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 10 Unchecked, 0.0s Time] [2022-02-20 16:36:39,340 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2022-02-20 16:36:39,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 17. [2022-02-20 16:36:39,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:39,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 17 states. Second operand has 17 states, 16 states have (on average 1.0) internal successors, (16), 16 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,341 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand has 17 states, 16 states have (on average 1.0) internal successors, (16), 16 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,341 INFO L87 Difference]: Start difference. First operand 17 states. Second operand has 17 states, 16 states have (on average 1.0) internal successors, (16), 16 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:39,342 INFO L93 Difference]: Finished difference Result 17 states and 16 transitions. [2022-02-20 16:36:39,342 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 16 transitions. [2022-02-20 16:36:39,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:39,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:39,342 INFO L74 IsIncluded]: Start isIncluded. First operand has 17 states, 16 states have (on average 1.0) internal successors, (16), 16 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 17 states. [2022-02-20 16:36:39,342 INFO L87 Difference]: Start difference. First operand has 17 states, 16 states have (on average 1.0) internal successors, (16), 16 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 17 states. [2022-02-20 16:36:39,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:39,343 INFO L93 Difference]: Finished difference Result 17 states and 16 transitions. [2022-02-20 16:36:39,343 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 16 transitions. [2022-02-20 16:36:39,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:39,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:39,343 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:39,343 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:39,343 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 1.0) internal successors, (16), 16 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 16 transitions. [2022-02-20 16:36:39,344 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 16 transitions. Word has length 15 [2022-02-20 16:36:39,344 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:39,344 INFO L470 AbstractCegarLoop]: Abstraction has 17 states and 16 transitions. [2022-02-20 16:36:39,344 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,344 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 16 transitions. [2022-02-20 16:36:39,344 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 16:36:39,344 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:39,344 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:39,355 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Ended with exit code 0 [2022-02-20 16:36:39,544 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:36:39,545 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:39,545 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:39,546 INFO L85 PathProgramCache]: Analyzing trace with hash 101523525, now seen corresponding path program 1 times [2022-02-20 16:36:39,546 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:39,546 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1171513716] [2022-02-20 16:36:39,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:39,546 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:39,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:39,547 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 16:36:39,548 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Waiting until timeout for monitored process [2022-02-20 16:36:39,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:39,662 INFO L263 TraceCheckSpWp]: Trace formula consists of 61 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 16:36:39,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:39,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:39,868 INFO L290 TraceCheckUtils]: 0: Hoare triple {901#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(21bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~huge_floor~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {901#true} is VALID [2022-02-20 16:36:39,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {901#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_~x~0#1, main_~res~0#1;main_~x~0#1 := ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~DOUBLE(), ~Pluszero~DOUBLE());assume { :begin_inline_floor_double } true;floor_double_#in~x#1 := main_~x~0#1;havoc floor_double_#res#1;havoc floor_double_#t~mem4#1, floor_double_#t~mem5#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, floor_double_#t~mem6#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, floor_double_~x#1, floor_double_~i0~0#1, floor_double_~i1~0#1, floor_double_~j0~0#1, floor_double_~i~0#1, floor_double_~j~0#1;floor_double_~x#1 := floor_double_#in~x#1;havoc floor_double_~i0~0#1;havoc floor_double_~i1~0#1;havoc floor_double_~j0~0#1;havoc floor_double_~i~0#1;havoc floor_double_~j~0#1; {909#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} is VALID [2022-02-20 16:36:39,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {909#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|))} call floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(floor_double_~x#1, floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 8bv32);call floor_double_#t~mem4#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, ~bvadd32(4bv32, floor_double_~#ew_u~0#1.offset), 4bv32);floor_double_~i0~0#1 := floor_double_#t~mem4#1;havoc floor_double_#t~mem4#1;call floor_double_#t~mem5#1 := read~intINTTYPE4(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset, 4bv32);floor_double_~i1~0#1 := floor_double_#t~mem5#1;havoc floor_double_#t~mem5#1;call ULTIMATE.dealloc(floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset);havoc floor_double_~#ew_u~0#1.base, floor_double_~#ew_u~0#1.offset; {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_floor_double_~i0~0#1|)))} is VALID [2022-02-20 16:36:39,873 INFO L290 TraceCheckUtils]: 3: Hoare triple {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_floor_double_~i0~0#1|)))} goto; {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_floor_double_~i0~0#1|)))} is VALID [2022-02-20 16:36:39,876 INFO L290 TraceCheckUtils]: 4: Hoare triple {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_floor_double_~i0~0#1|)))} floor_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(floor_double_~i0~0#1, 20bv32)), 1023bv32); {920#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= |ULTIMATE.start_floor_double_~j0~0#1| (bvadd (bvand (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) (_ bv20 32)) (_ bv2047 32)) (_ bv4294966273 32)))))} is VALID [2022-02-20 16:36:39,877 INFO L290 TraceCheckUtils]: 5: Hoare triple {920#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= |ULTIMATE.start_floor_double_~j0~0#1| (bvadd (bvand (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) (_ bv20 32)) (_ bv2047 32)) (_ bv4294966273 32)))))} assume !~bvslt32(floor_double_~j0~0#1, 20bv32); {920#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= |ULTIMATE.start_floor_double_~j0~0#1| (bvadd (bvand (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) (_ bv20 32)) (_ bv2047 32)) (_ bv4294966273 32)))))} is VALID [2022-02-20 16:36:39,879 INFO L290 TraceCheckUtils]: 6: Hoare triple {920#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) (fp ((_ extract 63 63) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 62 52) |v_skolemized_q#valueAsBitvector_9|) ((_ extract 51 0) |v_skolemized_q#valueAsBitvector_9|))) (= |ULTIMATE.start_floor_double_~j0~0#1| (bvadd (bvand (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) (_ bv20 32)) (_ bv2047 32)) (_ bv4294966273 32)))))} assume !~bvsgt32(floor_double_~j0~0#1, 51bv32);floor_double_~i~0#1 := ~bvlshr32(4294967295bv32, ~bvsub32(floor_double_~j0~0#1, 20bv32)); {902#false} is VALID [2022-02-20 16:36:39,879 INFO L290 TraceCheckUtils]: 7: Hoare triple {902#false} assume !(0bv32 == ~bvand32(floor_double_~i1~0#1, floor_double_~i~0#1)); {902#false} is VALID [2022-02-20 16:36:39,879 INFO L290 TraceCheckUtils]: 8: Hoare triple {902#false} assume !~fp.gt~DOUBLE(~fp.add~DOUBLE(currentRoundingMode, ~huge_floor~0, floor_double_~x#1), ~Pluszero~DOUBLE()); {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 9: Hoare triple {902#false} call floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intINTTYPE4(floor_double_~i0~0#1, floor_double_~#iw_u~0#1.base, ~bvadd32(4bv32, floor_double_~#iw_u~0#1.offset), 4bv32);call write~intINTTYPE4(floor_double_~i1~0#1, floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, 4bv32);call floor_double_#t~mem6#1 := read~intFLOATTYPE8(floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset, 8bv32);floor_double_~x#1 := floor_double_#t~mem6#1;havoc floor_double_#t~mem6#1;call ULTIMATE.dealloc(floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset);havoc floor_double_~#iw_u~0#1.base, floor_double_~#iw_u~0#1.offset; {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 10: Hoare triple {902#false} goto; {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 11: Hoare triple {902#false} floor_double_#res#1 := floor_double_~x#1; {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 12: Hoare triple {902#false} main_#t~ret7#1 := floor_double_#res#1;assume { :end_inline_floor_double } true;main_~res~0#1 := main_#t~ret7#1;havoc main_#t~ret7#1;assume { :begin_inline_isnan_double } true;isnan_double_#in~x#1 := main_~res~0#1;havoc isnan_double_#res#1;havoc isnan_double_~x#1;isnan_double_~x#1 := isnan_double_#in~x#1;isnan_double_#res#1 := (if !~fp.eq~DOUBLE(isnan_double_~x#1, isnan_double_~x#1) then 1bv32 else 0bv32); {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 13: Hoare triple {902#false} main_#t~ret8#1 := isnan_double_#res#1;assume { :end_inline_isnan_double } true; {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 14: Hoare triple {902#false} assume 0bv32 == main_#t~ret8#1;havoc main_#t~ret8#1; {902#false} is VALID [2022-02-20 16:36:39,880 INFO L290 TraceCheckUtils]: 15: Hoare triple {902#false} assume !false; {902#false} is VALID [2022-02-20 16:36:39,880 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 16:36:39,881 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:39,881 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:39,881 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1171513716] [2022-02-20 16:36:39,881 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1171513716] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:39,881 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:39,881 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 16:36:39,881 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [564588470] [2022-02-20 16:36:39,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:39,882 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 16:36:39,882 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:39,882 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,921 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:39,921 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 16:36:39,922 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:39,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 16:36:39,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 16:36:39,922 INFO L87 Difference]: Start difference. First operand 17 states and 16 transitions. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:39,947 INFO L93 Difference]: Finished difference Result 17 states and 16 transitions. [2022-02-20 16:36:39,947 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 16:36:39,948 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 16:36:39,948 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:39,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 16 transitions. [2022-02-20 16:36:39,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:39,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 16 transitions. [2022-02-20 16:36:39,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 16 transitions. [2022-02-20 16:36:40,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 16:36:40,003 INFO L225 Difference]: With dead ends: 17 [2022-02-20 16:36:40,003 INFO L226 Difference]: Without dead ends: 0 [2022-02-20 16:36:40,003 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 11 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 16:36:40,004 INFO L933 BasicCegarLoop]: 3 mSDtfsCounter, 0 mSDsluCounter, 5 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 8 SdHoareTripleChecker+Invalid, 5 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 5 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:40,004 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 8 Invalid, 5 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 5 Unchecked, 0.0s Time] [2022-02-20 16:36:40,004 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-02-20 16:36:40,005 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-02-20 16:36:40,005 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:40,005 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:40,005 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:40,005 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:40,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:40,005 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 16:36:40,010 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 16:36:40,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:40,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:40,011 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-02-20 16:36:40,011 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-02-20 16:36:40,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:40,011 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 16:36:40,011 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 16:36:40,011 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:40,011 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:40,011 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:40,012 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:40,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:40,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-02-20 16:36:40,012 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 16 [2022-02-20 16:36:40,012 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:40,012 INFO L470 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-02-20 16:36:40,012 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 16:36:40,012 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 16:36:40,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:40,014 INFO L764 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 16:36:40,026 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Forceful destruction successful, exit code 0 [2022-02-20 16:36:40,215 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 16:36:40,216 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-02-20 16:36:40,274 INFO L858 garLoopResultBuilder]: For program point L60(lines 60 67) no Hoare annotation was computed. [2022-02-20 16:36:40,274 INFO L858 garLoopResultBuilder]: For program point L94(lines 94 97) no Hoare annotation was computed. [2022-02-20 16:36:40,274 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startENTRY(line -1) no Hoare annotation was computed. [2022-02-20 16:36:40,274 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-02-20 16:36:40,274 INFO L858 garLoopResultBuilder]: For program point L28(lines 28 71) no Hoare annotation was computed. [2022-02-20 16:36:40,274 INFO L854 garLoopResultBuilder]: At program point L78(lines 18 79) the Hoare annotation is: (exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_#res#1|)) [2022-02-20 16:36:40,274 INFO L858 garLoopResultBuilder]: For program point L95(line 95) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L29(lines 29 48) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L21-1(lines 21 26) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L854 garLoopResultBuilder]: At program point L21-2(lines 21 26) the Hoare annotation is: (and (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_floor_double_~x#1|) (= currentRoundingMode roundNearestTiesToEven)) [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L21-3(lines 21 26) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L30(lines 30 37) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L72(lines 72 77) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L72-1(lines 18 79) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L72-2(lines 72 77) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L64(lines 64 65) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L31(lines 31 36) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L64-2(lines 64 65) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L56(lines 56 57) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L40(lines 40 41) no Hoare annotation was computed. [2022-02-20 16:36:40,275 INFO L858 garLoopResultBuilder]: For program point L-1(line -1) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION(line 95) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L854 garLoopResultBuilder]: At program point L82(line 82) the Hoare annotation is: (= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|) [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point L49(lines 49 71) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L861 garLoopResultBuilder]: At program point L99(lines 84 100) the Hoare annotation is: true [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point L33(lines 33 36) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point L58(lines 58 70) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point L50(lines 50 53) no Hoare annotation was computed. [2022-02-20 16:36:40,276 INFO L858 garLoopResultBuilder]: For program point L42(lines 42 47) no Hoare annotation was computed. [2022-02-20 16:36:40,277 INFO L858 garLoopResultBuilder]: For program point L59(lines 59 68) no Hoare annotation was computed. [2022-02-20 16:36:40,277 INFO L858 garLoopResultBuilder]: For program point L59-1(lines 59 68) no Hoare annotation was computed. [2022-02-20 16:36:40,277 INFO L858 garLoopResultBuilder]: For program point L43(lines 43 44) no Hoare annotation was computed. [2022-02-20 16:36:40,277 INFO L858 garLoopResultBuilder]: For program point L43-2(lines 43 44) no Hoare annotation was computed. [2022-02-20 16:36:40,279 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1] [2022-02-20 16:36:40,280 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L21-1 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L21-3 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L21-1 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L21-1 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L21-3 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2022-02-20 16:36:40,283 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2022-02-20 16:36:40,284 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L58 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L58 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L72-2 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2022-02-20 16:36:40,287 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L43-2 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L59-1 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 16:36:40,288 WARN L170 areAnnotationChecker]: L64-2 has no Hoare annotation [2022-02-20 16:36:40,288 INFO L163 areAnnotationChecker]: CFG has 1 edges. 1 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-02-20 16:36:40,290 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:40,293 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:40,294 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2022-02-20 16:36:40,294 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2022-02-20 16:36:40,296 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 04:36:40 BoogieIcfgContainer [2022-02-20 16:36:40,296 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 16:36:40,297 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 16:36:40,297 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 16:36:40,297 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 16:36:40,297 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:32" (3/4) ... [2022-02-20 16:36:40,299 INFO L137 WitnessPrinter]: Generating witness for correct program [2022-02-20 16:36:40,307 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 18 nodes and edges [2022-02-20 16:36:40,307 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 7 nodes and edges [2022-02-20 16:36:40,307 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2022-02-20 16:36:40,307 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2022-02-20 16:36:40,329 WARN L220 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: (\exists currentRoundingMode : FloatRoundingMode :: ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~LONGDOUBLE(), ~Pluszero~LONGDOUBLE()) == \result) [2022-02-20 16:36:40,330 WARN L220 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: 1bv32 == \result [2022-02-20 16:36:40,344 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2022-02-20 16:36:40,345 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 16:36:40,345 INFO L158 Benchmark]: Toolchain (without parser) took 9627.27ms. Allocated memory was 52.4MB in the beginning and 69.2MB in the end (delta: 16.8MB). Free memory was 29.9MB in the beginning and 41.0MB in the end (delta: -11.0MB). Peak memory consumption was 4.8MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,345 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 52.4MB. Free memory is still 33.6MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 16:36:40,346 INFO L158 Benchmark]: CACSL2BoogieTranslator took 208.34ms. Allocated memory was 52.4MB in the beginning and 69.2MB in the end (delta: 16.8MB). Free memory was 29.7MB in the beginning and 51.2MB in the end (delta: -21.5MB). Peak memory consumption was 5.4MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,346 INFO L158 Benchmark]: Boogie Procedure Inliner took 33.02ms. Allocated memory is still 69.2MB. Free memory was 51.2MB in the beginning and 49.1MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,346 INFO L158 Benchmark]: Boogie Preprocessor took 30.68ms. Allocated memory is still 69.2MB. Free memory was 49.1MB in the beginning and 47.3MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,346 INFO L158 Benchmark]: RCFGBuilder took 1271.46ms. Allocated memory is still 69.2MB. Free memory was 47.1MB in the beginning and 50.0MB in the end (delta: -3.0MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,346 INFO L158 Benchmark]: TraceAbstraction took 8029.77ms. Allocated memory is still 69.2MB. Free memory was 49.7MB in the beginning and 44.1MB in the end (delta: 5.6MB). Peak memory consumption was 7.3MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,347 INFO L158 Benchmark]: Witness Printer took 47.85ms. Allocated memory is still 69.2MB. Free memory was 44.1MB in the beginning and 41.0MB in the end (delta: 3.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:40,348 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.17ms. Allocated memory is still 52.4MB. Free memory is still 33.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 208.34ms. Allocated memory was 52.4MB in the beginning and 69.2MB in the end (delta: 16.8MB). Free memory was 29.7MB in the beginning and 51.2MB in the end (delta: -21.5MB). Peak memory consumption was 5.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 33.02ms. Allocated memory is still 69.2MB. Free memory was 51.2MB in the beginning and 49.1MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 30.68ms. Allocated memory is still 69.2MB. Free memory was 49.1MB in the beginning and 47.3MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 1271.46ms. Allocated memory is still 69.2MB. Free memory was 47.1MB in the beginning and 50.0MB in the end (delta: -3.0MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * TraceAbstraction took 8029.77ms. Allocated memory is still 69.2MB. Free memory was 49.7MB in the beginning and 44.1MB in the end (delta: 5.6MB). Peak memory consumption was 7.3MB. Max. memory is 16.1GB. * Witness Printer took 47.85ms. Allocated memory is still 69.2MB. Free memory was 44.1MB in the beginning and 41.0MB in the end (delta: 3.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - GenericResult: Unfinished Backtranslation Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 95]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 34 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 8.0s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 4.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.1s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 43 SdHoareTripleChecker+Valid, 1.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 43 mSDsluCounter, 455 SdHoareTripleChecker+Invalid, 1.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 50 IncrementalHoareTripleChecker+Unchecked, 311 mSDsCounter, 4 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 48 IncrementalHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 4 mSolverCounterUnsat, 144 mSDtfsCounter, 48 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 77 GetRequests, 52 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=34occurred in iteration=0, InterpolantAutomatonStates: 31, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 6 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 4 LocationsWithAnnotation, 4 PreInvPairs, 10 NumberOfFragments, 21 HoareAnnotationTreeSize, 4 FomulaSimplifications, 26 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 4 FomulaSimplificationsInter, 30 FormulaSimplificationTreeSizeReductionInter, 0.1s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 1.1s InterpolantComputationTime, 78 NumberOfCodeBlocks, 78 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 72 ConstructedInterpolants, 23 QuantifiedInterpolants, 384 SizeOfPredicates, 41 NumberOfNonLiveVariables, 293 ConjunctsInSsa, 53 ConjunctsInUnsatCore, 6 InterpolantComputations, 6 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 18]: Loop Invariant [2022-02-20 16:36:40,353 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:40,353 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] Derived loop invariant: (\exists currentRoundingMode : FloatRoundingMode :: ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~LONGDOUBLE(), ~Pluszero~LONGDOUBLE()) == \result) - InvariantResult [Line: 21]: Loop Invariant [2022-02-20 16:36:40,353 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2022-02-20 16:36:40,353 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven Derived loop invariant: ~fp.div~DOUBLE(unknown-currentRoundingMode-unknown, ~Pluszero~LONGDOUBLE(), ~Pluszero~LONGDOUBLE()) == x && unknown-currentRoundingMode-unknown == ~roundNearestTiesToEven - InvariantResult [Line: 82]: Loop Invariant Derived loop invariant: 1bv32 == \result - InvariantResult [Line: 84]: Loop Invariant Derived loop invariant: 1 RESULT: Ultimate proved your program to be correct! [2022-02-20 16:36:40,380 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE