./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version aa418289 Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/config/TaipanReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Taipan --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 7d19ae2d93dd4f9ccec1d28558a563787c68b3eb .............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/config/TaipanReach.xml -i ../../sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Taipan --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 7d19ae2d93dd4f9ccec1d28558a563787c68b3eb ..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 15:41:15,745 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 15:41:15,746 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 15:41:15,753 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 15:41:15,753 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 15:41:15,754 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 15:41:15,755 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 15:41:15,756 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 15:41:15,757 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 15:41:15,758 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 15:41:15,758 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 15:41:15,759 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 15:41:15,759 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 15:41:15,760 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 15:41:15,761 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 15:41:15,761 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 15:41:15,761 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 15:41:15,762 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 15:41:15,764 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 15:41:15,765 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 15:41:15,765 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 15:41:15,766 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 15:41:15,767 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 15:41:15,767 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 15:41:15,768 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 15:41:15,768 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 15:41:15,769 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 15:41:15,770 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 15:41:15,770 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 15:41:15,771 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 15:41:15,771 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 15:41:15,772 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 15:41:15,772 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 15:41:15,772 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 15:41:15,773 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 15:41:15,773 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 15:41:15,773 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Default.epf [2018-11-23 15:41:15,783 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 15:41:15,783 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 15:41:15,784 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 15:41:15,784 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 15:41:15,784 INFO L133 SettingsManager]: * User list type=DISABLED [2018-11-23 15:41:15,784 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-11-23 15:41:15,784 INFO L133 SettingsManager]: * Explicit value domain=true [2018-11-23 15:41:15,785 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2018-11-23 15:41:15,785 INFO L133 SettingsManager]: * Octagon Domain=false [2018-11-23 15:41:15,785 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2018-11-23 15:41:15,785 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2018-11-23 15:41:15,785 INFO L133 SettingsManager]: * Use the RCFG-of-the-future interface=true [2018-11-23 15:41:15,785 INFO L133 SettingsManager]: * Interval Domain=false [2018-11-23 15:41:15,786 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 15:41:15,786 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 15:41:15,786 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 15:41:15,786 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 15:41:15,786 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 15:41:15,787 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 15:41:15,788 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 15:41:15,788 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 15:41:15,788 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 15:41:15,788 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 15:41:15,788 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 15:41:15,788 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 15:41:15,788 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 15:41:15,789 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 15:41:15,789 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2018-11-23 15:41:15,789 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 15:41:15,789 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 15:41:15,789 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 15:41:15,789 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES 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 -> /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan 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(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Taipan 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 -> 7d19ae2d93dd4f9ccec1d28558a563787c68b3eb [2018-11-23 15:41:15,814 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 15:41:15,824 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 15:41:15,826 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 15:41:15,828 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 15:41:15,828 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 15:41:15,829 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/../../sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c [2018-11-23 15:41:15,877 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/ca1f304de/c445c56c0b4145f9a125ad3a0e60d9c3/FLAG57b78ac56 [2018-11-23 15:41:16,224 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 15:41:16,224 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c [2018-11-23 15:41:16,232 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/ca1f304de/c445c56c0b4145f9a125ad3a0e60d9c3/FLAG57b78ac56 [2018-11-23 15:41:16,640 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/ca1f304de/c445c56c0b4145f9a125ad3a0e60d9c3 [2018-11-23 15:41:16,643 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 15:41:16,645 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 15:41:16,645 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 15:41:16,645 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 15:41:16,648 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 15:41:16,648 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,651 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@28603259 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16, skipping insertion in model container [2018-11-23 15:41:16,651 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,661 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 15:41:16,684 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 15:41:16,838 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 15:41:16,841 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 15:41:16,872 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 15:41:16,889 INFO L195 MainTranslator]: Completed translation [2018-11-23 15:41:16,889 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16 WrapperNode [2018-11-23 15:41:16,890 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 15:41:16,890 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 15:41:16,890 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 15:41:16,890 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 15:41:16,941 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,953 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,960 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 15:41:16,961 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 15:41:16,961 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 15:41:16,961 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 15:41:16,969 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,969 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,971 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,971 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,982 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,988 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,989 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... [2018-11-23 15:41:16,991 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 15:41:16,992 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 15:41:16,992 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 15:41:16,992 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 15:41:16,993 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 15:41:17,031 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 15:41:17,032 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 15:41:17,032 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_float [2018-11-23 15:41:17,032 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_float [2018-11-23 15:41:17,032 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 15:41:17,032 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 15:41:17,032 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 15:41:17,033 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 15:41:17,033 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 15:41:17,033 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 15:41:17,033 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 15:41:17,033 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 15:41:17,033 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 15:41:17,033 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 15:41:17,033 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_float [2018-11-23 15:41:17,034 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_float [2018-11-23 15:41:17,034 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 15:41:17,335 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 15:41:17,335 INFO L280 CfgBuilder]: Removed 12 assue(true) statements. [2018-11-23 15:41:17,335 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 03:41:17 BoogieIcfgContainer [2018-11-23 15:41:17,335 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 15:41:17,336 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 15:41:17,336 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 15:41:17,338 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 15:41:17,338 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 03:41:16" (1/3) ... [2018-11-23 15:41:17,339 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4c1c9cea and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 03:41:17, skipping insertion in model container [2018-11-23 15:41:17,339 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:16" (2/3) ... [2018-11-23 15:41:17,339 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4c1c9cea and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 03:41:17, skipping insertion in model container [2018-11-23 15:41:17,339 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 03:41:17" (3/3) ... [2018-11-23 15:41:17,341 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_1121a_true-unreach-call.c [2018-11-23 15:41:17,348 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 15:41:17,354 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 15:41:17,365 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 15:41:17,393 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 15:41:17,393 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 15:41:17,393 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 15:41:17,393 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 15:41:17,393 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 15:41:17,393 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 15:41:17,393 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 15:41:17,394 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 15:41:17,409 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states. [2018-11-23 15:41:17,414 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 15:41:17,415 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 15:41:17,415 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 15:41:17,417 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 15:41:17,421 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 15:41:17,421 INFO L82 PathProgramCache]: Analyzing trace with hash -348005672, now seen corresponding path program 1 times [2018-11-23 15:41:17,423 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 15:41:17,459 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 15:41:17,459 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 15:41:17,459 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 15:41:17,459 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 15:41:17,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 15:41:17,534 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 15:41:17,537 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 15:41:17,537 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 15:41:17,537 INFO L256 anRefinementStrategy]: Using the first perfect interpolant sequence [2018-11-23 15:41:17,541 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 15:41:17,550 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 15:41:17,551 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 15:41:17,553 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 2 states. [2018-11-23 15:41:17,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 15:41:17,570 INFO L93 Difference]: Finished difference Result 102 states and 158 transitions. [2018-11-23 15:41:17,570 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 15:41:17,571 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 22 [2018-11-23 15:41:17,571 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 15:41:17,582 INFO L225 Difference]: With dead ends: 102 [2018-11-23 15:41:17,582 INFO L226 Difference]: Without dead ends: 51 [2018-11-23 15:41:17,586 INFO L631 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 [2018-11-23 15:41:17,601 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-23 15:41:17,614 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2018-11-23 15:41:17,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 15:41:17,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 66 transitions. [2018-11-23 15:41:17,619 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 66 transitions. Word has length 22 [2018-11-23 15:41:17,619 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 15:41:17,619 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 66 transitions. [2018-11-23 15:41:17,619 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 15:41:17,619 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 66 transitions. [2018-11-23 15:41:17,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 15:41:17,620 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 15:41:17,621 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 15:41:17,621 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 15:41:17,621 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 15:41:17,621 INFO L82 PathProgramCache]: Analyzing trace with hash 1100584309, now seen corresponding path program 1 times [2018-11-23 15:41:17,621 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2018-11-23 15:41:17,623 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 15:41:17,623 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 15:41:17,623 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 15:41:17,623 INFO L286 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2018-11-23 15:41:17,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 15:41:17,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 15:41:17,719 INFO L469 BasicCegarLoop]: Counterexample might be feasible ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); VAL [|#NULL.base|=6442450953, |#NULL.offset|=6442450945, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450955, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450957.0, |~#Zero_fmod~0.base|=6442450955, |~#Zero_fmod~0.offset|=6442450952, ~one_fmod~0=6442450957.0] [?] #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~one_fmod~0 := 1.0;call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8);call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4);call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450955, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450957.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [|#NULL.base|=0, |#NULL.offset|=0, |old(#NULL.base)|=6442450953, |old(#NULL.offset)|=6442450945, |old(~#Zero_fmod~0.base)|=6442450955, |old(~#Zero_fmod~0.offset)|=6442450952, |old(~one_fmod~0)|=6442450957.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #187#return; VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x~0 := #t~nondet12;havoc #t~nondet12;~y~0 := 0.0; VAL [main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x := #in~x;~y := #in~y;havoc ~n~0;havoc ~hx~0;havoc ~hy~0;havoc ~hz~0;havoc ~ix~0;havoc ~iy~0;havoc ~sx~0;havoc ~i~0; VAL [fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call ~#gf_u~0.base, ~#gf_u~0.offset := #Ultimate.alloc(4);call write~real(~x, ~#gf_u~0.base, ~#gf_u~0.offset, 4);call #t~mem0 := read~int(~#gf_u~0.base, ~#gf_u~0.offset, 4);~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union1, ~#gf_u~0.base, ~#gf_u~0.offset, 4);havoc #t~mem0;havoc #t~union1;call ULTIMATE.dealloc(~#gf_u~0.base, ~#gf_u~0.offset);havoc ~#gf_u~0.base, ~#gf_u~0.offset; VAL [fmod_float_~hx~0=3, fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [fmod_float_~hx~0=3, fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4);call write~real(~y, ~#gf_u~1.base, ~#gf_u~1.offset, 4);call #t~mem2 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4);~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296);call write~real(#t~union3, ~#gf_u~1.base, ~#gf_u~1.offset, 4);havoc #t~mem2;havoc #t~union3;call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset);havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [fmod_float_~hx~0=3, fmod_float_~hy~0=(- 2147483648), fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] goto; VAL [fmod_float_~hx~0=3, fmod_float_~hy~0=(- 2147483648), fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296);~hx~0 := ~bitwiseXor(~hx~0, ~sx~0);~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [fmod_float_~sx~0=(- 1), fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040;#res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [fmod_float_~hx~0=2139095040, fmod_float_~hy~0=2139095041, fmod_float_~sx~0=(- 1), fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [fmod_float_~hx~0=2139095040, fmod_float_~hy~0=2139095041, fmod_float_~sx~0=(- 1), fmod_float_~x=6442450949.0, fmod_float_~y=0.0, |#NULL.base|=0, |#NULL.offset|=0, |fmod_float_#in~x|=6442450949.0, |fmod_float_#in~y|=0.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #191#return; VAL [main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret13|=6442450948.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~res~0 := #t~ret13;havoc #t~ret13; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call #t~ret14 := isnan_float(~res~0); VAL [|#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=6442450948.0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] ~x := #in~x;#res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [isnan_float_~x=6442450948.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=6442450948.0, |isnan_float_#res|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume true; VAL [isnan_float_~x=6442450948.0, |#NULL.base|=0, |#NULL.offset|=0, |isnan_float_#in~x|=6442450948.0, |isnan_float_#res|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] RET #193#return; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret14|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |main_#t~ret14|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume 0 == #t~ret14;havoc #t~ret14; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] assume !false; VAL [main_~res~0=6442450948.0, main_~x~0=6442450949.0, main_~y~0=0.0, |#NULL.base|=0, |#NULL.offset|=0, |~#Zero_fmod~0.base|=6442450954, |~#Zero_fmod~0.offset|=0, ~one_fmod~0=1.0] [?] CALL call ULTIMATE.init(); VAL [#NULL.base=6442450953, #NULL.offset=6442450945, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450955, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=6442450952, ~one_fmod~0=6.442450957E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8); [L12-L15] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4); [L12-L15] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450955, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450955, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := 0.0; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L21] call ~#gf_u~0.base, ~#gf_u~0.offset := #Ultimate.alloc(4); [L22] call write~real(~x, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] call #t~mem0 := read~int(~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] call write~real(#t~union1, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] call ULTIMATE.dealloc(~#gf_u~0.base, ~#gf_u~0.offset); [L21] havoc ~#gf_u~0.base, ~#gf_u~0.offset; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L26] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L27] call write~real(~y, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] call #t~mem2 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] call write~real(#t~union3, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] havoc #t~mem2; [L28] havoc #t~union3; [L26] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L26] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L34-L35] assume (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040; [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L17-L105] ensures true; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L119] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] ~res~0 := #t~ret13; [L119] havoc #t~ret13; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L108] ensures true; VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L122] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122-L125] assume 0 == #t~ret14; [L122] havoc #t~ret14; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L123] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL.base=6442450953, #NULL.offset=6442450945, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450955, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0.base=6442450955, ~#Zero_fmod~0.offset=6442450952, ~one_fmod~0=6.442450957E9] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] call ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset := #Ultimate.alloc(8); [L12-L15] call write~init~real(0.0, ~#Zero_fmod~0.base, ~#Zero_fmod~0.offset, 4); [L12-L15] call write~init~real(~someUnaryDOUBLEoperation(0.0), ~#Zero_fmod~0.base, 4 + ~#Zero_fmod~0.offset, 4); VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450955, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] ensures true; VAL [#NULL.base=0, #NULL.offset=0, old(#NULL.base)=6442450953, old(#NULL.offset)=6442450945, old(~#Zero_fmod~0.base)=6442450955, old(~#Zero_fmod~0.offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := 0.0; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L21] call ~#gf_u~0.base, ~#gf_u~0.offset := #Ultimate.alloc(4); [L22] call write~real(~x, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] call #t~mem0 := read~int(~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] call write~real(#t~union1, ~#gf_u~0.base, ~#gf_u~0.offset, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] call ULTIMATE.dealloc(~#gf_u~0.base, ~#gf_u~0.offset); [L21] havoc ~#gf_u~0.base, ~#gf_u~0.offset; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L26] call ~#gf_u~1.base, ~#gf_u~1.offset := #Ultimate.alloc(4); [L27] call write~real(~y, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] call #t~mem2 := read~int(~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] call write~real(#t~union3, ~#gf_u~1.base, ~#gf_u~1.offset, 4); [L28] havoc #t~mem2; [L28] havoc #t~union3; [L26] call ULTIMATE.dealloc(~#gf_u~1.base, ~#gf_u~1.offset); [L26] havoc ~#gf_u~1.base, ~#gf_u~1.offset; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L34-L35] assume (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040; [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L17-L105] ensures true; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L119] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] ~res~0 := #t~ret13; [L119] havoc #t~ret13; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L108] ensures true; VAL [#in~x=6.442450948E9, #NULL.base=0, #NULL.offset=0, #res=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L122] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL.base=0, #NULL.offset=0, #t~ret14=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122-L125] assume 0 == #t~ret14; [L122] havoc #t~ret14; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L123] assert false; VAL [#NULL.base=0, #NULL.offset=0, ~#Zero_fmod~0.base=6442450954, ~#Zero_fmod~0.offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450957E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := 0.0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~mem2; [L28] havoc #t~union3; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L119] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] ~res~0 := #t~ret13; [L119] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L122] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] COND TRUE 0 == #t~ret14 [L122] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L123] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450957E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := 0.0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~mem2; [L28] havoc #t~union3; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L119] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] ~res~0 := #t~ret13; [L119] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L122] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] COND TRUE 0 == #t~ret14 [L122] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L123] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450957E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := 0.0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~mem2; [L28] havoc #t~union3; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L119] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] ~res~0 := #t~ret13; [L119] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L122] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] COND TRUE 0 == #t~ret14 [L122] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L123] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); VAL [#NULL!base=6442450953, #NULL!offset=6442450945, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450955, ~#Zero_fmod~0!offset=6442450952, ~one_fmod~0=6.442450957E9] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L12-L15] ~one_fmod~0 := 1.0; [L12-L15] FCALL call ~#Zero_fmod~0 := #Ultimate.alloc(8); [L12-L15] FCALL call write~init~real(0.0, { base: ~#Zero_fmod~0!base, offset: ~#Zero_fmod~0!offset }, 4); [L12-L15] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0), { base: ~#Zero_fmod~0!base, offset: 4 + ~#Zero_fmod~0!offset }, 4); VAL [#NULL!base=0, #NULL!offset=0, old(#NULL!base)=6442450953, old(#NULL!offset)=6442450945, old(~#Zero_fmod~0!base)=6442450955, old(~#Zero_fmod~0!offset)=6442450952, old(~one_fmod~0)=6.442450957E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] RET call ULTIMATE.init(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [?] CALL call #t~ret15 := main(); VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L116] ~x~0 := #t~nondet12; [L116] havoc #t~nondet12; [L117] ~y~0 := 0.0; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] CALL call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L17-L105] ~x := #in~x; [L17-L105] ~y := #in~y; [L18] havoc ~n~0; [L18] havoc ~hx~0; [L18] havoc ~hy~0; [L18] havoc ~hz~0; [L18] havoc ~ix~0; [L18] havoc ~iy~0; [L18] havoc ~sx~0; [L18] havoc ~i~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L21] FCALL call ~#gf_u~0 := #Ultimate.alloc(4); [L22] FCALL call write~real(~x, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] FCALL call #t~mem0 := read~int({ base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] ~hx~0 := (if #t~mem0 % 4294967296 % 4294967296 <= 2147483647 then #t~mem0 % 4294967296 % 4294967296 else #t~mem0 % 4294967296 % 4294967296 - 4294967296); [L23] FCALL call write~real(#t~union1, { base: ~#gf_u~0!base, offset: ~#gf_u~0!offset }, 4); [L23] havoc #t~mem0; [L23] havoc #t~union1; [L21] FCALL call ULTIMATE.dealloc(~#gf_u~0); [L21] havoc ~#gf_u~0; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L26] FCALL call ~#gf_u~1 := #Ultimate.alloc(4); [L27] FCALL call write~real(~y, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] FCALL call #t~mem2 := read~int({ base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] ~hy~0 := (if #t~mem2 % 4294967296 % 4294967296 <= 2147483647 then #t~mem2 % 4294967296 % 4294967296 else #t~mem2 % 4294967296 % 4294967296 - 4294967296); [L28] FCALL call write~real(#t~union3, { base: ~#gf_u~1!base, offset: ~#gf_u~1!offset }, 4); [L28] havoc #t~mem2; [L28] havoc #t~union3; [L26] FCALL call ULTIMATE.dealloc(~#gf_u~1); [L26] havoc ~#gf_u~1; VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=3, ~hy~0=-2147483648, ~one_fmod~0=1.0, ~x=6.442450949E9, ~y=0.0] [L30] ~sx~0 := (if ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 else ~bitwiseAnd(~hx~0, 2147483648) % 4294967296 % 4294967296 - 4294967296); [L31] ~hx~0 := ~bitwiseXor(~hx~0, ~sx~0); [L32] ~hy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L34] COND TRUE (0 == ~hy~0 || !(~hx~0 < 2139095040)) || ~hy~0 > 2139095040 [L35] #res := ~someBinaryArithmeticFLOAToperation(~someBinaryArithmeticFLOAToperation(~x, ~y), ~someBinaryArithmeticFLOAToperation(~x, ~y)); VAL [#in~x=6.442450949E9, #in~y=0.0, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~hx~0=2139095040, ~hy~0=2139095041, ~one_fmod~0=1.0, ~sx~0=-1, ~x=6.442450949E9, ~y=0.0] [L119] RET call #t~ret13 := fmod_float(~x~0, ~y~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret13=6.442450948E9, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x~0=6.442450949E9, ~y~0=0.0] [L119] ~res~0 := #t~ret13; [L119] havoc #t~ret13; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] CALL call #t~ret14 := isnan_float(~res~0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0] [L108] ~x := #in~x; [L108] #res := (if ~someBinaryFLOATComparisonOperation(~x, ~x) then 1 else 0); VAL [#in~x=6.442450948E9, #NULL!base=0, #NULL!offset=0, #res=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~x=6.442450948E9] [L122] RET call #t~ret14 := isnan_float(~res~0); VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; VAL [#NULL!base=0, #NULL!offset=0, #t~ret14=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L122] COND TRUE 0 == #t~ret14 [L122] havoc #t~ret14; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L123] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#Zero_fmod~0!base=6442450954, ~#Zero_fmod~0!offset=0, ~one_fmod~0=1.0, ~res~0=6.442450948E9, ~x~0=6.442450949E9, ~y~0=0.0] [L12-L15] static const float one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; VAL [\old(one_fmod)=6442450957, \old(Zero_fmod)=6442450952, \old(Zero_fmod)=6442450955, one_fmod=1, Zero_fmod={6442450954:0}] [L116] float x = __VERIFIER_nondet_float(); [L117] float y = 0.0f; VAL [one_fmod=1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L119] CALL, EXPR fmod_float(x, y) VAL [\old(x)=6442450949, \old(y)=0, one_fmod=1, Zero_fmod={6442450954:0}] [L18] __int32_t n, hx, hy, hz, ix, iy, sx, i; VAL [\old(x)=6442450949, \old(y)=0, one_fmod=1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L21] ieee_float_shape_type gf_u; [L22] gf_u.value = (x) [L23] EXPR gf_u.word [L23] (hx) = gf_u.word [L26] ieee_float_shape_type gf_u; [L27] gf_u.value = (y) [L28] EXPR gf_u.word [L28] (hy) = gf_u.word [L30] sx = hx & 0x80000000 [L31] hx ^= sx [L32] hy &= 0x7fffffff VAL [\old(x)=6442450949, \old(y)=0, one_fmod=1, sx=-1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L34] COND TRUE ((hy) == 0) || !((hx) < 0x7f800000L) || ((hy) > 0x7f800000L) [L35] return (x * y) / (x * y); VAL [\old(x)=6442450949, \old(y)=0, hx=2139095040, hy=2139095041, one_fmod=1, sx=-1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L119] RET, EXPR fmod_float(x, y) VAL [fmod_float(x, y)=6442450948, one_fmod=1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L119] float res = fmod_float(x, y); [L122] CALL, EXPR isnan_float(res) VAL [\old(x)=6442450948, one_fmod=1, Zero_fmod={6442450954:0}] [L108] return x != x; VAL [\old(x)=6442450948, \result=0, one_fmod=1, x=6442450948, Zero_fmod={6442450954:0}] [L122] RET, EXPR isnan_float(res) VAL [isnan_float(res)=0, one_fmod=1, res=6442450948, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L122] COND TRUE !isnan_float(res) [L123] __VERIFIER_error() VAL [one_fmod=1, res=6442450948, x=6442450949, y=0, Zero_fmod={6442450954:0}] ----- [2018-11-23 15:41:17,769 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 03:41:17 BoogieIcfgContainer [2018-11-23 15:41:17,769 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 15:41:17,770 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 15:41:17,770 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 15:41:17,770 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 15:41:17,771 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 03:41:17" (3/4) ... [2018-11-23 15:41:17,774 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 15:41:17,774 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 15:41:17,775 INFO L168 Benchmark]: Toolchain (without parser) took 1131.12 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 166.2 MB). Free memory was 959.8 MB in the beginning and 1.1 GB in the end (delta: -128.4 MB). Peak memory consumption was 37.8 MB. Max. memory is 11.5 GB. [2018-11-23 15:41:17,777 INFO L168 Benchmark]: CDTParser took 0.17 ms. Allocated memory is still 1.0 GB. Free memory is still 985.3 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 15:41:17,777 INFO L168 Benchmark]: CACSL2BoogieTranslator took 244.72 ms. Allocated memory is still 1.0 GB. Free memory was 959.8 MB in the beginning and 946.4 MB in the end (delta: 13.4 MB). Peak memory consumption was 13.4 MB. Max. memory is 11.5 GB. [2018-11-23 15:41:17,778 INFO L168 Benchmark]: Boogie Procedure Inliner took 70.39 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 166.2 MB). Free memory was 946.4 MB in the beginning and 1.2 GB in the end (delta: -215.5 MB). Peak memory consumption was 14.1 MB. Max. memory is 11.5 GB. [2018-11-23 15:41:17,778 INFO L168 Benchmark]: Boogie Preprocessor took 30.89 ms. Allocated memory is still 1.2 GB. Free memory is still 1.2 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 15:41:17,779 INFO L168 Benchmark]: RCFGBuilder took 343.61 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 29.5 MB). Peak memory consumption was 29.5 MB. Max. memory is 11.5 GB. [2018-11-23 15:41:17,779 INFO L168 Benchmark]: TraceAbstraction took 433.56 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 44.2 MB). Peak memory consumption was 44.2 MB. Max. memory is 11.5 GB. [2018-11-23 15:41:17,780 INFO L168 Benchmark]: Witness Printer took 4.59 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 15:41:17,783 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.17 ms. Allocated memory is still 1.0 GB. Free memory is still 985.3 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 244.72 ms. Allocated memory is still 1.0 GB. Free memory was 959.8 MB in the beginning and 946.4 MB in the end (delta: 13.4 MB). Peak memory consumption was 13.4 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 70.39 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 166.2 MB). Free memory was 946.4 MB in the beginning and 1.2 GB in the end (delta: -215.5 MB). Peak memory consumption was 14.1 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 30.89 ms. Allocated memory is still 1.2 GB. Free memory is still 1.2 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 343.61 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 29.5 MB). Peak memory consumption was 29.5 MB. Max. memory is 11.5 GB. * TraceAbstraction took 433.56 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 44.2 MB). Peak memory consumption was 44.2 MB. Max. memory is 11.5 GB. * Witness Printer took 4.59 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 123]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 108, overapproximation of someUnaryDOUBLEoperation at line 14, overapproximation of bitwiseAnd at line 30, overapproximation of bitwiseXor at line 31, overapproximation of someBinaryArithmeticFLOAToperation at line 35. Possible FailurePath: [L12-L15] static const float one_fmod = 1.0, Zero_fmod[] = { 0.0, -0.0, }; VAL [\old(one_fmod)=6442450957, \old(Zero_fmod)=6442450952, \old(Zero_fmod)=6442450955, one_fmod=1, Zero_fmod={6442450954:0}] [L116] float x = __VERIFIER_nondet_float(); [L117] float y = 0.0f; VAL [one_fmod=1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L119] CALL, EXPR fmod_float(x, y) VAL [\old(x)=6442450949, \old(y)=0, one_fmod=1, Zero_fmod={6442450954:0}] [L18] __int32_t n, hx, hy, hz, ix, iy, sx, i; VAL [\old(x)=6442450949, \old(y)=0, one_fmod=1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L21] ieee_float_shape_type gf_u; [L22] gf_u.value = (x) [L23] EXPR gf_u.word [L23] (hx) = gf_u.word [L26] ieee_float_shape_type gf_u; [L27] gf_u.value = (y) [L28] EXPR gf_u.word [L28] (hy) = gf_u.word [L30] sx = hx & 0x80000000 [L31] hx ^= sx [L32] hy &= 0x7fffffff VAL [\old(x)=6442450949, \old(y)=0, one_fmod=1, sx=-1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L34] COND TRUE ((hy) == 0) || !((hx) < 0x7f800000L) || ((hy) > 0x7f800000L) [L35] return (x * y) / (x * y); VAL [\old(x)=6442450949, \old(y)=0, hx=2139095040, hy=2139095041, one_fmod=1, sx=-1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L119] RET, EXPR fmod_float(x, y) VAL [fmod_float(x, y)=6442450948, one_fmod=1, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L119] float res = fmod_float(x, y); [L122] CALL, EXPR isnan_float(res) VAL [\old(x)=6442450948, one_fmod=1, Zero_fmod={6442450954:0}] [L108] return x != x; VAL [\old(x)=6442450948, \result=0, one_fmod=1, x=6442450948, Zero_fmod={6442450954:0}] [L122] RET, EXPR isnan_float(res) VAL [isnan_float(res)=0, one_fmod=1, res=6442450948, x=6442450949, y=0, Zero_fmod={6442450954:0}] [L122] COND TRUE !isnan_float(res) [L123] __VERIFIER_error() VAL [one_fmod=1, res=6442450948, x=6442450949, y=0, Zero_fmod={6442450954:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 55 locations, 1 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 70 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, 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=55occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 46 NumberOfCodeBlocks, 46 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 21 ConstructedInterpolants, 0 QuantifiedInterpolants, 441 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request... ### Bit-precise run ### This is Ultimate 0.1.23-aa41828 [2018-11-23 15:41:19,458 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 15:41:19,459 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 15:41:19,470 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 15:41:19,470 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 15:41:19,471 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 15:41:19,472 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 15:41:19,473 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 15:41:19,475 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 15:41:19,475 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 15:41:19,476 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 15:41:19,477 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 15:41:19,477 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 15:41:19,478 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 15:41:19,479 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 15:41:19,480 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 15:41:19,481 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 15:41:19,482 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 15:41:19,484 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 15:41:19,485 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 15:41:19,486 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 15:41:19,487 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 15:41:19,489 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 15:41:19,489 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 15:41:19,489 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 15:41:19,490 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 15:41:19,491 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 15:41:19,491 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 15:41:19,492 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 15:41:19,493 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 15:41:19,493 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 15:41:19,494 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 15:41:19,494 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 15:41:19,494 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 15:41:19,495 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 15:41:19,495 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 15:41:19,496 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/config/svcomp-Reach-32bit-Taipan_Bitvector.epf [2018-11-23 15:41:19,508 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 15:41:19,508 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 15:41:19,509 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 15:41:19,509 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 15:41:19,510 INFO L133 SettingsManager]: * User list type=DISABLED [2018-11-23 15:41:19,510 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-11-23 15:41:19,510 INFO L133 SettingsManager]: * Explicit value domain=true [2018-11-23 15:41:19,510 INFO L133 SettingsManager]: * Octagon Domain=false [2018-11-23 15:41:19,510 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2018-11-23 15:41:19,511 INFO L133 SettingsManager]: * Interval Domain=false [2018-11-23 15:41:19,511 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 15:41:19,511 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 15:41:19,512 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 15:41:19,512 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 15:41:19,512 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 15:41:19,512 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 15:41:19,512 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 15:41:19,512 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 15:41:19,513 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 15:41:19,513 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 15:41:19,513 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 15:41:19,513 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 15:41:19,513 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 15:41:19,514 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 15:41:19,514 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 15:41:19,514 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 15:41:19,514 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 15:41:19,514 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 15:41:19,515 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 15:41:19,515 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 15:41:19,515 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 15:41:19,515 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 15:41:19,515 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 15:41:19,515 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 15:41:19,516 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 15:41:19,516 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true 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 -> /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan 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(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Taipan 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 -> 7d19ae2d93dd4f9ccec1d28558a563787c68b3eb [2018-11-23 15:41:19,550 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 15:41:19,561 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 15:41:19,563 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 15:41:19,565 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 15:41:19,565 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 15:41:19,566 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/../../sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c [2018-11-23 15:41:19,618 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/496101efa/edee65174d454e1eafde3e55f05add5e/FLAG9f143d105 [2018-11-23 15:41:19,961 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 15:41:19,962 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/sv-benchmarks/c/float-newlib/float_req_bl_1121a_true-unreach-call.c [2018-11-23 15:41:19,967 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/496101efa/edee65174d454e1eafde3e55f05add5e/FLAG9f143d105 [2018-11-23 15:41:20,388 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/data/496101efa/edee65174d454e1eafde3e55f05add5e [2018-11-23 15:41:20,391 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 15:41:20,392 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 15:41:20,393 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 15:41:20,393 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 15:41:20,396 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 15:41:20,397 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,400 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5d6a5f6e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20, skipping insertion in model container [2018-11-23 15:41:20,400 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,407 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 15:41:20,433 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 15:41:20,606 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 15:41:20,612 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 15:41:20,645 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 15:41:20,664 INFO L195 MainTranslator]: Completed translation [2018-11-23 15:41:20,664 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20 WrapperNode [2018-11-23 15:41:20,664 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 15:41:20,665 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 15:41:20,665 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 15:41:20,665 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 15:41:20,671 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,680 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,686 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 15:41:20,686 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 15:41:20,686 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 15:41:20,686 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 15:41:20,737 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,737 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,741 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,742 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,755 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,762 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,765 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... [2018-11-23 15:41:20,768 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 15:41:20,769 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 15:41:20,769 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 15:41:20,769 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 15:41:20,770 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 15:41:20,809 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE4 [2018-11-23 15:41:20,809 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 15:41:20,809 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 15:41:20,809 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE4 [2018-11-23 15:41:20,810 INFO L130 BoogieDeclarations]: Found specification of procedure isnan_float [2018-11-23 15:41:20,810 INFO L138 BoogieDeclarations]: Found implementation of procedure isnan_float [2018-11-23 15:41:20,810 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 15:41:20,810 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 15:41:20,810 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 15:41:20,810 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 15:41:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 15:41:20,811 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 15:41:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE4 [2018-11-23 15:41:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure fmod_float [2018-11-23 15:41:20,811 INFO L138 BoogieDeclarations]: Found implementation of procedure fmod_float [2018-11-23 15:41:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 15:41:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 15:41:21,024 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 15:41:21,609 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 15:41:21,609 INFO L280 CfgBuilder]: Removed 12 assue(true) statements. [2018-11-23 15:41:21,610 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 03:41:21 BoogieIcfgContainer [2018-11-23 15:41:21,610 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 15:41:21,611 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 15:41:21,611 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 15:41:21,614 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 15:41:21,614 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 03:41:20" (1/3) ... [2018-11-23 15:41:21,615 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4c39f20d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 03:41:21, skipping insertion in model container [2018-11-23 15:41:21,615 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 03:41:20" (2/3) ... [2018-11-23 15:41:21,615 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4c39f20d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 03:41:21, skipping insertion in model container [2018-11-23 15:41:21,615 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 03:41:21" (3/3) ... [2018-11-23 15:41:21,617 INFO L112 eAbstractionObserver]: Analyzing ICFG float_req_bl_1121a_true-unreach-call.c [2018-11-23 15:41:21,626 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 15:41:21,632 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 15:41:21,642 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 15:41:21,669 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 15:41:21,670 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 15:41:21,670 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 15:41:21,670 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 15:41:21,671 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 15:41:21,671 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 15:41:21,671 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 15:41:21,671 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 15:41:21,671 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 15:41:21,687 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states. [2018-11-23 15:41:21,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-23 15:41:21,691 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 15:41:21,691 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 15:41:21,693 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 15:41:21,697 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 15:41:21,697 INFO L82 PathProgramCache]: Analyzing trace with hash 1582823124, now seen corresponding path program 1 times [2018-11-23 15:41:21,700 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 15:41:21,700 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/mathsat Starting monitored process 2 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with mathsat -unsat_core_generation=3 [2018-11-23 15:41:21,705 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 15:41:21,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 15:41:21,967 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 15:41:21,982 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 15:41:21,982 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 15:41:21,996 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 15:41:21,996 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 15:41:22,000 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 15:41:22,014 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 15:41:22,014 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 15:41:22,017 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 2 states. [2018-11-23 15:41:22,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 15:41:22,036 INFO L93 Difference]: Finished difference Result 100 states and 156 transitions. [2018-11-23 15:41:22,037 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 15:41:22,038 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 21 [2018-11-23 15:41:22,039 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 15:41:22,049 INFO L225 Difference]: With dead ends: 100 [2018-11-23 15:41:22,049 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 15:41:22,052 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 15:41:22,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 15:41:22,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 15:41:22,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 15:41:22,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 65 transitions. [2018-11-23 15:41:22,082 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 65 transitions. Word has length 21 [2018-11-23 15:41:22,083 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 15:41:22,083 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 65 transitions. [2018-11-23 15:41:22,083 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 15:41:22,083 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 65 transitions. [2018-11-23 15:41:22,085 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2018-11-23 15:41:22,085 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 15:41:22,085 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 15:41:22,085 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 15:41:22,086 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 15:41:22,086 INFO L82 PathProgramCache]: Analyzing trace with hash -853861129, now seen corresponding path program 1 times [2018-11-23 15:41:22,086 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 15:41:22,086 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/mathsat Starting monitored process 3 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with mathsat -unsat_core_generation=3 [2018-11-23 15:41:22,092 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 15:41:22,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 15:41:22,377 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 15:41:25,530 WARN L180 SmtUtils]: Spent 692.00 ms on a formula simplification that was a NOOP. DAG size: 8 [2018-11-23 15:41:28,696 WARN L180 SmtUtils]: Spent 272.00 ms on a formula simplification that was a NOOP. DAG size: 8 [2018-11-23 15:41:32,745 WARN L180 SmtUtils]: Spent 435.00 ms on a formula simplification that was a NOOP. DAG size: 8 [2018-11-23 15:41:36,848 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 15:41:36,848 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 15:41:36,860 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 15:41:36,861 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 15:41:36,862 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 15:41:36,862 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 15:41:36,862 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2018-11-23 15:41:36,863 INFO L87 Difference]: Start difference. First operand 50 states and 65 transitions. Second operand 9 states. [2018-11-23 15:41:45,092 WARN L180 SmtUtils]: Spent 2.46 s on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 15:41:48,987 WARN L180 SmtUtils]: Spent 859.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 15:41:53,142 WARN L180 SmtUtils]: Spent 725.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 15:41:57,465 WARN L180 SmtUtils]: Spent 1.52 s on a formula simplification that was a NOOP. DAG size: 16 [2018-11-23 15:42:00,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 15:42:00,070 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2018-11-23 15:42:00,071 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 15:42:00,071 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 23 [2018-11-23 15:42:00,071 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 15:42:00,072 INFO L225 Difference]: With dead ends: 57 [2018-11-23 15:42:00,072 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 15:42:00,073 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 27.7s TimeCoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2018-11-23 15:42:00,073 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 15:42:00,080 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 15:42:00,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 15:42:00,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2018-11-23 15:42:00,080 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 23 [2018-11-23 15:42:00,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 15:42:00,081 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2018-11-23 15:42:00,081 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 15:42:00,081 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2018-11-23 15:42:00,081 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 15:42:00,081 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 15:42:00,082 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 15:42:00,082 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 15:42:00,082 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 15:42:00,082 INFO L82 PathProgramCache]: Analyzing trace with hash 988405985, now seen corresponding path program 1 times [2018-11-23 15:42:00,082 INFO L223 ckRefinementStrategy]: Switched to mode MATHSAT_FPBP [2018-11-23 15:42:00,083 INFO L69 tionRefinementEngine]: Using refinement strategy WalrusRefinementStrategy No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/mathsat Starting monitored process 4 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with mathsat -unsat_core_generation=3 [2018-11-23 15:42:00,088 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 15:42:00,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 15:42:00,129 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 15:42:00,204 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 15:42:00,204 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 15:42:00,212 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 15:42:00,212 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 15:42:00,213 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 15:42:00,213 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 15:42:00,213 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2018-11-23 15:42:00,213 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand 7 states. [2018-11-23 15:42:00,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 15:42:00,515 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2018-11-23 15:42:00,515 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 15:42:00,516 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 24 [2018-11-23 15:42:00,516 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 15:42:00,516 INFO L225 Difference]: With dead ends: 52 [2018-11-23 15:42:00,516 INFO L226 Difference]: Without dead ends: 0 [2018-11-23 15:42:00,516 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2018-11-23 15:42:00,517 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-23 15:42:00,517 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-23 15:42:00,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-23 15:42:00,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-23 15:42:00,517 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 24 [2018-11-23 15:42:00,517 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 15:42:00,517 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 15:42:00,517 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 15:42:00,517 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-23 15:42:00,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 15:42:00,520 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-23 15:42:01,512 WARN L180 SmtUtils]: Spent 891.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 15:42:01,543 INFO L448 ceAbstractionStarter]: For program point isnan_floatFINAL(line 108) no Hoare annotation was computed. [2018-11-23 15:42:01,543 INFO L451 ceAbstractionStarter]: At program point isnan_floatENTRY(line 108) the Hoare annotation is: true [2018-11-23 15:42:01,543 INFO L448 ceAbstractionStarter]: For program point isnan_floatEXIT(line 108) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: true [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L451 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: true [2018-11-23 15:42:01,544 INFO L451 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L451 ceAbstractionStarter]: At program point mainENTRY(lines 110 128) the Hoare annotation is: true [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point mainFINAL(lines 110 128) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point L123(line 123) no Hoare annotation was computed. [2018-11-23 15:42:01,544 INFO L444 ceAbstractionStarter]: At program point L122(line 122) the Hoare annotation is: (and (exists ((fmod_float_~x (_ FloatingPoint 8 24))) (= main_~res~0 (let ((.cse0 (fp.mul roundNearestTiesToEven fmod_float_~x (_ +zero 8 24)))) (fp.div roundNearestTiesToEven .cse0 .cse0)))) (= (_ +zero 8 24) main_~y~0)) [2018-11-23 15:42:01,544 INFO L448 ceAbstractionStarter]: For program point L122-1(lines 122 125) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 110 128) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L444 ceAbstractionStarter]: At program point L119(line 119) the Hoare annotation is: (= (_ +zero 8 24) main_~y~0) [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point L119-1(line 119) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONERROR_FUNCTION(line 123) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point fmod_floatEXIT(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point L52-1(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point L36(lines 36 37) no Hoare annotation was computed. [2018-11-23 15:42:01,545 INFO L448 ceAbstractionStarter]: For program point L86(lines 86 103) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point L20-1(lines 20 24) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L444 ceAbstractionStarter]: At program point L20-2(lines 20 24) the Hoare annotation is: (= fmod_float_~y |fmod_float_#in~y|) [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point L70(lines 70 71) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point L46(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point fmod_floatFINAL(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point L38(lines 38 39) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L451 ceAbstractionStarter]: At program point fmod_floatENTRY(lines 17 105) the Hoare annotation is: true [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point L88-1(lines 88 92) no Hoare annotation was computed. [2018-11-23 15:42:01,546 INFO L444 ceAbstractionStarter]: At program point L88-2(lines 88 92) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 15:42:01,546 INFO L448 ceAbstractionStarter]: For program point L47-2(lines 47 48) no Hoare annotation was computed. [2018-11-23 15:42:01,547 INFO L444 ceAbstractionStarter]: At program point L47-3(lines 47 48) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|) (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) fmod_float_~hy~0)))) [2018-11-23 15:42:01,547 INFO L448 ceAbstractionStarter]: For program point L97-1(lines 97 101) no Hoare annotation was computed. [2018-11-23 15:42:01,547 INFO L444 ceAbstractionStarter]: At program point L97-2(lines 97 101) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 15:42:01,547 INFO L448 ceAbstractionStarter]: For program point L97-3(lines 97 101) no Hoare annotation was computed. [2018-11-23 15:42:01,547 INFO L448 ceAbstractionStarter]: For program point L40(lines 40 44) no Hoare annotation was computed. [2018-11-23 15:42:01,547 INFO L448 ceAbstractionStarter]: For program point L40-1(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,547 INFO L448 ceAbstractionStarter]: For program point L65-1(lines 65 74) no Hoare annotation was computed. [2018-11-23 15:42:01,547 INFO L448 ceAbstractionStarter]: For program point L65-3(lines 65 74) no Hoare annotation was computed. [2018-11-23 15:42:01,548 INFO L444 ceAbstractionStarter]: At program point L82-2(lines 82 85) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 15:42:01,548 INFO L448 ceAbstractionStarter]: For program point L82-3(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,548 INFO L448 ceAbstractionStarter]: For program point L41-2(lines 41 42) no Hoare annotation was computed. [2018-11-23 15:42:01,548 INFO L444 ceAbstractionStarter]: At program point L41-3(lines 41 42) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|) (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) fmod_float_~hy~0)))) [2018-11-23 15:42:01,548 INFO L448 ceAbstractionStarter]: For program point L25(lines 25 29) no Hoare annotation was computed. [2018-11-23 15:42:01,548 INFO L448 ceAbstractionStarter]: For program point L58-1(lines 58 63) no Hoare annotation was computed. [2018-11-23 15:42:01,548 INFO L448 ceAbstractionStarter]: For program point L25-1(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,549 INFO L448 ceAbstractionStarter]: For program point L25-2(lines 25 29) no Hoare annotation was computed. [2018-11-23 15:42:01,549 INFO L448 ceAbstractionStarter]: For program point L67(lines 67 73) no Hoare annotation was computed. [2018-11-23 15:42:01,549 INFO L448 ceAbstractionStarter]: For program point L34(lines 34 35) no Hoare annotation was computed. [2018-11-23 15:42:01,549 INFO L444 ceAbstractionStarter]: At program point L67-2(lines 65 74) the Hoare annotation is: (and (exists ((v_fmod_float_~hy~0_19 (_ BitVec 32))) (and (= (fp ((_ extract 31 31) v_fmod_float_~hy~0_19) ((_ extract 30 23) v_fmod_float_~hy~0_19) ((_ extract 22 0) v_fmod_float_~hy~0_19)) |fmod_float_#in~y|) (not (= (bvand (_ bv2147483647 32) v_fmod_float_~hy~0_19) (_ bv0 32))))) (= fmod_float_~y |fmod_float_#in~y|)) [2018-11-23 15:42:01,549 INFO L448 ceAbstractionStarter]: For program point L76(lines 76 78) no Hoare annotation was computed. [2018-11-23 15:42:01,549 INFO L448 ceAbstractionStarter]: For program point L76-2(lines 17 105) no Hoare annotation was computed. [2018-11-23 15:42:01,553 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,554 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,554 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,555 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,560 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,560 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,560 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,560 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,561 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,561 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,561 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,561 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,562 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,562 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,562 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,562 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,563 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,564 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,564 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,564 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,564 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,564 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,565 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,565 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,565 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,565 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,566 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,566 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,566 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,566 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,566 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,567 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,567 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,567 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,568 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,568 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,568 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,568 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,568 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,569 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,569 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,569 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,569 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,570 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,570 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,570 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,570 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,570 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,571 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,571 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,571 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,571 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,572 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,572 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,572 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,572 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,573 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,573 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,573 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,573 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,573 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,574 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,574 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,574 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,576 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 03:42:01 BoogieIcfgContainer [2018-11-23 15:42:01,576 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 15:42:01,576 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 15:42:01,576 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 15:42:01,576 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 15:42:01,577 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 03:41:21" (3/4) ... [2018-11-23 15:42:01,579 INFO L144 WitnessPrinter]: Generating witness for correct program [2018-11-23 15:42:01,583 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure isnan_float [2018-11-23 15:42:01,583 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure ULTIMATE.init [2018-11-23 15:42:01,583 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure main [2018-11-23 15:42:01,584 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure fmod_float [2018-11-23 15:42:01,586 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 17 nodes and edges [2018-11-23 15:42:01,587 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 8 nodes and edges [2018-11-23 15:42:01,587 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2018-11-23 15:42:01,587 INFO L879 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2018-11-23 15:42:01,603 WARN L221 nessWitnessGenerator]: Not writing invariant because ACSL is forbidden: y == \old(y) [2018-11-23 15:42:01,611 INFO L145 WitnessManager]: Wrote witness to /tmp/vcloud-vcloud-master/worker/working_dir_3d032378-89c6-4299-be5e-586e18315682/bin-2019/utaipan/witness.graphml [2018-11-23 15:42:01,611 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 15:42:01,612 INFO L168 Benchmark]: Toolchain (without parser) took 41220.55 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 153.1 MB). Free memory was 948.7 MB in the beginning and 990.5 MB in the end (delta: -41.8 MB). Peak memory consumption was 111.3 MB. Max. memory is 11.5 GB. [2018-11-23 15:42:01,612 INFO L168 Benchmark]: CDTParser took 0.18 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 15:42:01,612 INFO L168 Benchmark]: CACSL2BoogieTranslator took 272.02 ms. Allocated memory is still 1.0 GB. Free memory was 948.7 MB in the beginning and 932.5 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. [2018-11-23 15:42:01,613 INFO L168 Benchmark]: Boogie Procedure Inliner took 20.89 ms. Allocated memory is still 1.0 GB. Free memory is still 932.5 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 15:42:01,613 INFO L168 Benchmark]: Boogie Preprocessor took 82.51 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 153.1 MB). Free memory was 932.5 MB in the beginning and 1.1 GB in the end (delta: -208.9 MB). Peak memory consumption was 15.2 MB. Max. memory is 11.5 GB. [2018-11-23 15:42:01,613 INFO L168 Benchmark]: RCFGBuilder took 841.18 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 25.4 MB). Peak memory consumption was 25.4 MB. Max. memory is 11.5 GB. [2018-11-23 15:42:01,613 INFO L168 Benchmark]: TraceAbstraction took 39965.11 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 990.5 MB in the end (delta: 125.6 MB). Peak memory consumption was 125.6 MB. Max. memory is 11.5 GB. [2018-11-23 15:42:01,614 INFO L168 Benchmark]: Witness Printer took 35.11 ms. Allocated memory is still 1.2 GB. Free memory is still 990.5 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 15:42:01,616 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18 ms. Allocated memory is still 1.0 GB. Free memory is still 978.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 272.02 ms. Allocated memory is still 1.0 GB. Free memory was 948.7 MB in the beginning and 932.5 MB in the end (delta: 16.1 MB). Peak memory consumption was 16.1 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 20.89 ms. Allocated memory is still 1.0 GB. Free memory is still 932.5 MB. There was no memory consumed. Max. memory is 11.5 GB. * Boogie Preprocessor took 82.51 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 153.1 MB). Free memory was 932.5 MB in the beginning and 1.1 GB in the end (delta: -208.9 MB). Peak memory consumption was 15.2 MB. Max. memory is 11.5 GB. * RCFGBuilder took 841.18 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 25.4 MB). Peak memory consumption was 25.4 MB. Max. memory is 11.5 GB. * TraceAbstraction took 39965.11 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 990.5 MB in the end (delta: 125.6 MB). Peak memory consumption was 125.6 MB. Max. memory is 11.5 GB. * Witness Printer took 35.11 ms. Allocated memory is still 1.2 GB. Free memory is still 990.5 MB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 123]: call of __VERIFIER_error() unreachable For all program executions holds that call of __VERIFIER_error() unreachable at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 97]: Loop Invariant [2018-11-23 15:42:01,621 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,621 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,622 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,622 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,622 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,622 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,622 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 82]: Loop Invariant [2018-11-23 15:42:01,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,623 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 41]: Loop Invariant [2018-11-23 15:42:01,624 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,625 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,626 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,626 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,626 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,626 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,626 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,626 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,627 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,627 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: ((\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y)) && (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && ~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == hy) - InvariantResult [Line: 88]: Loop Invariant [2018-11-23 15:42:01,627 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,627 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,627 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,628 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,628 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,628 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,628 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,628 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 47]: Loop Invariant [2018-11-23 15:42:01,629 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,629 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,629 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,629 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,630 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,630 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,630 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,630 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,630 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,631 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,631 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,631 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,631 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,631 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,631 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,632 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: ((\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y)) && (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && ~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == hy) - InvariantResult [Line: 65]: Loop Invariant [2018-11-23 15:42:01,632 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,632 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,632 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,632 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,632 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,633 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,633 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] [2018-11-23 15:42:01,633 WARN L416 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[v_fmod_float_~hy~0_19,QUANTIFIED] Derived loop invariant: (\exists v_fmod_float_~hy~0_19 : bv32 :: ~fp~LONGDOUBLE(v_fmod_float_~hy~0_19[31:31], v_fmod_float_~hy~0_19[30:23], v_fmod_float_~hy~0_19[22:0]) == \old(y) && !(~bvand32(2147483647bv32, v_fmod_float_~hy~0_19) == 0bv32)) && y == \old(y) - InvariantResult [Line: 20]: Loop Invariant Derived loop invariant: y == \old(y) - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 54 locations, 1 error locations. SAFE Result, 39.8s OverallTime, 3 OverallIterations, 1 TraceHistogramMax, 23.5s AutomataDifference, 0.0s DeadEndRemovalTime, 1.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 174 SDtfs, 148 SDslu, 487 SDs, 0 SdLazy, 97 SolverSat, 8 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 9.6s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 73 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 27.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=54occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 3 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 15 LocationsWithAnnotation, 17 PreInvPairs, 25 NumberOfFragments, 187 HoareAnnotationTreeSize, 17 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 15 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.9s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.5s SatisfiabilityAnalysisTime, 14.6s InterpolantComputationTime, 68 NumberOfCodeBlocks, 68 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 65 ConstructedInterpolants, 8 QuantifiedInterpolants, 5614 SizeOfPredicates, 8 NumberOfNonLiveVariables, 232 ConjunctsInSsa, 18 ConjunctsInUnsatCore, 3 InterpolantComputations, 3 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...