./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/float-newlib/double_req_bl_1091.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_1091.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 7ead6fe7830da205228466fa2d47f2a018c45d096ed1f821ce96b27193830e65 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 16:36:42,867 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 16:36:42,870 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 16:36:42,900 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 16:36:42,900 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 16:36:42,903 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 16:36:42,904 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 16:36:42,907 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 16:36:42,908 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 16:36:42,908 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 16:36:42,909 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 16:36:42,910 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 16:36:42,910 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 16:36:42,914 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 16:36:42,915 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 16:36:42,917 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 16:36:42,918 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 16:36:42,918 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 16:36:42,920 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 16:36:42,922 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 16:36:42,922 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 16:36:42,923 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 16:36:42,924 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 16:36:42,925 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 16:36:42,929 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 16:36:42,930 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 16:36:42,930 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 16:36:42,932 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 16:36:42,932 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 16:36:42,933 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 16:36:42,933 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 16:36:42,934 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 16:36:42,935 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 16:36:42,936 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 16:36:42,936 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 16:36:42,937 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 16:36:42,938 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 16:36:42,938 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 16:36:42,938 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 16:36:42,939 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 16:36:42,939 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 16:36:42,941 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:42,969 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 16:36:42,969 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 16:36:42,970 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 16:36:42,970 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 16:36:42,971 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 16:36:42,971 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 16:36:42,971 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 16:36:42,971 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 16:36:42,972 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 16:36:42,972 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 16:36:42,972 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 16:36:42,973 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 16:36:42,973 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 16:36:42,973 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 16:36:42,973 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 16:36:42,973 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 16:36:42,973 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 16:36:42,974 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 16:36:42,974 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 16:36:42,974 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 16:36:42,974 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 16:36:42,974 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 16:36:42,974 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 16:36:42,974 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 16:36:42,975 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:42,975 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 16:36:42,975 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 16:36:42,976 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 16:36:42,976 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 16:36:42,976 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 16:36:42,976 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 16:36:42,976 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 16:36:42,977 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 16:36:42,977 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 -> 7ead6fe7830da205228466fa2d47f2a018c45d096ed1f821ce96b27193830e65 [2022-02-20 16:36:43,143 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 16:36:43,171 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 16:36:43,172 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 16:36:43,173 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 16:36:43,173 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 16:36:43,174 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-newlib/double_req_bl_1091.c [2022-02-20 16:36:43,221 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/15f419792/b7491f88d382428da4ae4c6f0b7ebc7c/FLAG3e1be769d [2022-02-20 16:36:43,565 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 16:36:43,566 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/float-newlib/double_req_bl_1091.c [2022-02-20 16:36:43,573 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/15f419792/b7491f88d382428da4ae4c6f0b7ebc7c/FLAG3e1be769d [2022-02-20 16:36:43,583 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/15f419792/b7491f88d382428da4ae4c6f0b7ebc7c [2022-02-20 16:36:43,585 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 16:36:43,586 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 16:36:43,587 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:43,587 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 16:36:43,589 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 16:36:43,590 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:43" (1/1) ... [2022-02-20 16:36:43,590 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@74016eed and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:43, skipping insertion in model container [2022-02-20 16:36:43,590 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:43" (1/1) ... [2022-02-20 16:36:43,594 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 16:36:43,607 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:36:43,752 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_1091.c[2108,2121] [2022-02-20 16:36:43,754 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:43,759 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 16:36:43,786 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_1091.c[2108,2121] [2022-02-20 16:36:43,786 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:43,796 INFO L208 MainTranslator]: Completed translation [2022-02-20 16:36:43,796 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:43 WrapperNode [2022-02-20 16:36:43,796 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:43,797 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:43,797 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 16:36:43,797 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 16:36:43,802 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:43" (1/1) ... [2022-02-20 16:36:43,808 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:43" (1/1) ... [2022-02-20 16:36:43,851 INFO L137 Inliner]: procedures = 16, calls = 19, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 100 [2022-02-20 16:36:43,863 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:43,864 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 16:36:43,864 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 16:36:43,864 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 16:36:43,869 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:43" (1/1) ... [2022-02-20 16:36:43,870 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:43" (1/1) ... [2022-02-20 16:36:43,872 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:43" (1/1) ... [2022-02-20 16:36:43,872 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:43" (1/1) ... [2022-02-20 16:36:43,878 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:43" (1/1) ... [2022-02-20 16:36:43,881 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:43" (1/1) ... [2022-02-20 16:36:43,885 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:43" (1/1) ... [2022-02-20 16:36:43,887 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 16:36:43,892 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 16:36:43,892 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 16:36:43,892 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 16:36:43,895 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:43" (1/1) ... [2022-02-20 16:36:43,903 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:43,911 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:36:43,932 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:43,939 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:43,965 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 16:36:43,965 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 16:36:43,965 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 16:36:43,965 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2022-02-20 16:36:43,965 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 16:36:43,965 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2022-02-20 16:36:43,966 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 16:36:43,966 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 16:36:43,967 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 16:36:43,967 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 16:36:44,036 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 16:36:44,037 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 16:36:44,446 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 16:36:44,451 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 16:36:44,451 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 16:36:44,452 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:44 BoogieIcfgContainer [2022-02-20 16:36:44,452 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 16:36:44,463 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 16:36:44,464 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 16:36:44,468 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 16:36:44,468 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 04:36:43" (1/3) ... [2022-02-20 16:36:44,469 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@693d79f5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:44, skipping insertion in model container [2022-02-20 16:36:44,469 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:43" (2/3) ... [2022-02-20 16:36:44,470 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@693d79f5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:44, skipping insertion in model container [2022-02-20 16:36:44,470 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:44" (3/3) ... [2022-02-20 16:36:44,471 INFO L111 eAbstractionObserver]: Analyzing ICFG double_req_bl_1091.c [2022-02-20 16:36:44,475 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 16:36:44,475 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 16:36:44,522 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 16:36:44,530 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:44,531 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 16:36:44,544 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:44,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 16:36:44,548 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:44,548 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:44,549 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:44,553 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:44,553 INFO L85 PathProgramCache]: Analyzing trace with hash -1930047821, now seen corresponding path program 1 times [2022-02-20 16:36:44,563 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:36:44,563 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [315916891] [2022-02-20 16:36:44,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:44,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:36:44,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:44,705 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_ceil~0 := 1.0E300; {37#true} is VALID [2022-02-20 16:36:44,706 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {37#true} is VALID [2022-02-20 16:36:44,707 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume !true; {38#false} is VALID [2022-02-20 16:36:44,707 INFO L290 TraceCheckUtils]: 3: Hoare triple {38#false} ceil_double_~j0~0#1 := (if 0 == ceil_double_~i0~0#1 / 1048576 then 0 else (if 1 == ceil_double_~i0~0#1 / 1048576 then 1 else ~bitwiseAnd(ceil_double_~i0~0#1 / 1048576, 2047))) - 1023; {38#false} is VALID [2022-02-20 16:36:44,707 INFO L290 TraceCheckUtils]: 4: Hoare triple {38#false} assume ceil_double_~j0~0#1 < 20; {38#false} is VALID [2022-02-20 16:36:44,707 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#false} assume !(ceil_double_~j0~0#1 < 0);ceil_double_~i~0#1 := (if 31 == ceil_double_~j0~0#1 || 63 == ceil_double_~j0~0#1 then 0 else ~shiftRight(1048575, ceil_double_~j0~0#1)); {38#false} is VALID [2022-02-20 16:36:44,711 INFO L290 TraceCheckUtils]: 6: Hoare triple {38#false} assume 0 == (if (1 == (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1)))) || 0 == (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))))) && 0 == ceil_double_~i1~0#1 then (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1)))) else (if 0 == (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1)))) && (1 == ceil_double_~i1~0#1 || 0 == ceil_double_~i1~0#1) then ceil_double_~i1~0#1 else (if (1 == (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1)))) && (1 == ceil_double_~i1~0#1 || 0 == ceil_double_~i1~0#1)) || ((1 == (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1)))) || 0 == (if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))))) && 1 == ceil_double_~i1~0#1) then 1 else ~bitwiseOr((if 0 == ceil_double_~i0~0#1 || 0 == ceil_double_~i~0#1 then 0 else (if 1 == ceil_double_~i~0#1 then (if 1 == ceil_double_~i0~0#1 || 0 == ceil_double_~i0~0#1 then ceil_double_~i0~0#1 else (if ceil_double_~i0~0#1 >= 0 then ceil_double_~i0~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else (if 1 == ceil_double_~i0~0#1 then (if 1 == ceil_double_~i~0#1 || 0 == ceil_double_~i~0#1 then ceil_double_~i~0#1 else (if ceil_double_~i~0#1 >= 0 then ceil_double_~i~0#1 % 2 else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1))) else ~bitwiseAnd(ceil_double_~i0~0#1, ceil_double_~i~0#1)))), ceil_double_~i1~0#1)))) % 4294967296;ceil_double_#res#1 := ceil_double_~x#1; {38#false} is VALID [2022-02-20 16:36:44,713 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#false} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:44,713 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:44,714 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:44,714 INFO L290 TraceCheckUtils]: 10: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-02-20 16:36:44,715 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:44,716 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 16:36:44,716 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [315916891] [2022-02-20 16:36:44,717 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [315916891] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:44,717 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:44,718 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 16:36:44,720 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [768104395] [2022-02-20 16:36:44,722 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:44,727 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:44,729 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:44,732 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:44,750 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:44,751 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 16:36:44,751 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 16:36:44,771 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 16:36:44,772 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:36:44,775 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:44,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:44,865 INFO L93 Difference]: Finished difference Result 66 states and 104 transitions. [2022-02-20 16:36:44,865 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 16:36:44,866 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:44,866 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:44,867 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:44,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:44,878 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:44,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:44,879 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 104 transitions. [2022-02-20 16:36:44,993 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:45,000 INFO L225 Difference]: With dead ends: 66 [2022-02-20 16:36:45,003 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:45,006 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:45,009 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:45,011 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:45,023 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:45,035 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:45,035 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:45,036 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:45,038 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:45,038 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:45,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:45,044 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:45,044 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:45,045 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:45,045 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:45,045 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:45,046 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:45,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:45,051 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:45,051 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:45,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:45,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:45,052 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:45,052 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:45,054 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:45,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 45 transitions. [2022-02-20 16:36:45,057 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 45 transitions. Word has length 11 [2022-02-20 16:36:45,058 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:45,058 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 45 transitions. [2022-02-20 16:36:45,058 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:45,058 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:45,059 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:45,059 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:45,060 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:45,062 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 16:36:45,063 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:45,065 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:45,065 INFO L85 PathProgramCache]: Analyzing trace with hash -1310126896, now seen corresponding path program 1 times [2022-02-20 16:36:45,065 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 16:36:45,065 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [685583630] [2022-02-20 16:36:45,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:45,066 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 16:36:45,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 16:36:45,193 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 16:36:45,255 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 16:36:45,270 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 16:36:45,270 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 16:36:45,272 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 16:36:45,273 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 16:36:45,275 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1] [2022-02-20 16:36:45,277 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 16:36:45,305 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 16:36:45,306 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 16:36:45,306 WARN L170 areAnnotationChecker]: L24-2 has no Hoare annotation [2022-02-20 16:36:45,306 WARN L170 areAnnotationChecker]: L24-2 has no Hoare annotation [2022-02-20 16:36:45,306 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-02-20 16:36:45,306 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-02-20 16:36:45,306 WARN L170 areAnnotationChecker]: L24-3 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:45,307 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L44 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L44 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-02-20 16:36:45,308 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L76-1 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L76-1 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L82 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L62 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L62 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-02-20 16:36:45,309 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L76-2 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L17 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-02-20 16:36:45,310 WARN L170 areAnnotationChecker]: L47-2 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L63-1 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L97 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L97 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L101 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L68 has no Hoare annotation [2022-02-20 16:36:45,311 WARN L170 areAnnotationChecker]: L68 has no Hoare annotation [2022-02-20 16:36:45,312 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 16:36:45,312 WARN L170 areAnnotationChecker]: L68-2 has no Hoare annotation [2022-02-20 16:36:45,312 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:45,313 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 04:36:45 BoogieIcfgContainer [2022-02-20 16:36:45,313 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 16:36:45,315 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 16:36:45,315 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 16:36:45,315 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 16:36:45,316 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:44" (3/4) ... [2022-02-20 16:36:45,318 INFO L140 WitnessPrinter]: No result that supports witness generation found [2022-02-20 16:36:45,318 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 16:36:45,319 INFO L158 Benchmark]: Toolchain (without parser) took 1733.34ms. Allocated memory was 88.1MB in the beginning and 111.1MB in the end (delta: 23.1MB). Free memory was 55.5MB in the beginning and 72.3MB in the end (delta: -16.7MB). Peak memory consumption was 6.8MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,320 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 88.1MB. Free memory is still 44.5MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 16:36:45,320 INFO L158 Benchmark]: CACSL2BoogieTranslator took 209.86ms. Allocated memory is still 88.1MB. Free memory was 55.3MB in the beginning and 62.5MB in the end (delta: -7.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,323 INFO L158 Benchmark]: Boogie Procedure Inliner took 66.27ms. Allocated memory is still 88.1MB. Free memory was 62.5MB in the beginning and 59.2MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,324 INFO L158 Benchmark]: Boogie Preprocessor took 26.02ms. Allocated memory is still 88.1MB. Free memory was 59.2MB in the beginning and 57.1MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,325 INFO L158 Benchmark]: RCFGBuilder took 560.76ms. Allocated memory was 88.1MB in the beginning and 111.1MB in the end (delta: 23.1MB). Free memory was 56.7MB in the beginning and 87.0MB in the end (delta: -30.3MB). Peak memory consumption was 25.7MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,325 INFO L158 Benchmark]: TraceAbstraction took 851.19ms. Allocated memory is still 111.1MB. Free memory was 87.5MB in the beginning and 73.1MB in the end (delta: 14.5MB). Peak memory consumption was 13.0MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,325 INFO L158 Benchmark]: Witness Printer took 3.07ms. Allocated memory is still 111.1MB. Free memory was 73.1MB in the beginning and 72.3MB in the end (delta: 824.9kB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:45,330 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.11ms. Allocated memory is still 88.1MB. Free memory is still 44.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 209.86ms. Allocated memory is still 88.1MB. Free memory was 55.3MB in the beginning and 62.5MB in the end (delta: -7.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 66.27ms. Allocated memory is still 88.1MB. Free memory was 62.5MB in the beginning and 59.2MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 26.02ms. Allocated memory is still 88.1MB. Free memory was 59.2MB in the beginning and 57.1MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 560.76ms. Allocated memory was 88.1MB in the beginning and 111.1MB in the end (delta: 23.1MB). Free memory was 56.7MB in the beginning and 87.0MB in the end (delta: -30.3MB). Peak memory consumption was 25.7MB. Max. memory is 16.1GB. * TraceAbstraction took 851.19ms. Allocated memory is still 111.1MB. Free memory was 87.5MB in the beginning and 73.1MB in the end (delta: 14.5MB). Peak memory consumption was 13.0MB. Max. memory is 16.1GB. * Witness Printer took 3.07ms. Allocated memory is still 111.1MB. Free memory was 73.1MB in the beginning and 72.3MB in the end (delta: 824.9kB). Peak memory consumption was 2.1MB. 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: 97]: 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 43, overapproximation of bitwiseOr at line 44, overapproximation of someBinaryArithmeticDOUBLEoperation at line 92, overapproximation of bitwiseAnd at line 44, overapproximation of someBinaryDOUBLEComparisonOperation at line 17. Possible FailurePath: [L19] static const double huge_ceil = 1.0e300; VAL [huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000] [L92] double x = 0.0 / 0.0; [L93] CALL, EXPR ceil_double(x) [L22] __int32_t i0, i1, j0; [L23] __uint32_t i, j; VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] [L25] ieee_double_shape_type ew_u; [L26] ew_u.value = (x) [L27] EXPR ew_u.parts.msw [L27] (i0) = ew_u.parts.msw [L28] EXPR ew_u.parts.lsw [L28] (i1) = ew_u.parts.lsw [L30] j0 = ((i0 >> 20) & 0x7ff) - 0x3ff VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i0=6291456, i1=0, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] [L31] COND TRUE j0 < 20 VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i0=6291456, i1=0, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] [L32] COND FALSE !(j0 < 0) [L43] i = (0x000fffff) >> j0 VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i=6291456, i0=6291456, i1=0, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] [L44] COND TRUE ((i0 & i) | i1) == 0 [L45] return x; VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, \result=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, i=6291456, i0=6291456, i1=0, j0=0, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] [L93] RET, EXPR ceil_double(x) [L93] double res = ceil_double(x); [L96] CALL, EXPR isnan_double(res) [L17] return x != x; VAL [\old(x)=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, \result=0, huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] [L96] RET, EXPR isnan_double(res) [L96] COND TRUE !isnan_double(res) [L97] reach_error() VAL [huge_ceil=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, res=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002, x=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002] - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 34 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.8s, OverallIterations: 2, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.3s, 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:45,367 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_1091.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 7ead6fe7830da205228466fa2d47f2a018c45d096ed1f821ce96b27193830e65 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 16:36:47,079 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 16:36:47,082 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 16:36:47,112 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 16:36:47,113 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 16:36:47,115 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 16:36:47,117 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 16:36:47,118 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 16:36:47,119 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 16:36:47,120 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 16:36:47,121 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 16:36:47,122 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 16:36:47,131 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 16:36:47,132 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 16:36:47,133 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 16:36:47,136 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 16:36:47,138 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 16:36:47,140 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 16:36:47,142 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 16:36:47,146 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 16:36:47,150 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 16:36:47,151 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 16:36:47,153 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 16:36:47,154 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 16:36:47,158 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 16:36:47,158 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 16:36:47,159 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 16:36:47,160 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 16:36:47,161 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 16:36:47,162 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 16:36:47,162 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 16:36:47,163 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 16:36:47,164 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 16:36:47,165 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 16:36:47,166 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 16:36:47,166 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 16:36:47,167 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 16:36:47,167 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 16:36:47,167 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 16:36:47,170 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 16:36:47,171 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 16:36:47,172 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:47,207 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 16:36:47,208 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 16:36:47,209 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 16:36:47,209 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 16:36:47,210 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 16:36:47,210 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 16:36:47,211 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 16:36:47,211 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 16:36:47,212 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 16:36:47,212 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 16:36:47,213 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 16:36:47,213 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 16:36:47,213 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 16:36:47,213 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 16:36:47,213 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 16:36:47,214 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 16:36:47,214 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 16:36:47,214 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 16:36:47,214 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 16:36:47,214 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 16:36:47,215 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 16:36:47,215 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 16:36:47,215 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 16:36:47,215 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 16:36:47,215 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 16:36:47,216 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 16:36:47,216 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:47,216 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 16:36:47,216 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 16:36:47,217 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 16:36:47,217 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 16:36:47,217 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 16:36:47,217 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 16:36:47,218 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 16:36:47,218 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 16:36:47,218 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 16:36:47,218 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 -> 7ead6fe7830da205228466fa2d47f2a018c45d096ed1f821ce96b27193830e65 [2022-02-20 16:36:47,484 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 16:36:47,501 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 16:36:47,503 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 16:36:47,504 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 16:36:47,504 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 16:36:47,505 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-newlib/double_req_bl_1091.c [2022-02-20 16:36:47,556 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36b9c0fcf/3fe3516e2e1544c28f3a0f59c7c5b400/FLAG78fda8fd2 [2022-02-20 16:36:47,953 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 16:36:47,953 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/float-newlib/double_req_bl_1091.c [2022-02-20 16:36:47,957 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36b9c0fcf/3fe3516e2e1544c28f3a0f59c7c5b400/FLAG78fda8fd2 [2022-02-20 16:36:48,386 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36b9c0fcf/3fe3516e2e1544c28f3a0f59c7c5b400 [2022-02-20 16:36:48,389 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 16:36:48,390 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 16:36:48,391 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:48,391 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 16:36:48,393 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 16:36:48,394 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:48" (1/1) ... [2022-02-20 16:36:48,396 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2e659c6c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:48, skipping insertion in model container [2022-02-20 16:36:48,396 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 04:36:48" (1/1) ... [2022-02-20 16:36:48,401 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 16:36:48,427 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 16:36:48,560 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_1091.c[2108,2121] [2022-02-20 16:36:48,565 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:48,582 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 16:36:48,624 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_1091.c[2108,2121] [2022-02-20 16:36:48,627 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 16:36:48,643 INFO L208 MainTranslator]: Completed translation [2022-02-20 16:36:48,647 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:48 WrapperNode [2022-02-20 16:36:48,647 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 16:36:48,648 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:48,649 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 16:36:48,649 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 16:36:48,654 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:48" (1/1) ... [2022-02-20 16:36:48,670 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:48" (1/1) ... [2022-02-20 16:36:48,700 INFO L137 Inliner]: procedures = 19, calls = 19, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 100 [2022-02-20 16:36:48,701 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 16:36:48,702 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 16:36:48,702 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 16:36:48,703 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 16:36:48,709 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:48" (1/1) ... [2022-02-20 16:36:48,709 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:48" (1/1) ... [2022-02-20 16:36:48,717 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:48" (1/1) ... [2022-02-20 16:36:48,718 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:48" (1/1) ... [2022-02-20 16:36:48,738 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:48" (1/1) ... [2022-02-20 16:36:48,745 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:48" (1/1) ... [2022-02-20 16:36:48,748 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:48" (1/1) ... [2022-02-20 16:36:48,753 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 16:36:48,757 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 16:36:48,758 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 16:36:48,758 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 16:36:48,760 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:48" (1/1) ... [2022-02-20 16:36:48,765 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 16:36:48,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 16:36:48,793 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:48,813 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:48,826 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 16:36:48,827 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2022-02-20 16:36:48,827 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2022-02-20 16:36:48,827 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 16:36:48,827 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 16:36:48,827 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 16:36:48,827 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 16:36:48,828 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 16:36:48,828 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 16:36:48,828 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 16:36:48,903 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 16:36:48,904 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 16:36:50,072 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 16:36:50,077 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 16:36:50,077 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 16:36:50,078 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:50 BoogieIcfgContainer [2022-02-20 16:36:50,079 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 16:36:50,080 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 16:36:50,080 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 16:36:50,082 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 16:36:50,082 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 04:36:48" (1/3) ... [2022-02-20 16:36:50,082 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f313ee4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:50, skipping insertion in model container [2022-02-20 16:36:50,083 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 04:36:48" (2/3) ... [2022-02-20 16:36:50,083 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f313ee4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 04:36:50, skipping insertion in model container [2022-02-20 16:36:50,083 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 04:36:50" (3/3) ... [2022-02-20 16:36:50,085 INFO L111 eAbstractionObserver]: Analyzing ICFG double_req_bl_1091.c [2022-02-20 16:36:50,089 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 16:36:50,089 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 16:36:50,120 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 16:36:50,125 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:50,126 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 16:36:50,136 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:50,139 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 16:36:50,140 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:50,140 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:50,140 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:50,144 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:50,144 INFO L85 PathProgramCache]: Analyzing trace with hash -1930047821, now seen corresponding path program 1 times [2022-02-20 16:36:50,152 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:50,153 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1026491694] [2022-02-20 16:36:50,153 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:50,153 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:50,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:50,156 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:50,157 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:50,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:50,222 INFO L263 TraceCheckSpWp]: Trace formula consists of 33 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 16:36:50,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:50,237 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:50,315 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_ceil~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {37#true} is VALID [2022-02-20 16:36:50,318 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {37#true} is VALID [2022-02-20 16:36:50,319 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume !true; {38#false} is VALID [2022-02-20 16:36:50,320 INFO L290 TraceCheckUtils]: 3: Hoare triple {38#false} ceil_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(ceil_double_~i0~0#1, 20bv32)), 1023bv32); {38#false} is VALID [2022-02-20 16:36:50,320 INFO L290 TraceCheckUtils]: 4: Hoare triple {38#false} assume ~bvslt32(ceil_double_~j0~0#1, 20bv32); {38#false} is VALID [2022-02-20 16:36:50,320 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#false} assume !~bvslt32(ceil_double_~j0~0#1, 0bv32);ceil_double_~i~0#1 := ~bvashr32(1048575bv32, ceil_double_~j0~0#1); {38#false} is VALID [2022-02-20 16:36:50,320 INFO L290 TraceCheckUtils]: 6: Hoare triple {38#false} assume 0bv32 == ~bvor32(~bvand32(ceil_double_~i0~0#1, ceil_double_~i~0#1), ceil_double_~i1~0#1);ceil_double_#res#1 := ceil_double_~x#1; {38#false} is VALID [2022-02-20 16:36:50,321 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#false} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:50,321 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:50,321 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:50,321 INFO L290 TraceCheckUtils]: 10: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-02-20 16:36:50,322 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:50,322 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:50,323 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:50,324 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1026491694] [2022-02-20 16:36:50,324 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1026491694] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:50,324 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:50,324 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 16:36:50,325 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1967339817] [2022-02-20 16:36:50,340 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:50,343 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:50,358 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:50,361 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:50,374 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:50,374 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 16:36:50,374 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:50,413 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 16:36:50,413 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 16:36:50,415 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:51,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:51,528 INFO L93 Difference]: Finished difference Result 66 states and 104 transitions. [2022-02-20 16:36:51,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 16:36:51,529 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:51,529 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:51,530 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:51,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:51,536 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:51,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 16:36:51,539 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 104 transitions. [2022-02-20 16:36:51,946 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:51,952 INFO L225 Difference]: With dead ends: 66 [2022-02-20 16:36:51,953 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:51,955 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:51,958 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:51,959 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:51,975 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:51,982 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:51,982 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:51,983 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:51,983 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:51,984 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:51,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:51,986 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:51,986 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:51,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:51,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:51,988 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:51,989 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:51,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:51,990 INFO L93 Difference]: Finished difference Result 31 states and 45 transitions. [2022-02-20 16:36:51,991 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:51,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:51,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:51,991 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:51,991 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:51,992 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:51,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 45 transitions. [2022-02-20 16:36:51,994 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 45 transitions. Word has length 11 [2022-02-20 16:36:51,994 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:51,994 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 45 transitions. [2022-02-20 16:36:51,994 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:51,995 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 45 transitions. [2022-02-20 16:36:51,995 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:51,995 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:51,995 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:52,005 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Ended with exit code 0 [2022-02-20 16:36:52,207 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:52,207 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:52,208 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:52,208 INFO L85 PathProgramCache]: Analyzing trace with hash -1310126896, now seen corresponding path program 1 times [2022-02-20 16:36:52,208 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:52,208 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [974450423] [2022-02-20 16:36:52,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:52,209 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:52,209 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:52,210 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:52,213 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:52,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:52,286 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 16:36:52,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:52,295 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:52,517 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_ceil~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {241#true} is VALID [2022-02-20 16:36:52,519 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:52,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} call ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(ceil_double_~x#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 8bv32);call ceil_double_#t~mem4#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#ew_u~0#1.offset), 4bv32);ceil_double_~i0~0#1 := ceil_double_#t~mem4#1;havoc ceil_double_#t~mem4#1;call ceil_double_#t~mem5#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 4bv32);ceil_double_~i1~0#1 := ceil_double_#t~mem5#1;havoc ceil_double_#t~mem5#1;call ULTIMATE.dealloc(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset);havoc ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset; {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:52,521 INFO L290 TraceCheckUtils]: 3: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} goto; {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:52,521 INFO L290 TraceCheckUtils]: 4: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} ceil_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(ceil_double_~i0~0#1, 20bv32)), 1023bv32); {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:52,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} assume ~bvslt32(ceil_double_~j0~0#1, 20bv32); {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:52,522 INFO L290 TraceCheckUtils]: 6: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} assume !~bvslt32(ceil_double_~j0~0#1, 0bv32);ceil_double_~i~0#1 := ~bvashr32(1048575bv32, ceil_double_~j0~0#1); {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:52,525 INFO L290 TraceCheckUtils]: 7: Hoare triple {249#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} assume 0bv32 == ~bvor32(~bvand32(ceil_double_~i0~0#1, ceil_double_~i~0#1), ceil_double_~i1~0#1);ceil_double_#res#1 := ceil_double_~x#1; {268#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_ceil_double_#res#1|))} is VALID [2022-02-20 16:36:52,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {268#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_ceil_double_#res#1|))} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:52,527 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:52,528 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:52,528 INFO L290 TraceCheckUtils]: 11: Hoare triple {242#false} assume !false; {242#false} is VALID [2022-02-20 16:36:52,528 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:52,528 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:52,528 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:52,529 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [974450423] [2022-02-20 16:36:52,529 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [974450423] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:52,529 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:52,529 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 16:36:52,529 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1463788601] [2022-02-20 16:36:52,529 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:52,530 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:52,530 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:52,530 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:52,553 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:52,553 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 16:36:52,553 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:52,554 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 16:36:52,554 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 16:36:52,554 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:52,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:52,875 INFO L93 Difference]: Finished difference Result 36 states and 49 transitions. [2022-02-20 16:36:52,875 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 16:36:52,876 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:52,876 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:52,876 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:52,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-02-20 16:36:52,877 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:52,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-02-20 16:36:52,878 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2022-02-20 16:36:53,057 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:53,058 INFO L225 Difference]: With dead ends: 36 [2022-02-20 16:36:53,058 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:53,058 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:53,059 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:53,059 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:53,060 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:53,061 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:53,061 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:53,061 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:53,062 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:53,062 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:53,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:53,064 INFO L93 Difference]: Finished difference Result 31 states and 44 transitions. [2022-02-20 16:36:53,064 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 44 transitions. [2022-02-20 16:36:53,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:53,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:53,065 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:53,065 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:53,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:53,066 INFO L93 Difference]: Finished difference Result 31 states and 44 transitions. [2022-02-20 16:36:53,066 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 44 transitions. [2022-02-20 16:36:53,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:53,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:53,067 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:53,067 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:53,067 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:53,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 44 transitions. [2022-02-20 16:36:53,068 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 44 transitions. Word has length 12 [2022-02-20 16:36:53,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:53,069 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 44 transitions. [2022-02-20 16:36:53,069 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:53,069 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 44 transitions. [2022-02-20 16:36:53,069 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:53,069 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:53,069 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:53,081 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Ended with exit code 0 [2022-02-20 16:36:53,277 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:53,278 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:53,278 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:53,278 INFO L85 PathProgramCache]: Analyzing trace with hash -1803097798, now seen corresponding path program 1 times [2022-02-20 16:36:53,279 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:53,279 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [937432905] [2022-02-20 16:36:53,279 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:53,279 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:53,279 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:53,281 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:53,281 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:53,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:53,339 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 16:36:53,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:53,351 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:53,512 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_ceil~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {421#true} is VALID [2022-02-20 16:36:53,515 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:53,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} call ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(ceil_double_~x#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 8bv32);call ceil_double_#t~mem4#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#ew_u~0#1.offset), 4bv32);ceil_double_~i0~0#1 := ceil_double_#t~mem4#1;havoc ceil_double_#t~mem4#1;call ceil_double_#t~mem5#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 4bv32);ceil_double_~i1~0#1 := ceil_double_#t~mem5#1;havoc ceil_double_#t~mem5#1;call ULTIMATE.dealloc(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset);havoc ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset; {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:53,515 INFO L290 TraceCheckUtils]: 3: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} goto; {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:53,516 INFO L290 TraceCheckUtils]: 4: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} ceil_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(ceil_double_~i0~0#1, 20bv32)), 1023bv32); {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:53,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} assume !~bvslt32(ceil_double_~j0~0#1, 20bv32); {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:53,517 INFO L290 TraceCheckUtils]: 6: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} assume !~bvsgt32(ceil_double_~j0~0#1, 51bv32);ceil_double_~i~0#1 := ~bvlshr32(4294967295bv32, ~bvsub32(ceil_double_~j0~0#1, 20bv32)); {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:53,525 INFO L290 TraceCheckUtils]: 7: Hoare triple {429#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} assume 0bv32 == ~bvand32(ceil_double_~i1~0#1, ceil_double_~i~0#1);ceil_double_#res#1 := ceil_double_~x#1; {448#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_ceil_double_#res#1|))} is VALID [2022-02-20 16:36:53,528 INFO L290 TraceCheckUtils]: 8: Hoare triple {448#(exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_ceil_double_#res#1|))} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:53,529 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:53,531 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:53,531 INFO L290 TraceCheckUtils]: 11: Hoare triple {422#false} assume !false; {422#false} is VALID [2022-02-20 16:36:53,531 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:53,531 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:53,532 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:53,532 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [937432905] [2022-02-20 16:36:53,532 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [937432905] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:53,532 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:53,532 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 16:36:53,532 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2140937899] [2022-02-20 16:36:53,532 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:53,532 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:53,532 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:53,533 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:53,554 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:53,554 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 16:36:53,555 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:53,555 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 16:36:53,555 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 16:36:53,555 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:53,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:53,838 INFO L93 Difference]: Finished difference Result 36 states and 48 transitions. [2022-02-20 16:36:53,838 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 16:36:53,838 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:53,838 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:53,838 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:53,839 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-02-20 16:36:53,839 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:53,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-02-20 16:36:53,840 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-02-20 16:36:54,067 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:54,068 INFO L225 Difference]: With dead ends: 36 [2022-02-20 16:36:54,068 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 16:36:54,068 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 16:36:54,069 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:54,069 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:54,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 16:36:54,072 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 16:36:54,072 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:54,073 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:54,073 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:54,073 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:54,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:54,074 INFO L93 Difference]: Finished difference Result 31 states and 43 transitions. [2022-02-20 16:36:54,074 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 43 transitions. [2022-02-20 16:36:54,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:54,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:54,077 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:54,077 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:54,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:54,081 INFO L93 Difference]: Finished difference Result 31 states and 43 transitions. [2022-02-20 16:36:54,082 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 43 transitions. [2022-02-20 16:36:54,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:54,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:54,083 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:54,083 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:54,083 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:54,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 43 transitions. [2022-02-20 16:36:54,085 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 43 transitions. Word has length 12 [2022-02-20 16:36:54,085 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:54,085 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 43 transitions. [2022-02-20 16:36:54,085 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:54,085 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 43 transitions. [2022-02-20 16:36:54,086 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 16:36:54,086 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:54,086 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 16:36:54,096 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:54,294 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:54,296 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:54,297 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:54,297 INFO L85 PathProgramCache]: Analyzing trace with hash -2009966502, now seen corresponding path program 1 times [2022-02-20 16:36:54,297 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:54,297 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [497046790] [2022-02-20 16:36:54,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:54,298 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:54,298 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:54,299 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:54,299 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:54,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:54,401 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 16:36:54,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:54,408 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:54,568 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_ceil~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {606#(= currentRoundingMode roundNearestTiesToEven)} is VALID [2022-02-20 16:36:54,569 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:54,570 INFO L290 TraceCheckUtils]: 2: Hoare triple {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} call ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(ceil_double_~x#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 8bv32);call ceil_double_#t~mem4#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#ew_u~0#1.offset), 4bv32);ceil_double_~i0~0#1 := ceil_double_#t~mem4#1;havoc ceil_double_#t~mem4#1;call ceil_double_#t~mem5#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 4bv32);ceil_double_~i1~0#1 := ceil_double_#t~mem5#1;havoc ceil_double_#t~mem5#1;call ULTIMATE.dealloc(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset);havoc ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset; {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:54,570 INFO L290 TraceCheckUtils]: 3: Hoare triple {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} goto; {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:54,571 INFO L290 TraceCheckUtils]: 4: Hoare triple {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} ceil_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(ceil_double_~i0~0#1, 20bv32)), 1023bv32); {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:54,571 INFO L290 TraceCheckUtils]: 5: Hoare triple {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} assume !~bvslt32(ceil_double_~j0~0#1, 20bv32); {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:54,572 INFO L290 TraceCheckUtils]: 6: Hoare triple {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} assume ~bvsgt32(ceil_double_~j0~0#1, 51bv32); {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} is VALID [2022-02-20 16:36:54,572 INFO L290 TraceCheckUtils]: 7: Hoare triple {610#(and (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))) (= currentRoundingMode roundNearestTiesToEven))} assume 1024bv32 == ceil_double_~j0~0#1;ceil_double_#res#1 := ~fp.add~DOUBLE(currentRoundingMode, ceil_double_~x#1, ceil_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_ceil_double_#res#1|)} is VALID [2022-02-20 16:36:54,573 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_ceil_double_#res#1|)} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:54,573 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:54,573 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:54,574 INFO L290 TraceCheckUtils]: 11: Hoare triple {602#false} assume !false; {602#false} is VALID [2022-02-20 16:36:54,574 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:54,574 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:54,574 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:54,574 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [497046790] [2022-02-20 16:36:54,574 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [497046790] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:54,574 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:54,575 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 16:36:54,575 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1357123643] [2022-02-20 16:36:54,575 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:54,575 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:54,576 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:54,576 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:54,616 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:54,616 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 16:36:54,616 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:54,617 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 16:36:54,617 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 16:36:54,617 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:55,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:55,975 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-02-20 16:36:55,975 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 16:36:55,975 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:55,975 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:55,975 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:55,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 53 transitions. [2022-02-20 16:36:55,976 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:55,977 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 53 transitions. [2022-02-20 16:36:55,977 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 53 transitions. [2022-02-20 16:36:56,178 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:56,179 INFO L225 Difference]: With dead ends: 42 [2022-02-20 16:36:56,179 INFO L226 Difference]: Without dead ends: 21 [2022-02-20 16:36:56,179 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:56,180 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 29 mSDsluCounter, 52 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s 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.0s IncrementalHoareTripleChecker+Time [2022-02-20 16:36:56,180 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.0s Time] [2022-02-20 16:36:56,181 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-02-20 16:36:56,182 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 21. [2022-02-20 16:36:56,182 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:56,182 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:56,182 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:56,182 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:56,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:56,183 INFO L93 Difference]: Finished difference Result 21 states and 22 transitions. [2022-02-20 16:36:56,183 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 22 transitions. [2022-02-20 16:36:56,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:56,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:56,184 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:56,184 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:56,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:56,185 INFO L93 Difference]: Finished difference Result 21 states and 22 transitions. [2022-02-20 16:36:56,185 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 22 transitions. [2022-02-20 16:36:56,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:56,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:56,185 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:56,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:56,185 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:56,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 22 transitions. [2022-02-20 16:36:56,186 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 22 transitions. Word has length 12 [2022-02-20 16:36:56,186 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:56,186 INFO L470 AbstractCegarLoop]: Abstraction has 21 states and 22 transitions. [2022-02-20 16:36:56,187 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:56,187 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 22 transitions. [2022-02-20 16:36:56,187 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 16:36:56,187 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:56,187 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:56,196 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2022-02-20 16:36:56,395 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:56,395 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:56,396 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:56,396 INFO L85 PathProgramCache]: Analyzing trace with hash -649399050, now seen corresponding path program 1 times [2022-02-20 16:36:56,396 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:56,396 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2119602055] [2022-02-20 16:36:56,397 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:56,397 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:56,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:56,398 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:56,398 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:56,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:56,503 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 16:36:56,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:56,516 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:56,665 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_ceil~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {764#true} is VALID [2022-02-20 16:36:56,667 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {772#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:56,673 INFO L290 TraceCheckUtils]: 2: Hoare triple {772#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} call ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(ceil_double_~x#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 8bv32);call ceil_double_#t~mem4#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#ew_u~0#1.offset), 4bv32);ceil_double_~i0~0#1 := ceil_double_#t~mem4#1;havoc ceil_double_#t~mem4#1;call ceil_double_#t~mem5#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 4bv32);ceil_double_~i1~0#1 := ceil_double_#t~mem5#1;havoc ceil_double_#t~mem5#1;call ULTIMATE.dealloc(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset);havoc ceil_double_~#ew_u~0#1.base, ceil_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_ceil_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} is VALID [2022-02-20 16:36:56,674 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_ceil_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_ceil_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} is VALID [2022-02-20 16:36:56,679 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_ceil_double_~i0~0#1| ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_7|))))} ceil_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(ceil_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_ceil_double_~j0~0#1|)))} is VALID [2022-02-20 16:36:56,682 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_ceil_double_~j0~0#1|)))} assume ~bvslt32(ceil_double_~j0~0#1, 20bv32); {765#false} is VALID [2022-02-20 16:36:56,682 INFO L290 TraceCheckUtils]: 6: Hoare triple {765#false} assume ~bvslt32(ceil_double_~j0~0#1, 0bv32); {765#false} is VALID [2022-02-20 16:36:56,682 INFO L290 TraceCheckUtils]: 7: Hoare triple {765#false} assume !~fp.gt~DOUBLE(~fp.add~DOUBLE(currentRoundingMode, ~huge_ceil~0, ceil_double_~x#1), ~Pluszero~DOUBLE()); {765#false} is VALID [2022-02-20 16:36:56,682 INFO L290 TraceCheckUtils]: 8: Hoare triple {765#false} call ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intINTTYPE4(ceil_double_~i0~0#1, ceil_double_~#iw_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#iw_u~0#1.offset), 4bv32);call write~intINTTYPE4(ceil_double_~i1~0#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, 4bv32);call ceil_double_#t~mem6#1 := read~intFLOATTYPE8(ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, 8bv32);ceil_double_~x#1 := ceil_double_#t~mem6#1;havoc ceil_double_#t~mem6#1;call ULTIMATE.dealloc(ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset);havoc ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset; {765#false} is VALID [2022-02-20 16:36:56,682 INFO L290 TraceCheckUtils]: 9: Hoare triple {765#false} goto; {765#false} is VALID [2022-02-20 16:36:56,683 INFO L290 TraceCheckUtils]: 10: Hoare triple {765#false} ceil_double_#res#1 := ceil_double_~x#1; {765#false} is VALID [2022-02-20 16:36:56,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {765#false} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:56,683 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:56,683 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:56,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {765#false} assume !false; {765#false} is VALID [2022-02-20 16:36:56,683 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:56,683 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:56,683 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:56,683 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2119602055] [2022-02-20 16:36:56,683 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2119602055] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:56,684 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:56,684 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 16:36:56,684 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1042682189] [2022-02-20 16:36:56,684 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:56,684 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:56,684 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:56,684 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:56,728 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:56,728 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 16:36:56,728 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:56,728 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 16:36:56,728 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 16:36:56,729 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:57,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:57,332 INFO L93 Difference]: Finished difference Result 29 states and 29 transitions. [2022-02-20 16:36:57,332 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 16:36:57,332 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:57,332 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:57,333 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:57,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-02-20 16:36:57,333 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:57,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-02-20 16:36:57,334 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 29 transitions. [2022-02-20 16:36:57,437 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:57,437 INFO L225 Difference]: With dead ends: 29 [2022-02-20 16:36:57,437 INFO L226 Difference]: Without dead ends: 17 [2022-02-20 16:36:57,437 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:57,438 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:57,438 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:57,441 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2022-02-20 16:36:57,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 17. [2022-02-20 16:36:57,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:57,443 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:57,443 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:57,443 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:57,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:57,444 INFO L93 Difference]: Finished difference Result 17 states and 16 transitions. [2022-02-20 16:36:57,444 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 16 transitions. [2022-02-20 16:36:57,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:57,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:57,444 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:57,444 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:57,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:57,445 INFO L93 Difference]: Finished difference Result 17 states and 16 transitions. [2022-02-20 16:36:57,445 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 16 transitions. [2022-02-20 16:36:57,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:57,446 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:57,446 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:57,446 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:57,446 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:57,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 16 transitions. [2022-02-20 16:36:57,446 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 16 transitions. Word has length 15 [2022-02-20 16:36:57,447 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:57,447 INFO L470 AbstractCegarLoop]: Abstraction has 17 states and 16 transitions. [2022-02-20 16:36:57,447 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:57,447 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 16 transitions. [2022-02-20 16:36:57,447 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 16:36:57,447 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 16:36:57,448 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:57,459 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Forceful destruction successful, exit code 0 [2022-02-20 16:36:57,655 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:57,656 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 16:36:57,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 16:36:57,656 INFO L85 PathProgramCache]: Analyzing trace with hash 101523525, now seen corresponding path program 1 times [2022-02-20 16:36:57,656 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 16:36:57,656 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [339400546] [2022-02-20 16:36:57,656 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 16:36:57,656 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 16:36:57,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 16:36:57,658 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:57,659 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:57,771 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:57,778 INFO L263 TraceCheckSpWp]: Trace formula consists of 61 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 16:36:57,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 16:36:57,789 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 16:36:58,012 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_ceil~0 := ~to_fp~DOUBLE(currentRoundingMode, 1.0E300); {901#true} is VALID [2022-02-20 16:36:58,014 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_ceil_double } true;ceil_double_#in~x#1 := main_~x~0#1;havoc ceil_double_#res#1;havoc ceil_double_#t~mem4#1, ceil_double_#t~mem5#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, ceil_double_#t~mem6#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, ceil_double_~x#1, ceil_double_~i0~0#1, ceil_double_~i1~0#1, ceil_double_~j0~0#1, ceil_double_~i~0#1, ceil_double_~j~0#1;ceil_double_~x#1 := ceil_double_#in~x#1;havoc ceil_double_~i0~0#1;havoc ceil_double_~i1~0#1;havoc ceil_double_~j0~0#1;havoc ceil_double_~i~0#1;havoc ceil_double_~j~0#1; {909#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} is VALID [2022-02-20 16:36:58,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {909#(exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53))))} call ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intFLOATTYPE8(ceil_double_~x#1, ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 8bv32);call ceil_double_#t~mem4#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#ew_u~0#1.offset), 4bv32);ceil_double_~i0~0#1 := ceil_double_#t~mem4#1;havoc ceil_double_#t~mem4#1;call ceil_double_#t~mem5#1 := read~intINTTYPE4(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset, 4bv32);ceil_double_~i1~0#1 := ceil_double_#t~mem5#1;havoc ceil_double_#t~mem5#1;call ULTIMATE.dealloc(ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset);havoc ceil_double_~#ew_u~0#1.base, ceil_double_~#ew_u~0#1.offset; {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_ceil_double_~i0~0#1|) (= (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|)))))} is VALID [2022-02-20 16:36:58,019 INFO L290 TraceCheckUtils]: 3: Hoare triple {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_ceil_double_~i0~0#1|) (= (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|)))))} goto; {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_ceil_double_~i0~0#1|) (= (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|)))))} is VALID [2022-02-20 16:36:58,024 INFO L290 TraceCheckUtils]: 4: Hoare triple {913#(exists ((|v_skolemized_q#valueAsBitvector_9| (_ BitVec 64)) (currentRoundingMode RoundingMode)) (and (= ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) |ULTIMATE.start_ceil_double_~i0~0#1|) (= (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|)))))} ceil_double_~j0~0#1 := ~bvsub32(~bvand32(2047bv32, ~bvashr32(ceil_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_ceil_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:58,025 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_ceil_double_~j0~0#1| (bvadd (bvand (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) (_ bv20 32)) (_ bv2047 32)) (_ bv4294966273 32)))))} assume !~bvslt32(ceil_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_ceil_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:58,028 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_ceil_double_~j0~0#1| (bvadd (bvand (bvashr ((_ extract 63 32) |v_skolemized_q#valueAsBitvector_9|) (_ bv20 32)) (_ bv2047 32)) (_ bv4294966273 32)))))} assume !~bvsgt32(ceil_double_~j0~0#1, 51bv32);ceil_double_~i~0#1 := ~bvlshr32(4294967295bv32, ~bvsub32(ceil_double_~j0~0#1, 20bv32)); {902#false} is VALID [2022-02-20 16:36:58,028 INFO L290 TraceCheckUtils]: 7: Hoare triple {902#false} assume !(0bv32 == ~bvand32(ceil_double_~i1~0#1, ceil_double_~i~0#1)); {902#false} is VALID [2022-02-20 16:36:58,028 INFO L290 TraceCheckUtils]: 8: Hoare triple {902#false} assume !~fp.gt~DOUBLE(~fp.add~DOUBLE(currentRoundingMode, ~huge_ceil~0, ceil_double_~x#1), ~Pluszero~DOUBLE()); {902#false} is VALID [2022-02-20 16:36:58,028 INFO L290 TraceCheckUtils]: 9: Hoare triple {902#false} call ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~intINTTYPE4(ceil_double_~i0~0#1, ceil_double_~#iw_u~0#1.base, ~bvadd32(4bv32, ceil_double_~#iw_u~0#1.offset), 4bv32);call write~intINTTYPE4(ceil_double_~i1~0#1, ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, 4bv32);call ceil_double_#t~mem6#1 := read~intFLOATTYPE8(ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset, 8bv32);ceil_double_~x#1 := ceil_double_#t~mem6#1;havoc ceil_double_#t~mem6#1;call ULTIMATE.dealloc(ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset);havoc ceil_double_~#iw_u~0#1.base, ceil_double_~#iw_u~0#1.offset; {902#false} is VALID [2022-02-20 16:36:58,028 INFO L290 TraceCheckUtils]: 10: Hoare triple {902#false} goto; {902#false} is VALID [2022-02-20 16:36:58,028 INFO L290 TraceCheckUtils]: 11: Hoare triple {902#false} ceil_double_#res#1 := ceil_double_~x#1; {902#false} is VALID [2022-02-20 16:36:58,029 INFO L290 TraceCheckUtils]: 12: Hoare triple {902#false} main_#t~ret7#1 := ceil_double_#res#1;assume { :end_inline_ceil_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:58,029 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:58,029 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:58,029 INFO L290 TraceCheckUtils]: 15: Hoare triple {902#false} assume !false; {902#false} is VALID [2022-02-20 16:36:58,029 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:58,029 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 16:36:58,029 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 16:36:58,029 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [339400546] [2022-02-20 16:36:58,029 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [339400546] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 16:36:58,029 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 16:36:58,030 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 16:36:58,030 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1935027653] [2022-02-20 16:36:58,030 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 16:36:58,030 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:58,030 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 16:36:58,030 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:58,076 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:58,077 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 16:36:58,077 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 16:36:58,077 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 16:36:58,077 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 16:36:58,077 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:58,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:58,106 INFO L93 Difference]: Finished difference Result 17 states and 16 transitions. [2022-02-20 16:36:58,106 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 16:36:58,106 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:58,106 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 16:36:58,107 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:58,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 16 transitions. [2022-02-20 16:36:58,107 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:58,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 16 transitions. [2022-02-20 16:36:58,107 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 16 transitions. [2022-02-20 16:36:58,155 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:58,155 INFO L225 Difference]: With dead ends: 17 [2022-02-20 16:36:58,155 INFO L226 Difference]: Without dead ends: 0 [2022-02-20 16:36:58,155 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:58,156 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:58,156 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:58,157 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-02-20 16:36:58,157 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-02-20 16:36:58,157 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 16:36:58,157 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:58,158 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:58,158 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:58,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:58,158 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 16:36:58,158 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 16:36:58,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:58,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:58,158 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:58,158 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:58,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 16:36:58,158 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 16:36:58,158 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 16:36:58,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:58,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 16:36:58,159 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 16:36:58,159 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 16:36:58,159 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:58,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-02-20 16:36:58,159 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 16 [2022-02-20 16:36:58,159 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 16:36:58,159 INFO L470 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-02-20 16:36:58,159 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:58,159 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 16:36:58,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 16:36:58,161 INFO L764 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 16:36:58,171 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:58,361 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:58,363 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point L60(lines 60 61) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point L44(lines 44 45) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startENTRY(line -1) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point L53(lines 53 75) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point L37(lines 37 40) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point L62(lines 62 74) no Hoare annotation was computed. [2022-02-20 16:36:58,411 INFO L858 garLoopResultBuilder]: For program point L54(lines 54 57) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L46(lines 46 51) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L96(lines 96 99) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L63(lines 63 72) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L63-1(lines 63 72) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L47(lines 47 48) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L47-2(lines 47 48) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L97(line 97) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L64(lines 64 71) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L31(lines 31 75) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L32(lines 32 52) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L-1(line -1) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION(line 97) no Hoare annotation was computed. [2022-02-20 16:36:58,412 INFO L858 garLoopResultBuilder]: For program point L24-1(lines 24 29) no Hoare annotation was computed. [2022-02-20 16:36:58,413 INFO L854 garLoopResultBuilder]: At program point L24-2(lines 24 29) the Hoare annotation is: (and (exists ((currentRoundingMode RoundingMode)) (= |ULTIMATE.start_ceil_double_~x#1| (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)))) (= currentRoundingMode roundNearestTiesToEven)) [2022-02-20 16:36:58,413 INFO L858 garLoopResultBuilder]: For program point L24-3(lines 24 29) no Hoare annotation was computed. [2022-02-20 16:36:58,413 INFO L854 garLoopResultBuilder]: At program point L82(lines 21 83) the Hoare annotation is: (exists ((currentRoundingMode RoundingMode)) (= (fp.div currentRoundingMode (_ +zero 11 53) (_ +zero 11 53)) |ULTIMATE.start_ceil_double_#res#1|)) [2022-02-20 16:36:58,413 INFO L858 garLoopResultBuilder]: For program point L33(lines 33 41) no Hoare annotation was computed. [2022-02-20 16:36:58,413 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-02-20 16:36:58,413 INFO L854 garLoopResultBuilder]: At program point L17(line 17) the Hoare annotation is: (= (_ bv1 32) |ULTIMATE.start_isnan_double_#res#1|) [2022-02-20 16:36:58,413 INFO L858 garLoopResultBuilder]: For program point L34(lines 34 40) no Hoare annotation was computed. [2022-02-20 16:36:58,413 INFO L858 garLoopResultBuilder]: For program point L76(lines 76 81) no Hoare annotation was computed. [2022-02-20 16:36:58,414 INFO L858 garLoopResultBuilder]: For program point L76-1(lines 21 83) no Hoare annotation was computed. [2022-02-20 16:36:58,414 INFO L858 garLoopResultBuilder]: For program point L76-2(lines 76 81) no Hoare annotation was computed. [2022-02-20 16:36:58,414 INFO L861 garLoopResultBuilder]: At program point L101(lines 85 102) the Hoare annotation is: true [2022-02-20 16:36:58,414 INFO L858 garLoopResultBuilder]: For program point L68(lines 68 69) no Hoare annotation was computed. [2022-02-20 16:36:58,414 INFO L858 garLoopResultBuilder]: For program point L68-2(lines 68 69) no Hoare annotation was computed. [2022-02-20 16:36:58,416 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1] [2022-02-20 16:36:58,417 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 16:36:58,419 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 16:36:58,419 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 16:36:58,419 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-02-20 16:36:58,419 WARN L170 areAnnotationChecker]: L24-3 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L24-3 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:58,420 WARN L170 areAnnotationChecker]: L33 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L44 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L44 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L76-1 has no Hoare annotation [2022-02-20 16:36:58,421 WARN L170 areAnnotationChecker]: L76-1 has no Hoare annotation [2022-02-20 16:36:58,424 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-02-20 16:36:58,424 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-02-20 16:36:58,424 WARN L170 areAnnotationChecker]: L62 has no Hoare annotation [2022-02-20 16:36:58,424 WARN L170 areAnnotationChecker]: L62 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L76-2 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-02-20 16:36:58,425 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L47-2 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L63-1 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L97 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L97 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L68 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L68 has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 16:36:58,426 WARN L170 areAnnotationChecker]: L68-2 has no Hoare annotation [2022-02-20 16:36:58,427 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:58,432 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,432 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2022-02-20 16:36:58,432 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,433 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2022-02-20 16:36:58,433 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,433 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,434 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 04:36:58 BoogieIcfgContainer [2022-02-20 16:36:58,434 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 16:36:58,434 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 16:36:58,434 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 16:36:58,434 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 16:36:58,434 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:50" (3/4) ... [2022-02-20 16:36:58,436 INFO L137 WitnessPrinter]: Generating witness for correct program [2022-02-20 16:36:58,442 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 18 nodes and edges [2022-02-20 16:36:58,443 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 7 nodes and edges [2022-02-20 16:36:58,443 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2022-02-20 16:36:58,456 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2022-02-20 16:36:58,471 WARN L220 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: (\exists currentRoundingMode : FloatRoundingMode :: x == ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~LONGDOUBLE(), ~Pluszero~LONGDOUBLE())) && unknown-currentRoundingMode-unknown == ~roundNearestTiesToEven [2022-02-20 16:36:58,472 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:58,472 WARN L220 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: 1bv32 == \result [2022-02-20 16:36:58,480 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2022-02-20 16:36:58,481 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 16:36:58,481 INFO L158 Benchmark]: Toolchain (without parser) took 10091.56ms. Allocated memory was 50.3MB in the beginning and 65.0MB in the end (delta: 14.7MB). Free memory was 27.4MB in the beginning and 26.6MB in the end (delta: 788.4kB). Peak memory consumption was 17.4MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,482 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 50.3MB. Free memory was 32.1MB in the beginning and 32.1MB in the end (delta: 37.6kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 16:36:58,482 INFO L158 Benchmark]: CACSL2BoogieTranslator took 257.02ms. Allocated memory was 50.3MB in the beginning and 65.0MB in the end (delta: 14.7MB). Free memory was 27.2MB in the beginning and 45.0MB in the end (delta: -17.8MB). Peak memory consumption was 11.9MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,482 INFO L158 Benchmark]: Boogie Procedure Inliner took 53.03ms. Allocated memory is still 65.0MB. Free memory was 44.8MB in the beginning and 42.8MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,482 INFO L158 Benchmark]: Boogie Preprocessor took 54.33ms. Allocated memory is still 65.0MB. Free memory was 42.8MB in the beginning and 41.0MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,482 INFO L158 Benchmark]: RCFGBuilder took 1321.43ms. Allocated memory is still 65.0MB. Free memory was 41.0MB in the beginning and 42.0MB in the end (delta: -1.1MB). Peak memory consumption was 10.3MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,483 INFO L158 Benchmark]: TraceAbstraction took 8354.03ms. Allocated memory is still 65.0MB. Free memory was 41.5MB in the beginning and 30.1MB in the end (delta: 11.4MB). Peak memory consumption was 9.8MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,483 INFO L158 Benchmark]: Witness Printer took 46.76ms. Allocated memory is still 65.0MB. Free memory was 30.1MB in the beginning and 26.6MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 16:36:58,484 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 50.3MB. Free memory was 32.1MB in the beginning and 32.1MB in the end (delta: 37.6kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 257.02ms. Allocated memory was 50.3MB in the beginning and 65.0MB in the end (delta: 14.7MB). Free memory was 27.2MB in the beginning and 45.0MB in the end (delta: -17.8MB). Peak memory consumption was 11.9MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 53.03ms. Allocated memory is still 65.0MB. Free memory was 44.8MB in the beginning and 42.8MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 54.33ms. Allocated memory is still 65.0MB. Free memory was 42.8MB in the beginning and 41.0MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 1321.43ms. Allocated memory is still 65.0MB. Free memory was 41.0MB in the beginning and 42.0MB in the end (delta: -1.1MB). Peak memory consumption was 10.3MB. Max. memory is 16.1GB. * TraceAbstraction took 8354.03ms. Allocated memory is still 65.0MB. Free memory was 41.5MB in the beginning and 30.1MB in the end (delta: 11.4MB). Peak memory consumption was 9.8MB. Max. memory is 16.1GB. * Witness Printer took 46.76ms. Allocated memory is still 65.0MB. Free memory was 30.1MB in the beginning and 26.6MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. 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 Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven - 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 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] * 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: 97]: 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.3s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 5.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 43 SdHoareTripleChecker+Valid, 1.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 43 mSDsluCounter, 455 SdHoareTripleChecker+Invalid, 1.1s 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.1s AutomataMinimizationTime, 6 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 4 LocationsWithAnnotation, 4 PreInvPairs, 10 NumberOfFragments, 22 HoareAnnotationTreeSize, 4 FomulaSimplifications, 26 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 4 FomulaSimplificationsInter, 29 FormulaSimplificationTreeSizeReductionInter, 0.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 1.2s 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: 17]: Loop Invariant Derived loop invariant: 1bv32 == \result - InvariantResult [Line: 85]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 24]: Loop Invariant [2022-02-20 16:36:58,490 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,490 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven [2022-02-20 16:36:58,490 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,491 WARN L418 cessorBacktranslator]: Unfinished backtranslation: Declaration ConstDeclaration not handled for expression ~roundNearestTiesToEven Derived loop invariant: (\exists currentRoundingMode : FloatRoundingMode :: x == ~fp.div~DOUBLE(currentRoundingMode, ~Pluszero~LONGDOUBLE(), ~Pluszero~LONGDOUBLE())) && unknown-currentRoundingMode-unknown == ~roundNearestTiesToEven - InvariantResult [Line: 21]: Loop Invariant [2022-02-20 16:36:58,491 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[currentRoundingMode,QUANTIFIED] [2022-02-20 16:36:58,491 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) RESULT: Ultimate proved your program to be correct! [2022-02-20 16:36:58,528 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