./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/double_req_bl_0684a_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_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_0684a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak --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 Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 6f0e5ff08d8d375b1c12be7373d81b68e548344f ............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. 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_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_0684a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak --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 Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 6f0e5ff08d8d375b1c12be7373d81b68e548344f ............................................................................................................................................................................................................................................................................................................................................................................................................................................................ Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000)Received EOF on stdin. stderr output: (error "out of memory") --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 00:02:08,719 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 00:02:08,720 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 00:02:08,726 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 00:02:08,727 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 00:02:08,727 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 00:02:08,728 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 00:02:08,729 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 00:02:08,731 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 00:02:08,731 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 00:02:08,732 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 00:02:08,732 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 00:02:08,733 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 00:02:08,733 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 00:02:08,734 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 00:02:08,735 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 00:02:08,735 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 00:02:08,736 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 00:02:08,738 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 00:02:08,739 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 00:02:08,740 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 00:02:08,740 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 00:02:08,742 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 00:02:08,742 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 00:02:08,742 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 00:02:08,743 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 00:02:08,744 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 00:02:08,744 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 00:02:08,745 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 00:02:08,746 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 00:02:08,746 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 00:02:08,746 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 00:02:08,746 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 00:02:08,747 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 00:02:08,747 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 00:02:08,748 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 00:02:08,748 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf [2018-11-23 00:02:08,758 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 00:02:08,758 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 00:02:08,759 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 00:02:08,759 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 00:02:08,760 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 00:02:08,760 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 00:02:08,760 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 00:02:08,760 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 00:02:08,760 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 00:02:08,760 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 00:02:08,760 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 00:02:08,761 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 00:02:08,761 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 00:02:08,761 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 00:02:08,761 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 00:02:08,761 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 00:02:08,761 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 00:02:08,762 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 00:02:08,762 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 00:02:08,762 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 00:02:08,762 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 00:02:08,762 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 00:02:08,762 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 00:02:08,763 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 00:02:08,763 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 00:02:08,763 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 00:02:08,763 INFO L133 SettingsManager]: * Trace refinement strategy=PENGUIN [2018-11-23 00:02:08,763 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 00:02:08,763 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 00:02:08,763 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_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak 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 -> Kojak 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 -> 6f0e5ff08d8d375b1c12be7373d81b68e548344f [2018-11-23 00:02:08,787 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 00:02:08,796 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 00:02:08,799 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 00:02:08,800 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 00:02:08,801 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 00:02:08,801 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_0684a_true-unreach-call.c [2018-11-23 00:02:08,846 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/dd1d83068/fa3244193cfb471585017d5d38244d00/FLAGdfc1f02cc [2018-11-23 00:02:09,267 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 00:02:09,267 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/sv-benchmarks/c/float-newlib/double_req_bl_0684a_true-unreach-call.c [2018-11-23 00:02:09,274 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/dd1d83068/fa3244193cfb471585017d5d38244d00/FLAGdfc1f02cc [2018-11-23 00:02:09,283 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/dd1d83068/fa3244193cfb471585017d5d38244d00 [2018-11-23 00:02:09,286 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 00:02:09,287 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 00:02:09,287 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 00:02:09,288 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 00:02:09,291 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 00:02:09,291 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,294 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5e6b036a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09, skipping insertion in model container [2018-11-23 00:02:09,294 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,302 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 00:02:09,327 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 00:02:09,502 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 00:02:09,507 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 00:02:09,551 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 00:02:09,608 INFO L195 MainTranslator]: Completed translation [2018-11-23 00:02:09,608 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09 WrapperNode [2018-11-23 00:02:09,608 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 00:02:09,608 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 00:02:09,608 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 00:02:09,608 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 00:02:09,613 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,621 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,639 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 00:02:09,639 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 00:02:09,639 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 00:02:09,639 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 00:02:09,645 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,645 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,648 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,648 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,658 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,663 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,666 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... [2018-11-23 00:02:09,669 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 00:02:09,669 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 00:02:09,669 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 00:02:09,670 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 00:02:09,670 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:09" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (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:10000 [2018-11-23 00:02:09,708 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 00:02:09,708 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 00:02:09,708 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_double [2018-11-23 00:02:09,708 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_double [2018-11-23 00:02:09,708 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 00:02:09,709 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 00:02:09,709 INFO L130 BoogieDeclarations]: Found specification of procedure atan_double [2018-11-23 00:02:09,709 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_double [2018-11-23 00:02:09,709 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 00:02:09,709 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 00:02:09,709 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 00:02:09,709 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 00:02:09,709 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 00:02:10,278 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 00:02:10,278 INFO L280 CfgBuilder]: Removed 30 assue(true) statements. [2018-11-23 00:02:10,279 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:02:10 BoogieIcfgContainer [2018-11-23 00:02:10,279 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 00:02:10,279 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 00:02:10,279 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 00:02:10,286 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 00:02:10,286 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:02:10" (1/1) ... [2018-11-23 00:02:10,295 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 00:02:10,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:02:10,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 79 states and 129 transitions. [2018-11-23 00:02:10,321 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 129 transitions. [2018-11-23 00:02:10,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2018-11-23 00:02:10,323 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:02:10,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:02:10,407 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 00:02:10,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:02:10,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 79 states and 122 transitions. [2018-11-23 00:02:10,417 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 122 transitions. [2018-11-23 00:02:10,418 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2018-11-23 00:02:10,418 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:02:10,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:02:10,478 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 00:02:10,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:02:10,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 80 states and 123 transitions. [2018-11-23 00:02:10,519 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 123 transitions. [2018-11-23 00:02:10,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 00:02:10,520 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:02:10,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:02:10,557 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 00:02:10,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:02:10,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 80 states and 121 transitions. [2018-11-23 00:02:10,562 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 121 transitions. [2018-11-23 00:02:10,563 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2018-11-23 00:02:10,563 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:02:10,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 00:02:10,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 00:02:10,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 00:02:10,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 00:02:10,798 WARN L493 CodeCheckObserver]: This program is UNSAFE, Check terminated with 4 iterations. ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];call ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset := #Ultimate.alloc(32);call write~init~real(0.4636476090008061, ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset, 8);call write~init~real(0.7853981633974483, ~#atanhi_atan~0.base, 8 + ~#atanhi_atan~0.offset, 8);call write~init~real(0.982793723247329, ~#atanhi_atan~0.base, 16 + ~#atanhi_atan~0.offset, 8);call write~init~real(1.5707963267948966, ~#atanhi_atan~0.base, 24 + ~#atanhi_atan~0.offset, 8);call ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset := #Ultimate.alloc(32);call write~init~real(2.2698777452961687E-17, ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset, 8);call write~init~real(3.061616997868383E-17, ~#atanlo_atan~0.base, 8 + ~#atanlo_atan~0.offset, 8);call write~init~real(1.3903311031230998E-17, ~#atanlo_atan~0.base, 16 + ~#atanlo_atan~0.offset, 8);call write~init~real(6.123233995736766E-17, ~#atanlo_atan~0.base, 24 + ~#atanlo_atan~0.offset, 8);call ~#aT_atan~0.base, ~#aT_atan~0.offset := #Ultimate.alloc(88);call write~init~real(0.3333333333333293, ~#aT_atan~0.base, ~#aT_atan~0.offset, 8);call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), ~#aT_atan~0.base, 8 + ~#aT_atan~0.offset, 8);call write~init~real(0.14285714272503466, ~#aT_atan~0.base, 16 + ~#aT_atan~0.offset, 8);call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), ~#aT_atan~0.base, 24 + ~#aT_atan~0.offset, 8);call write~init~real(0.09090887133436507, ~#aT_atan~0.base, 32 + ~#aT_atan~0.offset, 8);call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), ~#aT_atan~0.base, 40 + ~#aT_atan~0.offset, 8);call write~init~real(0.06661073137387531, ~#aT_atan~0.base, 48 + ~#aT_atan~0.offset, 8);call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), ~#aT_atan~0.base, 56 + ~#aT_atan~0.offset, 8);call write~init~real(0.049768779946159324, ~#aT_atan~0.base, 64 + ~#aT_atan~0.offset, 8);call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), ~#aT_atan~0.base, 72 + ~#aT_atan~0.offset, 8);call write~init~real(0.016285820115365782, ~#aT_atan~0.base, 80 + ~#aT_atan~0.offset, 8);~one_atan~0 := 1.0;~pi_o_4~0 := 0.7853981633974483;~pi_o_2~0 := 1.5707963267948966;~pi~0 := 3.141592653589793;~huge_atan~0 := 1.0E300;~tiny_atan2~0 := 1.0E-300;~zero_atan2~0 := 0.0;~pi_lo_atan2~0 := 1.2246467991473532E-16;havoc main_#res;havoc main_#t~nondet54, main_#t~ret55, main_#t~ret56, main_#t~short57, main_#t~ret58, main_~res~0, main_~x~0, main_~y~0;main_~x~0 := main_#t~nondet54;havoc main_#t~nondet54;main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0);isfinite_double_#in~x := main_~x~0;havoc isfinite_double_#res;havoc isfinite_double_#t~mem52, isfinite_double_#t~union53, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, isfinite_double_~x, isfinite_double_~hx~3;isfinite_double_~x := isfinite_double_#in~x;havoc isfinite_double_~hx~3; VAL [ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] call isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset := #Ultimate.alloc(8);call write~real(isfinite_double_~x, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, 8);call isfinite_double_#t~mem52 := read~int(isfinite_double_~#gh_u~3.base, 4 + isfinite_double_~#gh_u~3.offset, 4);isfinite_double_~hx~3 := (if isfinite_double_#t~mem52 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem52 % 4294967296 % 4294967296 else isfinite_double_#t~mem52 % 4294967296 % 4294967296 - 4294967296);call write~real(isfinite_double_#t~union53, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, 8);havoc isfinite_double_#t~union53;havoc isfinite_double_#t~mem52;call ULTIMATE.dealloc(isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset);havoc isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] goto; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296);main_#t~ret55 := isfinite_double_#res;assume -2147483648 <= main_#t~ret55 && main_#t~ret55 <= 2147483647;main_#t~short57 := 0 != main_#t~ret55; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_main_~x~0=2.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_main_#t~ret55|=1, |ULTIMATE.start_main_#t~short57|=true, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] assume main_#t~short57;isinf_double_#in~x := main_~y~0;havoc isinf_double_#res;havoc isinf_double_#t~mem48, isinf_double_#t~union49, isinf_double_#t~mem50, isinf_double_#t~union51, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, isinf_double_~x, isinf_double_~hx~2, isinf_double_~lx~1;isinf_double_~x := isinf_double_#in~x;havoc isinf_double_~hx~2;havoc isinf_double_~lx~1; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_main_#t~ret55|=1, |ULTIMATE.start_main_#t~short57|=true, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] call isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset := #Ultimate.alloc(8);call write~real(isinf_double_~x, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8);call isinf_double_#t~mem48 := read~int(isinf_double_~#ew_u~2.base, 4 + isinf_double_~#ew_u~2.offset, 4);isinf_double_~hx~2 := (if isinf_double_#t~mem48 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem48 % 4294967296 % 4294967296 else isinf_double_#t~mem48 % 4294967296 % 4294967296 - 4294967296);call write~real(isinf_double_#t~union49, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8);havoc isinf_double_#t~union49;havoc isinf_double_#t~mem48;call isinf_double_#t~mem50 := read~int(isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 4);isinf_double_~lx~1 := (if isinf_double_#t~mem50 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem50 % 4294967296 % 4294967296 else isinf_double_#t~mem50 % 4294967296 % 4294967296 - 4294967296);call write~real(isinf_double_#t~union51, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8);havoc isinf_double_#t~mem50;havoc isinf_double_#t~union51;call ULTIMATE.dealloc(isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset);havoc isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=4096, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_main_#t~ret55|=1, |ULTIMATE.start_main_#t~short57|=true, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] goto; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=4096, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_main_#t~ret55|=1, |ULTIMATE.start_main_#t~short57|=true, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] isinf_double_~hx~2 := ~bitwiseAnd(isinf_double_~hx~2, 2147483647);isinf_double_~hx~2 := (if ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296);isinf_double_~hx~2 := 2146435072 - isinf_double_~hx~2;isinf_double_#res := 1 - (if ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296);main_#t~ret56 := isinf_double_#res;assume -2147483648 <= main_#t~ret56 && main_#t~ret56 <= 2147483647;main_#t~short57 := 0 != main_#t~ret56; VAL [ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |ULTIMATE.start_main_#t~ret55|=1, |ULTIMATE.start_main_#t~ret56|=(- 1), |ULTIMATE.start_main_#t~short57|=true, |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] assume main_#t~short57;havoc main_#t~ret56;havoc main_#t~ret55;havoc main_#t~short57;__ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0;havoc __ieee754_atan2_#res;havoc __ieee754_atan2_#t~mem27, __ieee754_atan2_#t~union28, __ieee754_atan2_#t~mem29, __ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, __ieee754_atan2_#t~mem31, __ieee754_atan2_#t~union32, __ieee754_atan2_#t~mem33, __ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, __ieee754_atan2_#t~ret35, __ieee754_atan2_#t~switch36, __ieee754_atan2_#t~ite37, __ieee754_atan2_#t~switch38, __ieee754_atan2_#t~switch39, __ieee754_atan2_#t~ite40, __ieee754_atan2_#t~ret41, __ieee754_atan2_#t~ret42, __ieee754_atan2_#t~switch43, __ieee754_atan2_#t~mem44, __ieee754_atan2_#t~union45, __ieee754_atan2_~#gh_u~2.base, __ieee754_atan2_~#gh_u~2.offset, __ieee754_atan2_#t~mem46, __ieee754_atan2_#t~union47.lsw, __ieee754_atan2_#t~union47.msw, __ieee754_atan2_~#sh_u~1.base, __ieee754_atan2_~#sh_u~1.offset, __ieee754_atan2_~zh~0, __ieee754_atan2_~y, __ieee754_atan2_~x, __ieee754_atan2_~z~1, __ieee754_atan2_~k~0, __ieee754_atan2_~m~0, __ieee754_atan2_~hx~1, __ieee754_atan2_~hy~0, __ieee754_atan2_~ix~1, __ieee754_atan2_~iy~0, __ieee754_atan2_~lx~0, __ieee754_atan2_~ly~0;__ieee754_atan2_~y := __ieee754_atan2_#in~y;__ieee754_atan2_~x := __ieee754_atan2_#in~x;havoc __ieee754_atan2_~z~1;havoc __ieee754_atan2_~k~0;havoc __ieee754_atan2_~m~0;havoc __ieee754_atan2_~hx~1;havoc __ieee754_atan2_~hy~0;havoc __ieee754_atan2_~ix~1;havoc __ieee754_atan2_~iy~0;havoc __ieee754_atan2_~lx~0;havoc __ieee754_atan2_~ly~0; VAL [ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] call __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset := #Ultimate.alloc(8);call write~real(__ieee754_atan2_~x, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8);call __ieee754_atan2_#t~mem27 := read~int(__ieee754_atan2_~#ew_u~0.base, 4 + __ieee754_atan2_~#ew_u~0.offset, 4);__ieee754_atan2_~hx~1 := (if __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 - 4294967296);call write~real(__ieee754_atan2_#t~union28, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8);havoc __ieee754_atan2_#t~union28;havoc __ieee754_atan2_#t~mem27;call __ieee754_atan2_#t~mem29 := read~int(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 4);__ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29;call write~real(__ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8);havoc __ieee754_atan2_#t~mem29;havoc __ieee754_atan2_#t~union30;call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset);havoc __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] goto; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] __ieee754_atan2_~ix~1 := ~bitwiseAnd(__ieee754_atan2_~hx~1, 2147483647); VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] call __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset := #Ultimate.alloc(8);call write~real(__ieee754_atan2_~y, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8);call __ieee754_atan2_#t~mem31 := read~int(__ieee754_atan2_~#ew_u~1.base, 4 + __ieee754_atan2_~#ew_u~1.offset, 4);__ieee754_atan2_~hy~0 := (if __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 - 4294967296);call write~real(__ieee754_atan2_#t~union32, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8);havoc __ieee754_atan2_#t~mem31;havoc __ieee754_atan2_#t~union32;call __ieee754_atan2_#t~mem33 := read~int(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 4);__ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33;call write~real(__ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8);havoc __ieee754_atan2_#t~mem33;havoc __ieee754_atan2_#t~union34;call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset);havoc __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] goto; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] __ieee754_atan2_~iy~0 := ~bitwiseAnd(__ieee754_atan2_~hy~0, 2147483647); VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] assume ~bitwiseOr(__ieee754_atan2_~ix~1, ~bitwiseOr(__ieee754_atan2_~lx~0, -__ieee754_atan2_~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(__ieee754_atan2_~iy~0, ~bitwiseOr(__ieee754_atan2_~ly~0, -__ieee754_atan2_~ly~0) / 2147483648) % 4294967296 > 2146435072;__ieee754_atan2_#res := ~someBinaryArithmeticDOUBLEoperation(__ieee754_atan2_~x, __ieee754_atan2_~y); VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] main_#t~ret58 := __ieee754_atan2_#res;main_~res~0 := main_#t~ret58;havoc main_#t~ret58; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~res~0=6.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=6.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0); VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~res~0=6.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=6.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] assume !false; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=15, ULTIMATE.start___ieee754_atan2_~ly~0=19, ULTIMATE.start___ieee754_atan2_~x=2.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_isfinite_double_~hx~3=4096, ULTIMATE.start_isfinite_double_~x=2.0, ULTIMATE.start_isinf_double_~hx~2=2146435072, ULTIMATE.start_isinf_double_~lx~1=4770, ULTIMATE.start_isinf_double_~x=3.0, ULTIMATE.start_main_~res~0=6.0, ULTIMATE.start_main_~x~0=2.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=2.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=6.0, |ULTIMATE.start_isfinite_double_#in~x|=2.0, |ULTIMATE.start_isfinite_double_#res|=1, |ULTIMATE.start_isinf_double_#in~x|=3.0, |ULTIMATE.start_isinf_double_#res|=(- 1), |~#aT_atan~0.base|=6, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=5, |~#atanhi_atan~0.offset|=0, |~#atanlo_atan~0.base|=3, |~#atanlo_atan~0.offset|=0, ~huge_atan~0=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0, ~one_atan~0=1.0, ~pi_lo_atan2~0=(/ 3061616997868382943.0 25000000000000000000000000000000000.0), ~pi_o_2~0=(/ 785398163397448279.0 500000000000000000.0), ~pi_o_4~0=(/ 785398163397448279.0 1000000000000000000.0), ~pi~0=(/ 785398163397448279.0 250000000000000000.0), ~tiny_atan2~0=(/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0), ~zero_atan2~0=0.0] [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L37-L42] call ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset := #Ultimate.alloc(32); [L37-L42] call write~init~real(0.4636476090008061, ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset, 8); [L37-L42] call write~init~real(0.7853981633974483, ~#atanhi_atan~0.base, 8 + ~#atanhi_atan~0.offset, 8); [L37-L42] call write~init~real(0.982793723247329, ~#atanhi_atan~0.base, 16 + ~#atanhi_atan~0.offset, 8); [L37-L42] call write~init~real(1.5707963267948966, ~#atanhi_atan~0.base, 24 + ~#atanhi_atan~0.offset, 8); [L44-L49] call ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset := #Ultimate.alloc(32); [L44-L49] call write~init~real(2.2698777452961687E-17, ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset, 8); [L44-L49] call write~init~real(3.061616997868383E-17, ~#atanlo_atan~0.base, 8 + ~#atanlo_atan~0.offset, 8); [L44-L49] call write~init~real(1.3903311031230998E-17, ~#atanlo_atan~0.base, 16 + ~#atanlo_atan~0.offset, 8); [L44-L49] call write~init~real(6.123233995736766E-17, ~#atanlo_atan~0.base, 24 + ~#atanlo_atan~0.offset, 8); [L51-L58] call ~#aT_atan~0.base, ~#aT_atan~0.offset := #Ultimate.alloc(88); [L51-L58] call write~init~real(0.3333333333333293, ~#aT_atan~0.base, ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), ~#aT_atan~0.base, 8 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.14285714272503466, ~#aT_atan~0.base, 16 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), ~#aT_atan~0.base, 24 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.09090887133436507, ~#aT_atan~0.base, 32 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), ~#aT_atan~0.base, 40 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.06661073137387531, ~#aT_atan~0.base, 48 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), ~#aT_atan~0.base, 56 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.049768779946159324, ~#aT_atan~0.base, 64 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), ~#aT_atan~0.base, 72 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.016285820115365782, ~#aT_atan~0.base, 80 + ~#aT_atan~0.offset, 8); [L60-L62] ~one_atan~0 := 1.0; [L60-L62] ~pi_o_4~0 := 0.7853981633974483; [L60-L62] ~pi_o_2~0 := 1.5707963267948966; [L60-L62] ~pi~0 := 3.141592653589793; [L60-L62] ~huge_atan~0 := 1.0E300; [L139-L140] ~tiny_atan2~0 := 1.0E-300; [L139-L140] ~zero_atan2~0 := 0.0; [L139-L140] ~pi_lo_atan2~0 := 1.2246467991473532E-16; [?] havoc main_#res; [?] havoc main_#t~nondet54, main_#t~ret55, main_#t~ret56, main_#t~short57, main_#t~ret58, main_~res~0, main_~x~0, main_~y~0; [L276] main_~x~0 := main_#t~nondet54; [L276] havoc main_#t~nondet54; [L277] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L280] isfinite_double_#in~x := main_~x~0; [L280] havoc isfinite_double_#res; [L280] havoc isfinite_double_#t~mem52, isfinite_double_#t~union53, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, isfinite_double_~x, isfinite_double_~hx~3; [L259-L267] isfinite_double_~x := isfinite_double_#in~x; [L260] havoc isfinite_double_~hx~3; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L262] call isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset := #Ultimate.alloc(8); [L263] call write~real(isfinite_double_~x, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, 8); [L264] call isfinite_double_#t~mem52 := read~int(isfinite_double_~#gh_u~3.base, 4 + isfinite_double_~#gh_u~3.offset, 4); [L264] isfinite_double_~hx~3 := (if isfinite_double_#t~mem52 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem52 % 4294967296 % 4294967296 else isfinite_double_#t~mem52 % 4294967296 % 4294967296 - 4294967296); [L264] call write~real(isfinite_double_#t~union53, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, 8); [L264] havoc isfinite_double_#t~union53; [L264] havoc isfinite_double_#t~mem52; [L262] call ULTIMATE.dealloc(isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset); [L262] havoc isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L266] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret55 := isfinite_double_#res; [L280] assume -2147483648 <= main_#t~ret55 && main_#t~ret55 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret55; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] assume main_#t~short57; [L280] isinf_double_#in~x := main_~y~0; [L280] havoc isinf_double_#res; [L280] havoc isinf_double_#t~mem48, isinf_double_#t~union49, isinf_double_#t~mem50, isinf_double_#t~union51, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, isinf_double_~x, isinf_double_~hx~2, isinf_double_~lx~1; [L245-L257] isinf_double_~x := isinf_double_#in~x; [L246] havoc isinf_double_~hx~2; [L246] havoc isinf_double_~lx~1; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L248] call isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset := #Ultimate.alloc(8); [L249] call write~real(isinf_double_~x, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8); [L250] call isinf_double_#t~mem48 := read~int(isinf_double_~#ew_u~2.base, 4 + isinf_double_~#ew_u~2.offset, 4); [L250] isinf_double_~hx~2 := (if isinf_double_#t~mem48 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem48 % 4294967296 % 4294967296 else isinf_double_#t~mem48 % 4294967296 % 4294967296 - 4294967296); [L250] call write~real(isinf_double_#t~union49, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8); [L250] havoc isinf_double_#t~union49; [L250] havoc isinf_double_#t~mem48; [L251] call isinf_double_#t~mem50 := read~int(isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 4); [L251] isinf_double_~lx~1 := (if isinf_double_#t~mem50 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem50 % 4294967296 % 4294967296 else isinf_double_#t~mem50 % 4294967296 % 4294967296 - 4294967296); [L251] call write~real(isinf_double_#t~union51, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8); [L251] havoc isinf_double_#t~mem50; [L251] havoc isinf_double_#t~union51; [L248] call ULTIMATE.dealloc(isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset); [L248] havoc isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~hx~2=4096, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L253] isinf_double_~hx~2 := ~bitwiseAnd(isinf_double_~hx~2, 2147483647); [L254] isinf_double_~hx~2 := (if ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296); [L255] isinf_double_~hx~2 := 2146435072 - isinf_double_~hx~2; [L256] isinf_double_#res := 1 - (if ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret56 := isinf_double_#res; [L280] assume -2147483648 <= main_#t~ret56 && main_#t~ret56 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret56; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~ret56=-1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280-L289] assume main_#t~short57; [L280] havoc main_#t~ret56; [L280] havoc main_#t~ret55; [L280] havoc main_#t~short57; [L282] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L282] havoc __ieee754_atan2_#res; [L282] havoc __ieee754_atan2_#t~mem27, __ieee754_atan2_#t~union28, __ieee754_atan2_#t~mem29, __ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, __ieee754_atan2_#t~mem31, __ieee754_atan2_#t~union32, __ieee754_atan2_#t~mem33, __ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, __ieee754_atan2_#t~ret35, __ieee754_atan2_#t~switch36, __ieee754_atan2_#t~ite37, __ieee754_atan2_#t~switch38, __ieee754_atan2_#t~switch39, __ieee754_atan2_#t~ite40, __ieee754_atan2_#t~ret41, __ieee754_atan2_#t~ret42, __ieee754_atan2_#t~switch43, __ieee754_atan2_#t~mem44, __ieee754_atan2_#t~union45, __ieee754_atan2_~#gh_u~2.base, __ieee754_atan2_~#gh_u~2.offset, __ieee754_atan2_#t~mem46, __ieee754_atan2_#t~union47.lsw, __ieee754_atan2_#t~union47.msw, __ieee754_atan2_~#sh_u~1.base, __ieee754_atan2_~#sh_u~1.offset, __ieee754_atan2_~zh~0, __ieee754_atan2_~y, __ieee754_atan2_~x, __ieee754_atan2_~z~1, __ieee754_atan2_~k~0, __ieee754_atan2_~m~0, __ieee754_atan2_~hx~1, __ieee754_atan2_~hy~0, __ieee754_atan2_~ix~1, __ieee754_atan2_~iy~0, __ieee754_atan2_~lx~0, __ieee754_atan2_~ly~0; [L142-L242] __ieee754_atan2_~y := __ieee754_atan2_#in~y; [L142-L242] __ieee754_atan2_~x := __ieee754_atan2_#in~x; [L143] havoc __ieee754_atan2_~z~1; [L144] havoc __ieee754_atan2_~k~0; [L144] havoc __ieee754_atan2_~m~0; [L144] havoc __ieee754_atan2_~hx~1; [L144] havoc __ieee754_atan2_~hy~0; [L144] havoc __ieee754_atan2_~ix~1; [L144] havoc __ieee754_atan2_~iy~0; [L145] havoc __ieee754_atan2_~lx~0; [L145] havoc __ieee754_atan2_~ly~0; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L148] call __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset := #Ultimate.alloc(8); [L149] call write~real(__ieee754_atan2_~x, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L150] call __ieee754_atan2_#t~mem27 := read~int(__ieee754_atan2_~#ew_u~0.base, 4 + __ieee754_atan2_~#ew_u~0.offset, 4); [L150] __ieee754_atan2_~hx~1 := (if __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 - 4294967296); [L150] call write~real(__ieee754_atan2_#t~union28, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L150] havoc __ieee754_atan2_#t~union28; [L150] havoc __ieee754_atan2_#t~mem27; [L151] call __ieee754_atan2_#t~mem29 := read~int(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] call write~real(__ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset); [L148] havoc __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L153] __ieee754_atan2_~ix~1 := ~bitwiseAnd(__ieee754_atan2_~hx~1, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L155] call __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset := #Ultimate.alloc(8); [L156] call write~real(__ieee754_atan2_~y, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L157] call __ieee754_atan2_#t~mem31 := read~int(__ieee754_atan2_~#ew_u~1.base, 4 + __ieee754_atan2_~#ew_u~1.offset, 4); [L157] __ieee754_atan2_~hy~0 := (if __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 - 4294967296); [L157] call write~real(__ieee754_atan2_#t~union32, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L157] havoc __ieee754_atan2_#t~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] call __ieee754_atan2_#t~mem33 := read~int(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] call write~real(__ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset); [L155] havoc __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L160] __ieee754_atan2_~iy~0 := ~bitwiseAnd(__ieee754_atan2_~hy~0, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L161-L163] assume ~bitwiseOr(__ieee754_atan2_~ix~1, ~bitwiseOr(__ieee754_atan2_~lx~0, -__ieee754_atan2_~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(__ieee754_atan2_~iy~0, ~bitwiseOr(__ieee754_atan2_~ly~0, -__ieee754_atan2_~ly~0) / 2147483648) % 4294967296 > 2146435072; [L163] __ieee754_atan2_#res := ~someBinaryArithmeticDOUBLEoperation(__ieee754_atan2_~x, __ieee754_atan2_~y); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L282] main_#t~ret58 := __ieee754_atan2_#res; [L282] main_~res~0 := main_#t~ret58; [L282] havoc main_#t~ret58; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L285-L288] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L286] assert false; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] #NULL.base, #NULL.offset := 0, 0; [?] #valid := #valid[0 := 0]; [L37-L42] call ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset := #Ultimate.alloc(32); [L37-L42] call write~init~real(0.4636476090008061, ~#atanhi_atan~0.base, ~#atanhi_atan~0.offset, 8); [L37-L42] call write~init~real(0.7853981633974483, ~#atanhi_atan~0.base, 8 + ~#atanhi_atan~0.offset, 8); [L37-L42] call write~init~real(0.982793723247329, ~#atanhi_atan~0.base, 16 + ~#atanhi_atan~0.offset, 8); [L37-L42] call write~init~real(1.5707963267948966, ~#atanhi_atan~0.base, 24 + ~#atanhi_atan~0.offset, 8); [L44-L49] call ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset := #Ultimate.alloc(32); [L44-L49] call write~init~real(2.2698777452961687E-17, ~#atanlo_atan~0.base, ~#atanlo_atan~0.offset, 8); [L44-L49] call write~init~real(3.061616997868383E-17, ~#atanlo_atan~0.base, 8 + ~#atanlo_atan~0.offset, 8); [L44-L49] call write~init~real(1.3903311031230998E-17, ~#atanlo_atan~0.base, 16 + ~#atanlo_atan~0.offset, 8); [L44-L49] call write~init~real(6.123233995736766E-17, ~#atanlo_atan~0.base, 24 + ~#atanlo_atan~0.offset, 8); [L51-L58] call ~#aT_atan~0.base, ~#aT_atan~0.offset := #Ultimate.alloc(88); [L51-L58] call write~init~real(0.3333333333333293, ~#aT_atan~0.base, ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), ~#aT_atan~0.base, 8 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.14285714272503466, ~#aT_atan~0.base, 16 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), ~#aT_atan~0.base, 24 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.09090887133436507, ~#aT_atan~0.base, 32 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), ~#aT_atan~0.base, 40 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.06661073137387531, ~#aT_atan~0.base, 48 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), ~#aT_atan~0.base, 56 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.049768779946159324, ~#aT_atan~0.base, 64 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), ~#aT_atan~0.base, 72 + ~#aT_atan~0.offset, 8); [L51-L58] call write~init~real(0.016285820115365782, ~#aT_atan~0.base, 80 + ~#aT_atan~0.offset, 8); [L60-L62] ~one_atan~0 := 1.0; [L60-L62] ~pi_o_4~0 := 0.7853981633974483; [L60-L62] ~pi_o_2~0 := 1.5707963267948966; [L60-L62] ~pi~0 := 3.141592653589793; [L60-L62] ~huge_atan~0 := 1.0E300; [L139-L140] ~tiny_atan2~0 := 1.0E-300; [L139-L140] ~zero_atan2~0 := 0.0; [L139-L140] ~pi_lo_atan2~0 := 1.2246467991473532E-16; [?] havoc main_#res; [?] havoc main_#t~nondet54, main_#t~ret55, main_#t~ret56, main_#t~short57, main_#t~ret58, main_~res~0, main_~x~0, main_~y~0; [L276] main_~x~0 := main_#t~nondet54; [L276] havoc main_#t~nondet54; [L277] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L280] isfinite_double_#in~x := main_~x~0; [L280] havoc isfinite_double_#res; [L280] havoc isfinite_double_#t~mem52, isfinite_double_#t~union53, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, isfinite_double_~x, isfinite_double_~hx~3; [L259-L267] isfinite_double_~x := isfinite_double_#in~x; [L260] havoc isfinite_double_~hx~3; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L262] call isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset := #Ultimate.alloc(8); [L263] call write~real(isfinite_double_~x, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, 8); [L264] call isfinite_double_#t~mem52 := read~int(isfinite_double_~#gh_u~3.base, 4 + isfinite_double_~#gh_u~3.offset, 4); [L264] isfinite_double_~hx~3 := (if isfinite_double_#t~mem52 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem52 % 4294967296 % 4294967296 else isfinite_double_#t~mem52 % 4294967296 % 4294967296 - 4294967296); [L264] call write~real(isfinite_double_#t~union53, isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset, 8); [L264] havoc isfinite_double_#t~union53; [L264] havoc isfinite_double_#t~mem52; [L262] call ULTIMATE.dealloc(isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset); [L262] havoc isfinite_double_~#gh_u~3.base, isfinite_double_~#gh_u~3.offset; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L266] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret55 := isfinite_double_#res; [L280] assume -2147483648 <= main_#t~ret55 && main_#t~ret55 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret55; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] assume main_#t~short57; [L280] isinf_double_#in~x := main_~y~0; [L280] havoc isinf_double_#res; [L280] havoc isinf_double_#t~mem48, isinf_double_#t~union49, isinf_double_#t~mem50, isinf_double_#t~union51, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, isinf_double_~x, isinf_double_~hx~2, isinf_double_~lx~1; [L245-L257] isinf_double_~x := isinf_double_#in~x; [L246] havoc isinf_double_~hx~2; [L246] havoc isinf_double_~lx~1; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L248] call isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset := #Ultimate.alloc(8); [L249] call write~real(isinf_double_~x, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8); [L250] call isinf_double_#t~mem48 := read~int(isinf_double_~#ew_u~2.base, 4 + isinf_double_~#ew_u~2.offset, 4); [L250] isinf_double_~hx~2 := (if isinf_double_#t~mem48 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem48 % 4294967296 % 4294967296 else isinf_double_#t~mem48 % 4294967296 % 4294967296 - 4294967296); [L250] call write~real(isinf_double_#t~union49, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8); [L250] havoc isinf_double_#t~union49; [L250] havoc isinf_double_#t~mem48; [L251] call isinf_double_#t~mem50 := read~int(isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 4); [L251] isinf_double_~lx~1 := (if isinf_double_#t~mem50 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem50 % 4294967296 % 4294967296 else isinf_double_#t~mem50 % 4294967296 % 4294967296 - 4294967296); [L251] call write~real(isinf_double_#t~union51, isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset, 8); [L251] havoc isinf_double_#t~mem50; [L251] havoc isinf_double_#t~union51; [L248] call ULTIMATE.dealloc(isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset); [L248] havoc isinf_double_~#ew_u~2.base, isinf_double_~#ew_u~2.offset; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~hx~2=4096, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L253] isinf_double_~hx~2 := ~bitwiseAnd(isinf_double_~hx~2, 2147483647); [L254] isinf_double_~hx~2 := (if ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296); [L255] isinf_double_~hx~2 := 2146435072 - isinf_double_~hx~2; [L256] isinf_double_#res := 1 - (if ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret56 := isinf_double_#res; [L280] assume -2147483648 <= main_#t~ret56 && main_#t~ret56 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret56; VAL [#NULL.base=0, #NULL.offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~ret56=-1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280-L289] assume main_#t~short57; [L280] havoc main_#t~ret56; [L280] havoc main_#t~ret55; [L280] havoc main_#t~short57; [L282] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L282] havoc __ieee754_atan2_#res; [L282] havoc __ieee754_atan2_#t~mem27, __ieee754_atan2_#t~union28, __ieee754_atan2_#t~mem29, __ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, __ieee754_atan2_#t~mem31, __ieee754_atan2_#t~union32, __ieee754_atan2_#t~mem33, __ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, __ieee754_atan2_#t~ret35, __ieee754_atan2_#t~switch36, __ieee754_atan2_#t~ite37, __ieee754_atan2_#t~switch38, __ieee754_atan2_#t~switch39, __ieee754_atan2_#t~ite40, __ieee754_atan2_#t~ret41, __ieee754_atan2_#t~ret42, __ieee754_atan2_#t~switch43, __ieee754_atan2_#t~mem44, __ieee754_atan2_#t~union45, __ieee754_atan2_~#gh_u~2.base, __ieee754_atan2_~#gh_u~2.offset, __ieee754_atan2_#t~mem46, __ieee754_atan2_#t~union47.lsw, __ieee754_atan2_#t~union47.msw, __ieee754_atan2_~#sh_u~1.base, __ieee754_atan2_~#sh_u~1.offset, __ieee754_atan2_~zh~0, __ieee754_atan2_~y, __ieee754_atan2_~x, __ieee754_atan2_~z~1, __ieee754_atan2_~k~0, __ieee754_atan2_~m~0, __ieee754_atan2_~hx~1, __ieee754_atan2_~hy~0, __ieee754_atan2_~ix~1, __ieee754_atan2_~iy~0, __ieee754_atan2_~lx~0, __ieee754_atan2_~ly~0; [L142-L242] __ieee754_atan2_~y := __ieee754_atan2_#in~y; [L142-L242] __ieee754_atan2_~x := __ieee754_atan2_#in~x; [L143] havoc __ieee754_atan2_~z~1; [L144] havoc __ieee754_atan2_~k~0; [L144] havoc __ieee754_atan2_~m~0; [L144] havoc __ieee754_atan2_~hx~1; [L144] havoc __ieee754_atan2_~hy~0; [L144] havoc __ieee754_atan2_~ix~1; [L144] havoc __ieee754_atan2_~iy~0; [L145] havoc __ieee754_atan2_~lx~0; [L145] havoc __ieee754_atan2_~ly~0; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L148] call __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset := #Ultimate.alloc(8); [L149] call write~real(__ieee754_atan2_~x, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L150] call __ieee754_atan2_#t~mem27 := read~int(__ieee754_atan2_~#ew_u~0.base, 4 + __ieee754_atan2_~#ew_u~0.offset, 4); [L150] __ieee754_atan2_~hx~1 := (if __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 - 4294967296); [L150] call write~real(__ieee754_atan2_#t~union28, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L150] havoc __ieee754_atan2_#t~union28; [L150] havoc __ieee754_atan2_#t~mem27; [L151] call __ieee754_atan2_#t~mem29 := read~int(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] call write~real(__ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset); [L148] havoc __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L153] __ieee754_atan2_~ix~1 := ~bitwiseAnd(__ieee754_atan2_~hx~1, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L155] call __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset := #Ultimate.alloc(8); [L156] call write~real(__ieee754_atan2_~y, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L157] call __ieee754_atan2_#t~mem31 := read~int(__ieee754_atan2_~#ew_u~1.base, 4 + __ieee754_atan2_~#ew_u~1.offset, 4); [L157] __ieee754_atan2_~hy~0 := (if __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 - 4294967296); [L157] call write~real(__ieee754_atan2_#t~union32, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L157] havoc __ieee754_atan2_#t~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] call __ieee754_atan2_#t~mem33 := read~int(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] call write~real(__ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset); [L155] havoc __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L160] __ieee754_atan2_~iy~0 := ~bitwiseAnd(__ieee754_atan2_~hy~0, 2147483647); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L161-L163] assume ~bitwiseOr(__ieee754_atan2_~ix~1, ~bitwiseOr(__ieee754_atan2_~lx~0, -__ieee754_atan2_~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(__ieee754_atan2_~iy~0, ~bitwiseOr(__ieee754_atan2_~ly~0, -__ieee754_atan2_~ly~0) / 2147483648) % 4294967296 > 2146435072; [L163] __ieee754_atan2_#res := ~someBinaryArithmeticDOUBLEoperation(__ieee754_atan2_~x, __ieee754_atan2_~y); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L282] main_#t~ret58 := __ieee754_atan2_#res; [L282] main_~res~0 := main_#t~ret58; [L282] havoc main_#t~ret58; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L285-L288] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L286] assert false; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0.base=6, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=5, ~#atanhi_atan~0.offset=0, ~#atanlo_atan~0.base=3, ~#atanlo_atan~0.offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L37-L42] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(32); [L37-L42] FCALL call write~init~real(0.4636476090008061, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.7853981633974483, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.982793723247329, { base: ~#atanhi_atan~0!base, offset: 16 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(1.5707963267948966, { base: ~#atanhi_atan~0!base, offset: 24 + ~#atanhi_atan~0!offset }, 8); [L44-L49] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(32); [L44-L49] FCALL call write~init~real(2.2698777452961687E-17, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(3.061616997868383E-17, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(1.3903311031230998E-17, { base: ~#atanlo_atan~0!base, offset: 16 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(6.123233995736766E-17, { base: ~#atanlo_atan~0!base, offset: 24 + ~#atanlo_atan~0!offset }, 8); [L51-L58] FCALL call ~#aT_atan~0 := #Ultimate.alloc(88); [L51-L58] FCALL call write~init~real(0.3333333333333293, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.14285714272503466, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.09090887133436507, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.06661073137387531, { base: ~#aT_atan~0!base, offset: 48 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), { base: ~#aT_atan~0!base, offset: 56 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.049768779946159324, { base: ~#aT_atan~0!base, offset: 64 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), { base: ~#aT_atan~0!base, offset: 72 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.016285820115365782, { base: ~#aT_atan~0!base, offset: 80 + ~#aT_atan~0!offset }, 8); [L60-L62] ~one_atan~0 := 1.0; [L60-L62] ~pi_o_4~0 := 0.7853981633974483; [L60-L62] ~pi_o_2~0 := 1.5707963267948966; [L60-L62] ~pi~0 := 3.141592653589793; [L60-L62] ~huge_atan~0 := 1.0E300; [L139-L140] ~tiny_atan2~0 := 1.0E-300; [L139-L140] ~zero_atan2~0 := 0.0; [L139-L140] ~pi_lo_atan2~0 := 1.2246467991473532E-16; [?] havoc main_#res; [?] havoc main_#t~nondet54, main_#t~ret55, main_#t~ret56, main_#t~short57, main_#t~ret58, main_~res~0, main_~x~0, main_~y~0; [L276] main_~x~0 := main_#t~nondet54; [L276] havoc main_#t~nondet54; [L277] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L280] isfinite_double_#in~x := main_~x~0; [L280] havoc isfinite_double_#res; [L280] havoc isfinite_double_#t~mem52, isfinite_double_#t~union53, isfinite_double_~#gh_u~3, isfinite_double_~x, isfinite_double_~hx~3; [L259-L267] isfinite_double_~x := isfinite_double_#in~x; [L260] havoc isfinite_double_~hx~3; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L262] FCALL call isfinite_double_~#gh_u~3 := #Ultimate.alloc(8); [L263] FCALL call write~real(isfinite_double_~x, { base: isfinite_double_~#gh_u~3!base, offset: isfinite_double_~#gh_u~3!offset }, 8); [L264] FCALL call isfinite_double_#t~mem52 := read~int({ base: isfinite_double_~#gh_u~3!base, offset: 4 + isfinite_double_~#gh_u~3!offset }, 4); [L264] isfinite_double_~hx~3 := (if isfinite_double_#t~mem52 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem52 % 4294967296 % 4294967296 else isfinite_double_#t~mem52 % 4294967296 % 4294967296 - 4294967296); [L264] FCALL call write~real(isfinite_double_#t~union53, { base: isfinite_double_~#gh_u~3!base, offset: isfinite_double_~#gh_u~3!offset }, 8); [L264] havoc isfinite_double_#t~union53; [L264] havoc isfinite_double_#t~mem52; [L262] FCALL call ULTIMATE.dealloc(isfinite_double_~#gh_u~3); [L262] havoc isfinite_double_~#gh_u~3; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L266] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret55 := isfinite_double_#res; [L280] assume -2147483648 <= main_#t~ret55 && main_#t~ret55 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret55; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE main_#t~short57 [L280] isinf_double_#in~x := main_~y~0; [L280] havoc isinf_double_#res; [L280] havoc isinf_double_#t~mem48, isinf_double_#t~union49, isinf_double_#t~mem50, isinf_double_#t~union51, isinf_double_~#ew_u~2, isinf_double_~x, isinf_double_~hx~2, isinf_double_~lx~1; [L245-L257] isinf_double_~x := isinf_double_#in~x; [L246] havoc isinf_double_~hx~2; [L246] havoc isinf_double_~lx~1; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L248] FCALL call isinf_double_~#ew_u~2 := #Ultimate.alloc(8); [L249] FCALL call write~real(isinf_double_~x, { base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 8); [L250] FCALL call isinf_double_#t~mem48 := read~int({ base: isinf_double_~#ew_u~2!base, offset: 4 + isinf_double_~#ew_u~2!offset }, 4); [L250] isinf_double_~hx~2 := (if isinf_double_#t~mem48 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem48 % 4294967296 % 4294967296 else isinf_double_#t~mem48 % 4294967296 % 4294967296 - 4294967296); [L250] FCALL call write~real(isinf_double_#t~union49, { base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 8); [L250] havoc isinf_double_#t~union49; [L250] havoc isinf_double_#t~mem48; [L251] FCALL call isinf_double_#t~mem50 := read~int({ base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 4); [L251] isinf_double_~lx~1 := (if isinf_double_#t~mem50 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem50 % 4294967296 % 4294967296 else isinf_double_#t~mem50 % 4294967296 % 4294967296 - 4294967296); [L251] FCALL call write~real(isinf_double_#t~union51, { base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 8); [L251] havoc isinf_double_#t~mem50; [L251] havoc isinf_double_#t~union51; [L248] FCALL call ULTIMATE.dealloc(isinf_double_~#ew_u~2); [L248] havoc isinf_double_~#ew_u~2; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~hx~2=4096, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L253] isinf_double_~hx~2 := ~bitwiseAnd(isinf_double_~hx~2, 2147483647); [L254] isinf_double_~hx~2 := (if ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296); [L255] isinf_double_~hx~2 := 2146435072 - isinf_double_~hx~2; [L256] isinf_double_#res := 1 - (if ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret56 := isinf_double_#res; [L280] assume -2147483648 <= main_#t~ret56 && main_#t~ret56 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret56; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~ret56=-1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE main_#t~short57 [L280] havoc main_#t~ret56; [L280] havoc main_#t~ret55; [L280] havoc main_#t~short57; [L282] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L282] havoc __ieee754_atan2_#res; [L282] havoc __ieee754_atan2_#t~mem27, __ieee754_atan2_#t~union28, __ieee754_atan2_#t~mem29, __ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0, __ieee754_atan2_#t~mem31, __ieee754_atan2_#t~union32, __ieee754_atan2_#t~mem33, __ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1, __ieee754_atan2_#t~ret35, __ieee754_atan2_#t~switch36, __ieee754_atan2_#t~ite37, __ieee754_atan2_#t~switch38, __ieee754_atan2_#t~switch39, __ieee754_atan2_#t~ite40, __ieee754_atan2_#t~ret41, __ieee754_atan2_#t~ret42, __ieee754_atan2_#t~switch43, __ieee754_atan2_#t~mem44, __ieee754_atan2_#t~union45, __ieee754_atan2_~#gh_u~2, __ieee754_atan2_#t~mem46, __ieee754_atan2_#t~union47, __ieee754_atan2_~#sh_u~1, __ieee754_atan2_~zh~0, __ieee754_atan2_~y, __ieee754_atan2_~x, __ieee754_atan2_~z~1, __ieee754_atan2_~k~0, __ieee754_atan2_~m~0, __ieee754_atan2_~hx~1, __ieee754_atan2_~hy~0, __ieee754_atan2_~ix~1, __ieee754_atan2_~iy~0, __ieee754_atan2_~lx~0, __ieee754_atan2_~ly~0; [L142-L242] __ieee754_atan2_~y := __ieee754_atan2_#in~y; [L142-L242] __ieee754_atan2_~x := __ieee754_atan2_#in~x; [L143] havoc __ieee754_atan2_~z~1; [L144] havoc __ieee754_atan2_~k~0; [L144] havoc __ieee754_atan2_~m~0; [L144] havoc __ieee754_atan2_~hx~1; [L144] havoc __ieee754_atan2_~hy~0; [L144] havoc __ieee754_atan2_~ix~1; [L144] havoc __ieee754_atan2_~iy~0; [L145] havoc __ieee754_atan2_~lx~0; [L145] havoc __ieee754_atan2_~ly~0; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L148] FCALL call __ieee754_atan2_~#ew_u~0 := #Ultimate.alloc(8); [L149] FCALL call write~real(__ieee754_atan2_~x, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L150] FCALL call __ieee754_atan2_#t~mem27 := read~int({ base: __ieee754_atan2_~#ew_u~0!base, offset: 4 + __ieee754_atan2_~#ew_u~0!offset }, 4); [L150] __ieee754_atan2_~hx~1 := (if __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 - 4294967296); [L150] FCALL call write~real(__ieee754_atan2_#t~union28, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L150] havoc __ieee754_atan2_#t~union28; [L150] havoc __ieee754_atan2_#t~mem27; [L151] FCALL call __ieee754_atan2_#t~mem29 := read~int({ base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] FCALL call write~real(__ieee754_atan2_#t~union30, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0); [L148] havoc __ieee754_atan2_~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L153] __ieee754_atan2_~ix~1 := ~bitwiseAnd(__ieee754_atan2_~hx~1, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L155] FCALL call __ieee754_atan2_~#ew_u~1 := #Ultimate.alloc(8); [L156] FCALL call write~real(__ieee754_atan2_~y, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L157] FCALL call __ieee754_atan2_#t~mem31 := read~int({ base: __ieee754_atan2_~#ew_u~1!base, offset: 4 + __ieee754_atan2_~#ew_u~1!offset }, 4); [L157] __ieee754_atan2_~hy~0 := (if __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 - 4294967296); [L157] FCALL call write~real(__ieee754_atan2_#t~union32, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L157] havoc __ieee754_atan2_#t~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] FCALL call __ieee754_atan2_#t~mem33 := read~int({ base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] FCALL call write~real(__ieee754_atan2_#t~union34, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1); [L155] havoc __ieee754_atan2_~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L160] __ieee754_atan2_~iy~0 := ~bitwiseAnd(__ieee754_atan2_~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L161-L162] COND TRUE ~bitwiseOr(__ieee754_atan2_~ix~1, ~bitwiseOr(__ieee754_atan2_~lx~0, -__ieee754_atan2_~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(__ieee754_atan2_~iy~0, ~bitwiseOr(__ieee754_atan2_~ly~0, -__ieee754_atan2_~ly~0) / 2147483648) % 4294967296 > 2146435072 [L163] __ieee754_atan2_#res := ~someBinaryArithmeticDOUBLEoperation(__ieee754_atan2_~x, __ieee754_atan2_~y); VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L282] main_#t~ret58 := __ieee754_atan2_#res; [L282] main_~res~0 := main_#t~ret58; [L282] havoc main_#t~ret58; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L285] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L286] assert false; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L37-L42] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(32); [L37-L42] FCALL call write~init~real(0.4636476090008061, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.7853981633974483, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.982793723247329, { base: ~#atanhi_atan~0!base, offset: 16 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(1.5707963267948966, { base: ~#atanhi_atan~0!base, offset: 24 + ~#atanhi_atan~0!offset }, 8); [L44-L49] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(32); [L44-L49] FCALL call write~init~real(2.2698777452961687E-17, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(3.061616997868383E-17, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(1.3903311031230998E-17, { base: ~#atanlo_atan~0!base, offset: 16 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(6.123233995736766E-17, { base: ~#atanlo_atan~0!base, offset: 24 + ~#atanlo_atan~0!offset }, 8); [L51-L58] FCALL call ~#aT_atan~0 := #Ultimate.alloc(88); [L51-L58] FCALL call write~init~real(0.3333333333333293, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.14285714272503466, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.09090887133436507, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.06661073137387531, { base: ~#aT_atan~0!base, offset: 48 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), { base: ~#aT_atan~0!base, offset: 56 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.049768779946159324, { base: ~#aT_atan~0!base, offset: 64 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), { base: ~#aT_atan~0!base, offset: 72 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.016285820115365782, { base: ~#aT_atan~0!base, offset: 80 + ~#aT_atan~0!offset }, 8); [L60-L62] ~one_atan~0 := 1.0; [L60-L62] ~pi_o_4~0 := 0.7853981633974483; [L60-L62] ~pi_o_2~0 := 1.5707963267948966; [L60-L62] ~pi~0 := 3.141592653589793; [L60-L62] ~huge_atan~0 := 1.0E300; [L139-L140] ~tiny_atan2~0 := 1.0E-300; [L139-L140] ~zero_atan2~0 := 0.0; [L139-L140] ~pi_lo_atan2~0 := 1.2246467991473532E-16; [?] havoc main_#res; [?] havoc main_#t~nondet54, main_#t~ret55, main_#t~ret56, main_#t~short57, main_#t~ret58, main_~res~0, main_~x~0, main_~y~0; [L276] main_~x~0 := main_#t~nondet54; [L276] havoc main_#t~nondet54; [L277] main_~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L280] isfinite_double_#in~x := main_~x~0; [L280] havoc isfinite_double_#res; [L280] havoc isfinite_double_#t~mem52, isfinite_double_#t~union53, isfinite_double_~#gh_u~3, isfinite_double_~x, isfinite_double_~hx~3; [L259-L267] isfinite_double_~x := isfinite_double_#in~x; [L260] havoc isfinite_double_~hx~3; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L262] FCALL call isfinite_double_~#gh_u~3 := #Ultimate.alloc(8); [L263] FCALL call write~real(isfinite_double_~x, { base: isfinite_double_~#gh_u~3!base, offset: isfinite_double_~#gh_u~3!offset }, 8); [L264] FCALL call isfinite_double_#t~mem52 := read~int({ base: isfinite_double_~#gh_u~3!base, offset: 4 + isfinite_double_~#gh_u~3!offset }, 4); [L264] isfinite_double_~hx~3 := (if isfinite_double_#t~mem52 % 4294967296 % 4294967296 <= 2147483647 then isfinite_double_#t~mem52 % 4294967296 % 4294967296 else isfinite_double_#t~mem52 % 4294967296 % 4294967296 - 4294967296); [L264] FCALL call write~real(isfinite_double_#t~union53, { base: isfinite_double_~#gh_u~3!base, offset: isfinite_double_~#gh_u~3!offset }, 8); [L264] havoc isfinite_double_#t~union53; [L264] havoc isfinite_double_#t~mem52; [L262] FCALL call ULTIMATE.dealloc(isfinite_double_~#gh_u~3); [L262] havoc isfinite_double_~#gh_u~3; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_~x~0=2.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L266] isfinite_double_#res := (if (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(isfinite_double_~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret55 := isfinite_double_#res; [L280] assume -2147483648 <= main_#t~ret55 && main_#t~ret55 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret55; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE main_#t~short57 [L280] isinf_double_#in~x := main_~y~0; [L280] havoc isinf_double_#res; [L280] havoc isinf_double_#t~mem48, isinf_double_#t~union49, isinf_double_#t~mem50, isinf_double_#t~union51, isinf_double_~#ew_u~2, isinf_double_~x, isinf_double_~hx~2, isinf_double_~lx~1; [L245-L257] isinf_double_~x := isinf_double_#in~x; [L246] havoc isinf_double_~hx~2; [L246] havoc isinf_double_~lx~1; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L248] FCALL call isinf_double_~#ew_u~2 := #Ultimate.alloc(8); [L249] FCALL call write~real(isinf_double_~x, { base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 8); [L250] FCALL call isinf_double_#t~mem48 := read~int({ base: isinf_double_~#ew_u~2!base, offset: 4 + isinf_double_~#ew_u~2!offset }, 4); [L250] isinf_double_~hx~2 := (if isinf_double_#t~mem48 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem48 % 4294967296 % 4294967296 else isinf_double_#t~mem48 % 4294967296 % 4294967296 - 4294967296); [L250] FCALL call write~real(isinf_double_#t~union49, { base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 8); [L250] havoc isinf_double_#t~union49; [L250] havoc isinf_double_#t~mem48; [L251] FCALL call isinf_double_#t~mem50 := read~int({ base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 4); [L251] isinf_double_~lx~1 := (if isinf_double_#t~mem50 % 4294967296 % 4294967296 <= 2147483647 then isinf_double_#t~mem50 % 4294967296 % 4294967296 else isinf_double_#t~mem50 % 4294967296 % 4294967296 - 4294967296); [L251] FCALL call write~real(isinf_double_#t~union51, { base: isinf_double_~#ew_u~2!base, offset: isinf_double_~#ew_u~2!offset }, 8); [L251] havoc isinf_double_#t~mem50; [L251] havoc isinf_double_#t~union51; [L248] FCALL call ULTIMATE.dealloc(isinf_double_~#ew_u~2); [L248] havoc isinf_double_~#ew_u~2; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_~hx~2=4096, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L253] isinf_double_~hx~2 := ~bitwiseAnd(isinf_double_~hx~2, 2147483647); [L254] isinf_double_~hx~2 := (if ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, ~bitwiseOr(isinf_double_~lx~1, -isinf_double_~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296); [L255] isinf_double_~hx~2 := 2146435072 - isinf_double_~hx~2; [L256] isinf_double_#res := 1 - (if ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(isinf_double_~hx~2, -isinf_double_~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] main_#t~ret56 := isinf_double_#res; [L280] assume -2147483648 <= main_#t~ret56 && main_#t~ret56 <= 2147483647; [L280] main_#t~short57 := 0 != main_#t~ret56; VAL [#NULL!base=0, #NULL!offset=0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_#t~ret55=1, main_#t~ret56=-1, main_#t~short57=true, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE main_#t~short57 [L280] havoc main_#t~ret56; [L280] havoc main_#t~ret55; [L280] havoc main_#t~short57; [L282] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L282] havoc __ieee754_atan2_#res; [L282] havoc __ieee754_atan2_#t~mem27, __ieee754_atan2_#t~union28, __ieee754_atan2_#t~mem29, __ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0, __ieee754_atan2_#t~mem31, __ieee754_atan2_#t~union32, __ieee754_atan2_#t~mem33, __ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1, __ieee754_atan2_#t~ret35, __ieee754_atan2_#t~switch36, __ieee754_atan2_#t~ite37, __ieee754_atan2_#t~switch38, __ieee754_atan2_#t~switch39, __ieee754_atan2_#t~ite40, __ieee754_atan2_#t~ret41, __ieee754_atan2_#t~ret42, __ieee754_atan2_#t~switch43, __ieee754_atan2_#t~mem44, __ieee754_atan2_#t~union45, __ieee754_atan2_~#gh_u~2, __ieee754_atan2_#t~mem46, __ieee754_atan2_#t~union47, __ieee754_atan2_~#sh_u~1, __ieee754_atan2_~zh~0, __ieee754_atan2_~y, __ieee754_atan2_~x, __ieee754_atan2_~z~1, __ieee754_atan2_~k~0, __ieee754_atan2_~m~0, __ieee754_atan2_~hx~1, __ieee754_atan2_~hy~0, __ieee754_atan2_~ix~1, __ieee754_atan2_~iy~0, __ieee754_atan2_~lx~0, __ieee754_atan2_~ly~0; [L142-L242] __ieee754_atan2_~y := __ieee754_atan2_#in~y; [L142-L242] __ieee754_atan2_~x := __ieee754_atan2_#in~x; [L143] havoc __ieee754_atan2_~z~1; [L144] havoc __ieee754_atan2_~k~0; [L144] havoc __ieee754_atan2_~m~0; [L144] havoc __ieee754_atan2_~hx~1; [L144] havoc __ieee754_atan2_~hy~0; [L144] havoc __ieee754_atan2_~ix~1; [L144] havoc __ieee754_atan2_~iy~0; [L145] havoc __ieee754_atan2_~lx~0; [L145] havoc __ieee754_atan2_~ly~0; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L148] FCALL call __ieee754_atan2_~#ew_u~0 := #Ultimate.alloc(8); [L149] FCALL call write~real(__ieee754_atan2_~x, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L150] FCALL call __ieee754_atan2_#t~mem27 := read~int({ base: __ieee754_atan2_~#ew_u~0!base, offset: 4 + __ieee754_atan2_~#ew_u~0!offset }, 4); [L150] __ieee754_atan2_~hx~1 := (if __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem27 % 4294967296 % 4294967296 - 4294967296); [L150] FCALL call write~real(__ieee754_atan2_#t~union28, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L150] havoc __ieee754_atan2_#t~union28; [L150] havoc __ieee754_atan2_#t~mem27; [L151] FCALL call __ieee754_atan2_#t~mem29 := read~int({ base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] FCALL call write~real(__ieee754_atan2_#t~union30, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0); [L148] havoc __ieee754_atan2_~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L153] __ieee754_atan2_~ix~1 := ~bitwiseAnd(__ieee754_atan2_~hx~1, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L155] FCALL call __ieee754_atan2_~#ew_u~1 := #Ultimate.alloc(8); [L156] FCALL call write~real(__ieee754_atan2_~y, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L157] FCALL call __ieee754_atan2_#t~mem31 := read~int({ base: __ieee754_atan2_~#ew_u~1!base, offset: 4 + __ieee754_atan2_~#ew_u~1!offset }, 4); [L157] __ieee754_atan2_~hy~0 := (if __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 <= 2147483647 then __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 else __ieee754_atan2_#t~mem31 % 4294967296 % 4294967296 - 4294967296); [L157] FCALL call write~real(__ieee754_atan2_#t~union32, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L157] havoc __ieee754_atan2_#t~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] FCALL call __ieee754_atan2_#t~mem33 := read~int({ base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] FCALL call write~real(__ieee754_atan2_#t~union34, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1); [L155] havoc __ieee754_atan2_~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L160] __ieee754_atan2_~iy~0 := ~bitwiseAnd(__ieee754_atan2_~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L161-L162] COND TRUE ~bitwiseOr(__ieee754_atan2_~ix~1, ~bitwiseOr(__ieee754_atan2_~lx~0, -__ieee754_atan2_~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(__ieee754_atan2_~iy~0, ~bitwiseOr(__ieee754_atan2_~ly~0, -__ieee754_atan2_~ly~0) / 2147483648) % 4294967296 > 2146435072 [L163] __ieee754_atan2_#res := ~someBinaryArithmeticDOUBLEoperation(__ieee754_atan2_~x, __ieee754_atan2_~y); VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L282] main_#t~ret58 := __ieee754_atan2_#res; [L282] main_~res~0 := main_#t~ret58; [L282] havoc main_#t~ret58; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L285] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L286] assert false; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=2.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=6.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=15, __ieee754_atan2_~ly~0=19, __ieee754_atan2_~x=2.0, __ieee754_atan2_~y=3.0, isfinite_double_#in~x=2.0, isfinite_double_#res=1, isfinite_double_~hx~3=4096, isfinite_double_~x=2.0, isinf_double_#in~x=3.0, isinf_double_#res=-1, isinf_double_~hx~2=2146435072, isinf_double_~lx~1=4770, isinf_double_~x=3.0, main_~res~0=6.0, main_~x~0=2.0, main_~y~0=3.0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L37-L42] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(32); [L37-L42] FCALL call write~init~real(0.4636476090008061, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.7853981633974483, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.982793723247329, { base: ~#atanhi_atan~0!base, offset: 16 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(1.5707963267948966, { base: ~#atanhi_atan~0!base, offset: 24 + ~#atanhi_atan~0!offset }, 8); [L44-L49] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(32); [L44-L49] FCALL call write~init~real(2.2698777452961687E-17, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(3.061616997868383E-17, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(1.3903311031230998E-17, { base: ~#atanlo_atan~0!base, offset: 16 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(6.123233995736766E-17, { base: ~#atanlo_atan~0!base, offset: 24 + ~#atanlo_atan~0!offset }, 8); [L51-L58] FCALL call ~#aT_atan~0 := #Ultimate.alloc(88); [L51-L58] FCALL call write~init~real(0.3333333333333293, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.14285714272503466, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.09090887133436507, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.06661073137387531, { base: ~#aT_atan~0!base, offset: 48 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), { base: ~#aT_atan~0!base, offset: 56 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.049768779946159324, { base: ~#aT_atan~0!base, offset: 64 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), { base: ~#aT_atan~0!base, offset: 72 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.016285820115365782, { base: ~#aT_atan~0!base, offset: 80 + ~#aT_atan~0!offset }, 8); [L60-L62] ~one_atan~0 := 1.0; [L60-L62] ~pi_o_4~0 := 0.7853981633974483; [L60-L62] ~pi_o_2~0 := 1.5707963267948966; [L60-L62] ~pi~0 := 3.141592653589793; [L60-L62] ~huge_atan~0 := 1.0E300; [L139-L140] ~tiny_atan2~0 := 1.0E-300; [L139-L140] ~zero_atan2~0 := 0.0; [L139-L140] ~pi_lo_atan2~0 := 1.2246467991473532E-16; [L276] ~x~0 := #t~nondet54; [L276] havoc #t~nondet54; [L277] ~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L259-L267] ~x := #in~x; [L260] havoc ~hx~3; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L262] FCALL call ~#gh_u~3 := #Ultimate.alloc(8); [L263] FCALL call write~real(~x, { base: ~#gh_u~3!base, offset: ~#gh_u~3!offset }, 8); [L264] FCALL call #t~mem52 := read~int({ base: ~#gh_u~3!base, offset: 4 + ~#gh_u~3!offset }, 4); [L264] ~hx~3 := (if #t~mem52 % 4294967296 % 4294967296 <= 2147483647 then #t~mem52 % 4294967296 % 4294967296 else #t~mem52 % 4294967296 % 4294967296 - 4294967296); [L264] FCALL call write~real(#t~union53, { base: ~#gh_u~3!base, offset: ~#gh_u~3!offset }, 8); [L264] havoc #t~union53; [L264] havoc #t~mem52; [L262] FCALL call ULTIMATE.dealloc(~#gh_u~3); [L262] havoc ~#gh_u~3; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L266] #res := (if (~bitwiseAnd(~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] assume -2147483648 <= #t~ret55 && #t~ret55 <= 2147483647; [L280] #t~short57 := 0 != #t~ret55; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE #t~short57 [L245-L257] ~x := #in~x; [L246] havoc ~hx~2; [L246] havoc ~lx~1; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L248] FCALL call ~#ew_u~2 := #Ultimate.alloc(8); [L249] FCALL call write~real(~x, { base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 8); [L250] FCALL call #t~mem48 := read~int({ base: ~#ew_u~2!base, offset: 4 + ~#ew_u~2!offset }, 4); [L250] ~hx~2 := (if #t~mem48 % 4294967296 % 4294967296 <= 2147483647 then #t~mem48 % 4294967296 % 4294967296 else #t~mem48 % 4294967296 % 4294967296 - 4294967296); [L250] FCALL call write~real(#t~union49, { base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 8); [L250] havoc #t~union49; [L250] havoc #t~mem48; [L251] FCALL call #t~mem50 := read~int({ base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 4); [L251] ~lx~1 := (if #t~mem50 % 4294967296 % 4294967296 <= 2147483647 then #t~mem50 % 4294967296 % 4294967296 else #t~mem50 % 4294967296 % 4294967296 - 4294967296); [L251] FCALL call write~real(#t~union51, { base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 8); [L251] havoc #t~mem50; [L251] havoc #t~union51; [L248] FCALL call ULTIMATE.dealloc(~#ew_u~2); [L248] havoc ~#ew_u~2; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L253] ~hx~2 := ~bitwiseAnd(~hx~2, 2147483647); [L254] ~hx~2 := (if ~bitwiseOr(~hx~2, ~bitwiseOr(~lx~1, -~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(~hx~2, ~bitwiseOr(~lx~1, -~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(~hx~2, ~bitwiseOr(~lx~1, -~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296); [L255] ~hx~2 := 2146435072 - ~hx~2; [L256] #res := 1 - (if ~bitwiseOr(~hx~2, -~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(~hx~2, -~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(~hx~2, -~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] assume -2147483648 <= #t~ret56 && #t~ret56 <= 2147483647; [L280] #t~short57 := 0 != #t~ret56; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE #t~short57 [L280] havoc #t~ret56; [L280] havoc #t~ret55; [L280] havoc #t~short57; [L142-L242] ~y := #in~y; [L142-L242] ~x := #in~x; [L143] havoc ~z~1; [L144] havoc ~k~0; [L144] havoc ~m~0; [L144] havoc ~hx~1; [L144] havoc ~hy~0; [L144] havoc ~ix~1; [L144] havoc ~iy~0; [L145] havoc ~lx~0; [L145] havoc ~ly~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L148] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L149] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L150] FCALL call #t~mem27 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L150] ~hx~1 := (if #t~mem27 % 4294967296 % 4294967296 <= 2147483647 then #t~mem27 % 4294967296 % 4294967296 else #t~mem27 % 4294967296 % 4294967296 - 4294967296); [L150] FCALL call write~real(#t~union28, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L150] havoc #t~union28; [L150] havoc #t~mem27; [L151] FCALL call #t~mem29 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L151] ~lx~0 := #t~mem29; [L151] FCALL call write~real(#t~union30, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L151] havoc #t~mem29; [L151] havoc #t~union30; [L148] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L148] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L153] ~ix~1 := ~bitwiseAnd(~hx~1, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L155] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L156] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L157] FCALL call #t~mem31 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L157] ~hy~0 := (if #t~mem31 % 4294967296 % 4294967296 <= 2147483647 then #t~mem31 % 4294967296 % 4294967296 else #t~mem31 % 4294967296 % 4294967296 - 4294967296); [L157] FCALL call write~real(#t~union32, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L157] havoc #t~mem31; [L157] havoc #t~union32; [L158] FCALL call #t~mem33 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L158] ~ly~0 := #t~mem33; [L158] FCALL call write~real(#t~union34, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L158] havoc #t~mem33; [L158] havoc #t~union34; [L155] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L155] havoc ~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L160] ~iy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L161-L162] COND TRUE ~bitwiseOr(~ix~1, ~bitwiseOr(~lx~0, -~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(~iy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L163] #res := ~someBinaryArithmeticDOUBLEoperation(~x, ~y); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L282] ~res~0 := #t~ret58; [L282] havoc #t~ret58; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L285] COND TRUE ~someBinaryDOUBLEComparisonOperation(~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L286] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] #NULL := { base: 0, offset: 0 }; [?] #valid[0] := 0; [L37-L42] FCALL call ~#atanhi_atan~0 := #Ultimate.alloc(32); [L37-L42] FCALL call write~init~real(0.4636476090008061, { base: ~#atanhi_atan~0!base, offset: ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.7853981633974483, { base: ~#atanhi_atan~0!base, offset: 8 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(0.982793723247329, { base: ~#atanhi_atan~0!base, offset: 16 + ~#atanhi_atan~0!offset }, 8); [L37-L42] FCALL call write~init~real(1.5707963267948966, { base: ~#atanhi_atan~0!base, offset: 24 + ~#atanhi_atan~0!offset }, 8); [L44-L49] FCALL call ~#atanlo_atan~0 := #Ultimate.alloc(32); [L44-L49] FCALL call write~init~real(2.2698777452961687E-17, { base: ~#atanlo_atan~0!base, offset: ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(3.061616997868383E-17, { base: ~#atanlo_atan~0!base, offset: 8 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(1.3903311031230998E-17, { base: ~#atanlo_atan~0!base, offset: 16 + ~#atanlo_atan~0!offset }, 8); [L44-L49] FCALL call write~init~real(6.123233995736766E-17, { base: ~#atanlo_atan~0!base, offset: 24 + ~#atanlo_atan~0!offset }, 8); [L51-L58] FCALL call ~#aT_atan~0 := #Ultimate.alloc(88); [L51-L58] FCALL call write~init~real(0.3333333333333293, { base: ~#aT_atan~0!base, offset: ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.19999999999876483), { base: ~#aT_atan~0!base, offset: 8 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.14285714272503466, { base: ~#aT_atan~0!base, offset: 16 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.11111110405462356), { base: ~#aT_atan~0!base, offset: 24 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.09090887133436507, { base: ~#aT_atan~0!base, offset: 32 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.0769187620504483), { base: ~#aT_atan~0!base, offset: 40 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.06661073137387531, { base: ~#aT_atan~0!base, offset: 48 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.058335701337905735), { base: ~#aT_atan~0!base, offset: 56 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.049768779946159324, { base: ~#aT_atan~0!base, offset: 64 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(~someUnaryDOUBLEoperation(0.036531572744216916), { base: ~#aT_atan~0!base, offset: 72 + ~#aT_atan~0!offset }, 8); [L51-L58] FCALL call write~init~real(0.016285820115365782, { base: ~#aT_atan~0!base, offset: 80 + ~#aT_atan~0!offset }, 8); [L60-L62] ~one_atan~0 := 1.0; [L60-L62] ~pi_o_4~0 := 0.7853981633974483; [L60-L62] ~pi_o_2~0 := 1.5707963267948966; [L60-L62] ~pi~0 := 3.141592653589793; [L60-L62] ~huge_atan~0 := 1.0E300; [L139-L140] ~tiny_atan2~0 := 1.0E-300; [L139-L140] ~zero_atan2~0 := 0.0; [L139-L140] ~pi_lo_atan2~0 := 1.2246467991473532E-16; [L276] ~x~0 := #t~nondet54; [L276] havoc #t~nondet54; [L277] ~y~0 := ~someBinaryArithmeticDOUBLEoperation(1.0, 0.0); [L259-L267] ~x := #in~x; [L260] havoc ~hx~3; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L262] FCALL call ~#gh_u~3 := #Ultimate.alloc(8); [L263] FCALL call write~real(~x, { base: ~#gh_u~3!base, offset: ~#gh_u~3!offset }, 8); [L264] FCALL call #t~mem52 := read~int({ base: ~#gh_u~3!base, offset: 4 + ~#gh_u~3!offset }, 4); [L264] ~hx~3 := (if #t~mem52 % 4294967296 % 4294967296 <= 2147483647 then #t~mem52 % 4294967296 % 4294967296 else #t~mem52 % 4294967296 % 4294967296 - 4294967296); [L264] FCALL call write~real(#t~union53, { base: ~#gh_u~3!base, offset: ~#gh_u~3!offset }, 8); [L264] havoc #t~union53; [L264] havoc #t~mem52; [L262] FCALL call ULTIMATE.dealloc(~#gh_u~3); [L262] havoc ~#gh_u~3; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L266] #res := (if (~bitwiseAnd(~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then (~bitwiseAnd(~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 else (~bitwiseAnd(~hx~3, 2147483647) - 2146435072) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] assume -2147483648 <= #t~ret55 && #t~ret55 <= 2147483647; [L280] #t~short57 := 0 != #t~ret55; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE #t~short57 [L245-L257] ~x := #in~x; [L246] havoc ~hx~2; [L246] havoc ~lx~1; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L248] FCALL call ~#ew_u~2 := #Ultimate.alloc(8); [L249] FCALL call write~real(~x, { base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 8); [L250] FCALL call #t~mem48 := read~int({ base: ~#ew_u~2!base, offset: 4 + ~#ew_u~2!offset }, 4); [L250] ~hx~2 := (if #t~mem48 % 4294967296 % 4294967296 <= 2147483647 then #t~mem48 % 4294967296 % 4294967296 else #t~mem48 % 4294967296 % 4294967296 - 4294967296); [L250] FCALL call write~real(#t~union49, { base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 8); [L250] havoc #t~union49; [L250] havoc #t~mem48; [L251] FCALL call #t~mem50 := read~int({ base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 4); [L251] ~lx~1 := (if #t~mem50 % 4294967296 % 4294967296 <= 2147483647 then #t~mem50 % 4294967296 % 4294967296 else #t~mem50 % 4294967296 % 4294967296 - 4294967296); [L251] FCALL call write~real(#t~union51, { base: ~#ew_u~2!base, offset: ~#ew_u~2!offset }, 8); [L251] havoc #t~mem50; [L251] havoc #t~union51; [L248] FCALL call ULTIMATE.dealloc(~#ew_u~2); [L248] havoc ~#ew_u~2; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L253] ~hx~2 := ~bitwiseAnd(~hx~2, 2147483647); [L254] ~hx~2 := (if ~bitwiseOr(~hx~2, ~bitwiseOr(~lx~1, -~lx~1) / 2147483648) % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(~hx~2, ~bitwiseOr(~lx~1, -~lx~1) / 2147483648) % 4294967296 % 4294967296 else ~bitwiseOr(~hx~2, ~bitwiseOr(~lx~1, -~lx~1) / 2147483648) % 4294967296 % 4294967296 - 4294967296); [L255] ~hx~2 := 2146435072 - ~hx~2; [L256] #res := 1 - (if ~bitwiseOr(~hx~2, -~hx~2) / 2147483648 % 4294967296 % 4294967296 <= 2147483647 then ~bitwiseOr(~hx~2, -~hx~2) / 2147483648 % 4294967296 % 4294967296 else ~bitwiseOr(~hx~2, -~hx~2) / 2147483648 % 4294967296 % 4294967296 - 4294967296); [L280] assume -2147483648 <= #t~ret56 && #t~ret56 <= 2147483647; [L280] #t~short57 := 0 != #t~ret56; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L280] COND TRUE #t~short57 [L280] havoc #t~ret56; [L280] havoc #t~ret55; [L280] havoc #t~short57; [L142-L242] ~y := #in~y; [L142-L242] ~x := #in~x; [L143] havoc ~z~1; [L144] havoc ~k~0; [L144] havoc ~m~0; [L144] havoc ~hx~1; [L144] havoc ~hy~0; [L144] havoc ~ix~1; [L144] havoc ~iy~0; [L145] havoc ~lx~0; [L145] havoc ~ly~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L148] FCALL call ~#ew_u~0 := #Ultimate.alloc(8); [L149] FCALL call write~real(~x, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L150] FCALL call #t~mem27 := read~int({ base: ~#ew_u~0!base, offset: 4 + ~#ew_u~0!offset }, 4); [L150] ~hx~1 := (if #t~mem27 % 4294967296 % 4294967296 <= 2147483647 then #t~mem27 % 4294967296 % 4294967296 else #t~mem27 % 4294967296 % 4294967296 - 4294967296); [L150] FCALL call write~real(#t~union28, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L150] havoc #t~union28; [L150] havoc #t~mem27; [L151] FCALL call #t~mem29 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L151] ~lx~0 := #t~mem29; [L151] FCALL call write~real(#t~union30, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L151] havoc #t~mem29; [L151] havoc #t~union30; [L148] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L148] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L153] ~ix~1 := ~bitwiseAnd(~hx~1, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L155] FCALL call ~#ew_u~1 := #Ultimate.alloc(8); [L156] FCALL call write~real(~y, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L157] FCALL call #t~mem31 := read~int({ base: ~#ew_u~1!base, offset: 4 + ~#ew_u~1!offset }, 4); [L157] ~hy~0 := (if #t~mem31 % 4294967296 % 4294967296 <= 2147483647 then #t~mem31 % 4294967296 % 4294967296 else #t~mem31 % 4294967296 % 4294967296 - 4294967296); [L157] FCALL call write~real(#t~union32, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L157] havoc #t~mem31; [L157] havoc #t~union32; [L158] FCALL call #t~mem33 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L158] ~ly~0 := #t~mem33; [L158] FCALL call write~real(#t~union34, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L158] havoc #t~mem33; [L158] havoc #t~union34; [L155] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L155] havoc ~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L160] ~iy~0 := ~bitwiseAnd(~hy~0, 2147483647); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L161-L162] COND TRUE ~bitwiseOr(~ix~1, ~bitwiseOr(~lx~0, -~lx~0) / 2147483648) % 4294967296 > 2146435072 || ~bitwiseOr(~iy~0, ~bitwiseOr(~ly~0, -~ly~0) / 2147483648) % 4294967296 > 2146435072 [L163] #res := ~someBinaryArithmeticDOUBLEoperation(~x, ~y); VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L282] ~res~0 := #t~ret58; [L282] havoc #t~ret58; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L285] COND TRUE ~someBinaryDOUBLEComparisonOperation(~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L286] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=6, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=5, ~#atanhi_atan~0!offset=0, ~#atanlo_atan~0!base=3, ~#atanlo_atan~0!offset=0, ~huge_atan~0=1.0E300, ~one_atan~0=1.0, ~pi_lo_atan2~0=3061616997868382943/25000000000000000000000000000000000, ~pi_o_2~0=785398163397448279/500000000000000000, ~pi_o_4~0=785398163397448279/1000000000000000000, ~pi~0=785398163397448279/250000000000000000, ~tiny_atan2~0=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, ~zero_atan2~0=0.0] [L37-L42] static const double atanhi_atan[] = { 4.63647609000806093515e-01, 7.85398163397448278999e-01, 9.82793723247329054082e-01, 1.57079632679489655800e+00, }; [L44-L49] static const double atanlo_atan[] = { 2.26987774529616870924e-17, 3.06161699786838301793e-17, 1.39033110312309984516e-17, 6.12323399573676603587e-17, }; [L51-L58] static const double aT_atan[] = { 3.33333333333329318027e-01, -1.99999999998764832476e-01, 1.42857142725034663711e-01, -1.11111104054623557880e-01, 9.09088713343650656196e-02, -7.69187620504482999495e-02, 6.66107313738753120669e-02, -5.83357013379057348645e-02, 4.97687799461593236017e-02, -3.65315727442169155270e-02, 1.62858201153657823623e-02, }; [L60-L62] static const double one_atan = 1.0, pi_o_4 = 7.8539816339744827900E-01, pi_o_2 = 1.5707963267948965580E+00, pi = 3.1415926535897931160E+00, huge_atan = 1.0e300; [L139-L140] static const double tiny_atan2 = 1.0e-300, zero_atan2 = 0.0, pi_lo_atan2 = 1.2246467991473531772E-16; [L276] double x = __VERIFIER_nondet_double(); [L277] double y = 1.0 / 0.0; [L260] __int32_t hx; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L262] ieee_double_shape_type gh_u; [L263] gh_u.value = (x) [L264] EXPR gh_u.parts.msw [L264] (hx) = gh_u.parts.msw [L266] return (int)((__uint32_t)((hx & 0x7fffffff) - 0x7ff00000) >> 31); [L280] isfinite_double(x) && isinf_double(y) [L246] __int32_t hx, lx; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L248] ieee_double_shape_type ew_u; [L249] ew_u.value = (x) [L250] EXPR ew_u.parts.msw [L250] (hx) = ew_u.parts.msw [L251] EXPR ew_u.parts.lsw [L251] (lx) = ew_u.parts.lsw [L253] hx &= 0x7fffffff [L254] hx |= (__uint32_t)(lx | (-lx)) >> 31 [L255] hx = 0x7ff00000 - hx [L256] return 1 - (int)((__uint32_t)(hx | (-hx)) >> 31); [L280] isfinite_double(x) && isinf_double(y) VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L280] COND TRUE isfinite_double(x) && isinf_double(y) [L143] double z; [L144] __int32_t k, m, hx, hy, ix, iy; [L145] __uint32_t lx, ly; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L148] ieee_double_shape_type ew_u; [L149] ew_u.value = (x) [L150] EXPR ew_u.parts.msw [L150] (hx) = ew_u.parts.msw [L151] EXPR ew_u.parts.lsw [L151] (lx) = ew_u.parts.lsw [L153] ix = hx & 0x7fffffff VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L155] ieee_double_shape_type ew_u; [L156] ew_u.value = (y) [L157] EXPR ew_u.parts.msw [L157] (hy) = ew_u.parts.msw [L158] EXPR ew_u.parts.lsw [L158] (ly) = ew_u.parts.lsw [L160] iy = hy & 0x7fffffff VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L161-L162] COND TRUE ((ix | ((lx | -lx) >> 31)) > 0x7ff00000) || ((iy | ((ly | -ly) >> 31)) > 0x7ff00000) [L163] return x + y; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L282] double res = __ieee754_atan2(y, x); [L285] COND TRUE res != pi_o_2 VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L286] __VERIFIER_error() VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] ----- [2018-11-23 00:02:11,012 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 23.11 12:02:11 ImpRootNode [2018-11-23 00:02:11,012 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-23 00:02:11,012 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 00:02:11,013 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 00:02:11,014 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 00:02:11,015 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:02:10" (3/4) ... [2018-11-23 00:02:11,018 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 00:02:11,018 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 00:02:11,019 INFO L168 Benchmark]: Toolchain (without parser) took 1732.94 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 166.7 MB). Free memory was 961.1 MB in the beginning and 1.0 GB in the end (delta: -43.6 MB). Peak memory consumption was 123.2 MB. Max. memory is 11.5 GB. [2018-11-23 00:02:11,020 INFO L168 Benchmark]: CDTParser took 0.13 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 00:02:11,021 INFO L168 Benchmark]: CACSL2BoogieTranslator took 320.60 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 166.7 MB). Free memory was 961.1 MB in the beginning and 1.2 GB in the end (delta: -203.2 MB). Peak memory consumption was 34.9 MB. Max. memory is 11.5 GB. [2018-11-23 00:02:11,021 INFO L168 Benchmark]: Boogie Procedure Inliner took 30.39 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 6.4 MB). Peak memory consumption was 6.4 MB. Max. memory is 11.5 GB. [2018-11-23 00:02:11,022 INFO L168 Benchmark]: Boogie Preprocessor took 30.25 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.2 MB). Peak memory consumption was 3.2 MB. Max. memory is 11.5 GB. [2018-11-23 00:02:11,022 INFO L168 Benchmark]: RCFGBuilder took 609.45 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: 66.3 MB). Peak memory consumption was 66.3 MB. Max. memory is 11.5 GB. [2018-11-23 00:02:11,023 INFO L168 Benchmark]: CodeCheck took 733.00 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 83.7 MB). Peak memory consumption was 83.7 MB. Max. memory is 11.5 GB. [2018-11-23 00:02:11,023 INFO L168 Benchmark]: Witness Printer took 5.97 ms. Allocated memory is still 1.2 GB. Free memory is still 1.0 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 00:02:11,031 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - StatisticsResult: Ultimate CodeCheck benchmark data CFG has 3 procedures, 103 locations, 1 error locations. UNSAFE Result, 0.4s OverallTime, 4 OverallIterations, 0 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 156 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 20 SolverSat, 12 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 375 GetRequests, 373 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=-1occurred in iteration=-1, traceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 66 NumberOfCodeBlocks, 66 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 44 ConstructedInterpolants, 0 QuantifiedInterpolants, 673 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 3 InterpolantComputations, 3 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, 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: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - UnprovableResult [Line: 286]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of bitwiseOr at line 162, overapproximation of someUnaryDOUBLEoperation at line 52, overapproximation of someBinaryArithmeticDOUBLEoperation at line 163, overapproximation of bitwiseAnd at line 160, overapproximation of someBinaryDOUBLEComparisonOperation at line 285. Possible FailurePath: [L37-L42] static const double atanhi_atan[] = { 4.63647609000806093515e-01, 7.85398163397448278999e-01, 9.82793723247329054082e-01, 1.57079632679489655800e+00, }; [L44-L49] static const double atanlo_atan[] = { 2.26987774529616870924e-17, 3.06161699786838301793e-17, 1.39033110312309984516e-17, 6.12323399573676603587e-17, }; [L51-L58] static const double aT_atan[] = { 3.33333333333329318027e-01, -1.99999999998764832476e-01, 1.42857142725034663711e-01, -1.11111104054623557880e-01, 9.09088713343650656196e-02, -7.69187620504482999495e-02, 6.66107313738753120669e-02, -5.83357013379057348645e-02, 4.97687799461593236017e-02, -3.65315727442169155270e-02, 1.62858201153657823623e-02, }; [L60-L62] static const double one_atan = 1.0, pi_o_4 = 7.8539816339744827900E-01, pi_o_2 = 1.5707963267948965580E+00, pi = 3.1415926535897931160E+00, huge_atan = 1.0e300; [L139-L140] static const double tiny_atan2 = 1.0e-300, zero_atan2 = 0.0, pi_lo_atan2 = 1.2246467991473531772E-16; [L276] double x = __VERIFIER_nondet_double(); [L277] double y = 1.0 / 0.0; [L260] __int32_t hx; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L262] ieee_double_shape_type gh_u; [L263] gh_u.value = (x) [L264] EXPR gh_u.parts.msw [L264] (hx) = gh_u.parts.msw [L266] return (int)((__uint32_t)((hx & 0x7fffffff) - 0x7ff00000) >> 31); [L280] isfinite_double(x) && isinf_double(y) [L246] __int32_t hx, lx; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L248] ieee_double_shape_type ew_u; [L249] ew_u.value = (x) [L250] EXPR ew_u.parts.msw [L250] (hx) = ew_u.parts.msw [L251] EXPR ew_u.parts.lsw [L251] (lx) = ew_u.parts.lsw [L253] hx &= 0x7fffffff [L254] hx |= (__uint32_t)(lx | (-lx)) >> 31 [L255] hx = 0x7ff00000 - hx [L256] return 1 - (int)((__uint32_t)(hx | (-hx)) >> 31); [L280] isfinite_double(x) && isinf_double(y) VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L280] COND TRUE isfinite_double(x) && isinf_double(y) [L143] double z; [L144] __int32_t k, m, hx, hy, ix, iy; [L145] __uint32_t lx, ly; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L148] ieee_double_shape_type ew_u; [L149] ew_u.value = (x) [L150] EXPR ew_u.parts.msw [L150] (hx) = ew_u.parts.msw [L151] EXPR ew_u.parts.lsw [L151] (lx) = ew_u.parts.lsw [L153] ix = hx & 0x7fffffff VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L155] ieee_double_shape_type ew_u; [L156] ew_u.value = (y) [L157] EXPR ew_u.parts.msw [L157] (hy) = ew_u.parts.msw [L158] EXPR ew_u.parts.lsw [L158] (ly) = ew_u.parts.lsw [L160] iy = hy & 0x7fffffff VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L161-L162] COND TRUE ((ix | ((lx | -lx) >> 31)) > 0x7ff00000) || ((iy | ((ly | -ly) >> 31)) > 0x7ff00000) [L163] return x + y; VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L282] double res = __ieee754_atan2(y, x); [L285] COND TRUE res != pi_o_2 VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] [L286] __VERIFIER_error() VAL [aT_atan={6:0}, atanhi_atan={5:0}, atanlo_atan={3:0}, huge_atan=1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, one_atan=1, pi=785398163397448279/250000000000000000, pi_lo_atan2=3061616997868382943/25000000000000000000000000000000000, pi_o_2=785398163397448279/500000000000000000, pi_o_4=785398163397448279/1000000000000000000, tiny_atan2=1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, zero_atan2=0] * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.13 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 320.60 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 166.7 MB). Free memory was 961.1 MB in the beginning and 1.2 GB in the end (delta: -203.2 MB). Peak memory consumption was 34.9 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 30.39 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 6.4 MB). Peak memory consumption was 6.4 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 30.25 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.2 MB). Peak memory consumption was 3.2 MB. Max. memory is 11.5 GB. * RCFGBuilder took 609.45 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: 66.3 MB). Peak memory consumption was 66.3 MB. Max. memory is 11.5 GB. * CodeCheck took 733.00 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 83.7 MB). Peak memory consumption was 83.7 MB. Max. memory is 11.5 GB. * Witness Printer took 5.97 ms. Allocated memory is still 1.2 GB. Free memory is still 1.0 GB. There was no memory consumed. Max. memory is 11.5 GB. 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 00:02:12,492 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 00:02:12,493 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 00:02:12,500 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 00:02:12,500 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 00:02:12,501 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 00:02:12,502 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 00:02:12,503 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 00:02:12,504 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 00:02:12,505 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 00:02:12,505 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 00:02:12,505 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 00:02:12,506 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 00:02:12,507 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 00:02:12,507 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 00:02:12,508 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 00:02:12,508 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 00:02:12,510 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 00:02:12,511 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 00:02:12,512 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 00:02:12,513 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 00:02:12,514 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 00:02:12,515 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 00:02:12,515 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 00:02:12,516 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 00:02:12,516 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 00:02:12,517 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 00:02:12,517 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 00:02:12,518 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 00:02:12,519 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 00:02:12,519 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 00:02:12,519 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 00:02:12,519 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 00:02:12,520 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 00:02:12,520 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 00:02:12,521 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 00:02:12,521 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf [2018-11-23 00:02:12,531 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 00:02:12,531 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 00:02:12,532 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 00:02:12,532 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 00:02:12,532 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 00:02:12,532 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 00:02:12,533 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 00:02:12,533 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 00:02:12,533 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 00:02:12,533 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 00:02:12,533 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 00:02:12,533 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 00:02:12,533 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 00:02:12,534 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 00:02:12,534 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 00:02:12,534 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 00:02:12,534 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 00:02:12,534 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 00:02:12,534 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 00:02:12,534 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 00:02:12,535 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 00:02:12,535 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 00:02:12,535 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 00:02:12,535 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 00:02:12,535 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 00:02:12,535 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 00:02:12,535 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 00:02:12,536 INFO L133 SettingsManager]: * Use separate solver for trace checks=false [2018-11-23 00:02:12,536 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 00:02:12,536 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 00:02:12,536 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 00:02:12,536 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 00:02:12,536 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_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak 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 -> Kojak 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 -> 6f0e5ff08d8d375b1c12be7373d81b68e548344f [2018-11-23 00:02:12,563 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 00:02:12,571 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 00:02:12,573 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 00:02:12,574 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 00:02:12,574 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 00:02:12,575 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_0684a_true-unreach-call.c [2018-11-23 00:02:12,612 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/16eb40604/10f33f85545441128268a2734b994771/FLAG1de577625 [2018-11-23 00:02:12,923 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 00:02:12,923 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/sv-benchmarks/c/float-newlib/double_req_bl_0684a_true-unreach-call.c [2018-11-23 00:02:12,928 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/16eb40604/10f33f85545441128268a2734b994771/FLAG1de577625 [2018-11-23 00:02:12,938 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/data/16eb40604/10f33f85545441128268a2734b994771 [2018-11-23 00:02:12,940 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 00:02:12,941 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 00:02:12,942 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 00:02:12,942 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 00:02:12,945 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 00:02:12,945 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:02:12" (1/1) ... [2018-11-23 00:02:12,947 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@32fe689 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:12, skipping insertion in model container [2018-11-23 00:02:12,948 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:02:12" (1/1) ... [2018-11-23 00:02:12,956 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 00:02:12,979 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 00:02:13,153 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 00:02:13,159 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 00:02:13,211 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 00:02:13,234 INFO L195 MainTranslator]: Completed translation [2018-11-23 00:02:13,234 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13 WrapperNode [2018-11-23 00:02:13,234 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 00:02:13,235 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 00:02:13,235 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 00:02:13,235 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 00:02:13,240 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,290 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,313 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 00:02:13,313 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 00:02:13,313 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 00:02:13,313 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 00:02:13,319 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,319 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,325 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,325 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,338 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,343 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,345 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... [2018-11-23 00:02:13,348 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 00:02:13,348 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 00:02:13,348 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 00:02:13,349 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 00:02:13,349 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:02:13" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_513e23a9-9f25-4f8e-9994-0c48614a5cd2/bin-2019/ukojak/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (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:10000 [2018-11-23 00:02:13,393 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_double [2018-11-23 00:02:13,394 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_double [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8 [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure atan_double [2018-11-23 00:02:13,394 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_double [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 00:02:13,394 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 00:02:13,395 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 00:02:13,395 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 00:02:13,395 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 00:02:13,557 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:13,595 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:21,729 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:55,855 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:57,584 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:57,603 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:58,020 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:58,045 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:58,071 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:58,108 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:02:58,126 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 00:06:17,558 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 00:06:17,558 INFO L280 CfgBuilder]: Removed 30 assue(true) statements. [2018-11-23 00:06:17,559 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:06:17 BoogieIcfgContainer [2018-11-23 00:06:17,559 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 00:06:17,559 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 00:06:17,560 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 00:06:17,573 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 00:06:17,573 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:06:17" (1/1) ... [2018-11-23 00:06:17,580 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 00:06:17,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:06:17,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 79 states and 129 transitions. [2018-11-23 00:06:17,605 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 129 transitions. [2018-11-23 00:06:17,606 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2018-11-23 00:06:17,606 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:06:17,639 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:06:17,693 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:06:17,701 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:06:17,709 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 00:06:17,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:06:17,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 79 states and 122 transitions. [2018-11-23 00:06:17,720 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 122 transitions. [2018-11-23 00:06:17,721 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2018-11-23 00:06:17,721 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:06:17,722 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:06:17,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:06:17,768 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:06:17,777 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 00:06:17,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:06:17,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 80 states and 123 transitions. [2018-11-23 00:06:17,804 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 123 transitions. [2018-11-23 00:06:17,804 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 00:06:17,805 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:06:17,805 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:06:17,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:06:17,846 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:06:17,847 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 00:06:17,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:06:17,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 80 states and 121 transitions. [2018-11-23 00:06:17,852 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 121 transitions. [2018-11-23 00:06:17,852 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2018-11-23 00:06:17,852 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:06:17,853 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:06:17,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:06:17,982 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:06:24,879 WARN L180 SmtUtils]: Spent 2.80 s on a formula simplification that was a NOOP. DAG size: 34 [2018-11-23 00:06:26,179 WARN L180 SmtUtils]: Spent 349.00 ms on a formula simplification that was a NOOP. DAG size: 35 [2018-11-23 00:06:26,196 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:26,197 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:26,198 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:26,201 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:26,206 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 4 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 5 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 85 [2018-11-23 00:06:26,292 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:06:26,295 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:06:26,296 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:26,297 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 57 [2018-11-23 00:06:26,297 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 00:06:26,346 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 27 [2018-11-23 00:06:26,357 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:06:26,364 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 29 [2018-11-23 00:06:26,364 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 00:06:26,384 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:06:26,410 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2018-11-23 00:06:26,424 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 1 [2018-11-23 00:06:26,425 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 00:06:26,427 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:06:26,441 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:06:26,485 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-2 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2018-11-23 00:06:26,485 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 6 variables, input treesize:108, output treesize:60 [2018-11-23 00:06:26,734 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 00:06:34,566 WARN L180 SmtUtils]: Spent 3.02 s on a formula simplification that was a NOOP. DAG size: 35 [2018-11-23 00:06:39,295 WARN L180 SmtUtils]: Spent 338.00 ms on a formula simplification that was a NOOP. DAG size: 36 [2018-11-23 00:06:44,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:06:44,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 80 states and 120 transitions. [2018-11-23 00:06:44,708 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 120 transitions. [2018-11-23 00:06:44,708 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 00:06:44,708 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:06:44,709 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:06:44,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:06:44,784 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:06:51,537 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:51,538 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:51,538 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 00:06:51,574 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:06:51,575 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:06:51,575 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 33 [2018-11-23 00:06:51,576 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 00:06:51,587 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 18 [2018-11-23 00:06:51,589 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:06:51,590 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 10 [2018-11-23 00:06:51,590 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 00:06:51,594 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:06:51,596 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:06:51,601 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 00:06:51,601 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:47, output treesize:19 [2018-11-23 00:06:51,854 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 00:06:59,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:06:59,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 77 states and 113 transitions. [2018-11-23 00:06:59,694 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 113 transitions. [2018-11-23 00:06:59,694 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 00:06:59,694 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:06:59,695 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:06:59,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:06:59,957 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:07:07,420 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:07:07,421 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:07:07,422 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 00:07:07,477 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:07:07,478 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 33 [2018-11-23 00:07:07,479 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 00:07:07,539 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 18 [2018-11-23 00:07:07,546 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:07:07,548 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 10 [2018-11-23 00:07:07,548 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 00:07:07,555 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:07:07,560 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:07:07,580 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 00:07:07,580 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:57, output treesize:29 [2018-11-23 00:07:11,209 WARN L180 SmtUtils]: Spent 144.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 00:07:14,476 WARN L180 SmtUtils]: Spent 113.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 00:07:14,479 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 00:07:15,588 WARN L180 SmtUtils]: Spent 298.00 ms on a formula simplification. DAG size of input: 21 DAG size of output: 21 [2018-11-23 00:07:18,140 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification. DAG size of input: 53 DAG size of output: 53 [2018-11-23 00:07:18,750 WARN L180 SmtUtils]: Spent 168.00 ms on a formula simplification. DAG size of input: 55 DAG size of output: 55 [2018-11-23 00:07:57,494 WARN L180 SmtUtils]: Spent 3.38 s on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 00:08:07,124 WARN L180 SmtUtils]: Spent 9.03 s on a formula simplification. DAG size of input: 44 DAG size of output: 44 [2018-11-23 00:08:18,834 WARN L180 SmtUtils]: Spent 3.25 s on a formula simplification that was a NOOP. DAG size: 43 [2018-11-23 00:08:29,096 WARN L180 SmtUtils]: Spent 4.39 s on a formula simplification that was a NOOP. DAG size: 45 [2018-11-23 00:08:42,034 WARN L180 SmtUtils]: Spent 354.00 ms on a formula simplification that was a NOOP. DAG size: 43 [2018-11-23 00:08:53,265 WARN L180 SmtUtils]: Spent 142.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 45 [2018-11-23 00:09:05,100 WARN L180 SmtUtils]: Spent 3.10 s on a formula simplification that was a NOOP. DAG size: 44 [2018-11-23 00:09:16,010 WARN L180 SmtUtils]: Spent 214.00 ms on a formula simplification that was a NOOP. DAG size: 46 [2018-11-23 00:09:16,662 WARN L180 SmtUtils]: Spent 386.00 ms on a formula simplification. DAG size of input: 68 DAG size of output: 58 [2018-11-23 00:09:17,965 WARN L180 SmtUtils]: Spent 469.00 ms on a formula simplification. DAG size of input: 70 DAG size of output: 60 [2018-11-23 00:09:18,522 WARN L180 SmtUtils]: Spent 117.00 ms on a formula simplification that was a NOOP. DAG size: 59 [2018-11-23 00:09:20,017 WARN L180 SmtUtils]: Spent 407.00 ms on a formula simplification that was a NOOP. DAG size: 70 [2018-11-23 00:09:20,808 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification that was a NOOP. DAG size: 72 [2018-11-23 00:09:21,546 WARN L180 SmtUtils]: Spent 279.00 ms on a formula simplification that was a NOOP. DAG size: 71 [2018-11-23 00:09:52,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:09:52,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 79 states and 128 transitions. [2018-11-23 00:09:52,395 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 128 transitions. [2018-11-23 00:09:52,398 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-23 00:09:52,398 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:09:52,399 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:09:52,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:09:52,738 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:09:52,747 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:09:52,748 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:09:52,749 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 00:09:52,785 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:09:52,786 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:09:52,787 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 33 [2018-11-23 00:09:52,787 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 00:09:52,802 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 18 [2018-11-23 00:09:52,807 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:09:52,807 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 10 [2018-11-23 00:09:52,808 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 00:09:52,814 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:09:52,817 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:09:52,833 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 00:09:52,834 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:57, output treesize:29 [2018-11-23 00:09:53,023 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 00:09:56,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:09:56,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 80 states and 132 transitions. [2018-11-23 00:09:56,815 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 132 transitions. [2018-11-23 00:09:56,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-23 00:09:56,817 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:09:56,817 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:09:56,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:09:56,906 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:10:03,111 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:10:03,111 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:10:03,112 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 00:10:03,161 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:10:03,162 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 29 [2018-11-23 00:10:03,162 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 00:10:03,176 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2018-11-23 00:10:03,179 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 00:10:03,180 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 6 [2018-11-23 00:10:03,180 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 00:10:03,182 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:10:03,185 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:10:03,193 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 00:10:03,193 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:52, output treesize:24 [2018-11-23 00:10:05,692 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 00:10:17,296 WARN L180 SmtUtils]: Spent 3.17 s on a formula simplification that was a NOOP. DAG size: 46 [2018-11-23 00:10:44,938 WARN L180 SmtUtils]: Spent 3.11 s on a formula simplification that was a NOOP. DAG size: 47 [2018-11-23 00:11:01,601 WARN L180 SmtUtils]: Spent 6.73 s on a formula simplification. DAG size of input: 71 DAG size of output: 61 [2018-11-23 00:11:06,609 WARN L180 SmtUtils]: Spent 3.45 s on a formula simplification that was a NOOP. DAG size: 62 [2018-11-23 00:11:14,299 WARN L180 SmtUtils]: Spent 6.47 s on a formula simplification. DAG size of input: 85 DAG size of output: 73 [2018-11-23 00:11:15,456 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 87 DAG size of output: 74 [2018-11-23 00:11:19,597 WARN L180 SmtUtils]: Spent 3.52 s on a formula simplification that was a NOOP. DAG size: 74 [2018-11-23 00:11:28,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 00:11:28,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 76 states and 118 transitions. [2018-11-23 00:11:28,216 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 118 transitions. [2018-11-23 00:11:28,216 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-23 00:11:28,216 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 00:11:28,217 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 00:11:28,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 00:11:28,319 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 00:11:32,344 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:11:32,345 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:11:32,345 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 43 [2018-11-23 00:11:32,380 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 00:11:32,388 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 24 [2018-11-23 00:11:32,388 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 00:11:32,405 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 18 [2018-11-23 00:11:32,413 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 4 [2018-11-23 00:11:32,413 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 00:11:32,417 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:11:32,421 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 00:11:32,436 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 00:11:32,436 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 5 variables, input treesize:63, output treesize:35 [2018-11-23 00:11:35,827 WARN L854 $PredicateComparison]: unable to prove that (exists ((v_prenex_101 (_ BitVec 64)) (v_prenex_100 (_ BitVec 64))) (and (= ((_ extract 31 0) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~lx~0) (= (fp ((_ extract 63 63) v_prenex_101) ((_ extract 62 52) v_prenex_101) ((_ extract 51 0) v_prenex_101)) (fp ((_ extract 63 63) v_prenex_100) ((_ extract 62 52) v_prenex_100) ((_ extract 51 0) v_prenex_100))) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_101)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))) (= ((_ extract 63 32) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~hx~1))) is different from true [2018-11-23 00:12:12,611 WARN L180 SmtUtils]: Spent 4.18 s on a formula simplification that was a NOOP. DAG size: 33 [2018-11-23 00:13:14,540 WARN L180 SmtUtils]: Spent 8.98 s on a formula simplification that was a NOOP. DAG size: 38 [2018-11-23 00:13:15,918 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 00:13:45,717 WARN L180 SmtUtils]: Spent 6.01 s on a formula simplification. DAG size of input: 66 DAG size of output: 45 [2018-11-23 00:13:48,596 WARN L832 $PredicateComparison]: unable to prove that (not (exists ((v_prenex_101 (_ BitVec 64)) (v_prenex_100 (_ BitVec 64))) (and (= ((_ extract 31 0) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~lx~0) (= (fp ((_ extract 63 63) v_prenex_101) ((_ extract 62 52) v_prenex_101) ((_ extract 51 0) v_prenex_101)) (fp ((_ extract 63 63) v_prenex_100) ((_ extract 62 52) v_prenex_100) ((_ extract 51 0) v_prenex_100))) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_101)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))) (= ((_ extract 63 32) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~hx~1)))) is different from false [2018-11-23 00:13:53,656 WARN L832 $PredicateComparison]: unable to prove that (and (= (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53)) c_ULTIMATE.start___ieee754_atan2_~y) (= ((_ to_fp 11 53) roundNearestTiesToEven (/ 785398163397448279.0 500000000000000000.0)) c_~pi_o_2~0) (not (exists ((v_prenex_101 (_ BitVec 64)) (v_prenex_100 (_ BitVec 64))) (and (= ((_ extract 31 0) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~lx~0) (= (fp ((_ extract 63 63) v_prenex_101) ((_ extract 62 52) v_prenex_101) ((_ extract 51 0) v_prenex_101)) (fp ((_ extract 63 63) v_prenex_100) ((_ extract 62 52) v_prenex_100) ((_ extract 51 0) v_prenex_100))) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_101)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))) (= ((_ extract 63 32) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~hx~1)))) (exists ((v_prenex_95 (_ BitVec 64)) (v_prenex_97 (_ BitVec 64))) (and (= (fp ((_ extract 63 63) v_prenex_95) ((_ extract 62 52) v_prenex_95) ((_ extract 51 0) v_prenex_95)) (fp ((_ extract 63 63) v_prenex_97) ((_ extract 62 52) v_prenex_97) ((_ extract 51 0) v_prenex_97))) (= ((_ extract 63 32) v_prenex_95) c_ULTIMATE.start___ieee754_atan2_~hx~1) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_97)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))))) (= c_~tiny_atan2~0 ((_ to_fp 11 53) roundNearestTiesToEven (/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0)))) is different from false [2018-11-23 00:14:27,540 WARN L180 SmtUtils]: Spent 3.85 s on a formula simplification that was a NOOP. DAG size: 46 [2018-11-23 00:14:32,787 WARN L854 $PredicateComparison]: unable to prove that (not (and (= (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53)) c_ULTIMATE.start___ieee754_atan2_~y) (= ((_ to_fp 11 53) roundNearestTiesToEven (/ 785398163397448279.0 500000000000000000.0)) c_~pi_o_2~0) (not (exists ((v_prenex_101 (_ BitVec 64)) (v_prenex_100 (_ BitVec 64))) (and (= ((_ extract 31 0) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~lx~0) (= (fp ((_ extract 63 63) v_prenex_101) ((_ extract 62 52) v_prenex_101) ((_ extract 51 0) v_prenex_101)) (fp ((_ extract 63 63) v_prenex_100) ((_ extract 62 52) v_prenex_100) ((_ extract 51 0) v_prenex_100))) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_101)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))) (= ((_ extract 63 32) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~hx~1)))) (exists ((v_prenex_95 (_ BitVec 64)) (v_prenex_97 (_ BitVec 64))) (and (= (fp ((_ extract 63 63) v_prenex_95) ((_ extract 62 52) v_prenex_95) ((_ extract 51 0) v_prenex_95)) (fp ((_ extract 63 63) v_prenex_97) ((_ extract 62 52) v_prenex_97) ((_ extract 51 0) v_prenex_97))) (= ((_ extract 63 32) v_prenex_95) c_ULTIMATE.start___ieee754_atan2_~hx~1) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_97)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))))) (= c_~tiny_atan2~0 ((_ to_fp 11 53) roundNearestTiesToEven (/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0))))) is different from true [2018-11-23 00:14:41,747 WARN L180 SmtUtils]: Spent 8.48 s on a formula simplification. DAG size of input: 70 DAG size of output: 48 [2018-11-23 00:15:17,564 WARN L180 SmtUtils]: Spent 3.99 s on a formula simplification that was a NOOP. DAG size: 34 [2018-11-23 00:15:24,116 WARN L832 $PredicateComparison]: unable to prove that (let ((.cse0 (= (bvand (_ bv2147483647 32) c_ULTIMATE.start___ieee754_atan2_~hx~1) c_ULTIMATE.start___ieee754_atan2_~ix~1))) (and (= (fp.div roundNearestTiesToEven ((_ to_fp 11 53) roundNearestTiesToEven 1.0) (_ +zero 11 53)) c_ULTIMATE.start___ieee754_atan2_~y) (= ((_ to_fp 11 53) roundNearestTiesToEven (/ 785398163397448279.0 500000000000000000.0)) c_~pi_o_2~0) .cse0 (not (and (exists ((v_prenex_101 (_ BitVec 64)) (v_prenex_100 (_ BitVec 64))) (and (= ((_ extract 31 0) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~lx~0) (= (fp ((_ extract 63 63) v_prenex_101) ((_ extract 62 52) v_prenex_101) ((_ extract 51 0) v_prenex_101)) (fp ((_ extract 63 63) v_prenex_100) ((_ extract 62 52) v_prenex_100) ((_ extract 51 0) v_prenex_100))) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_101)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))) (= ((_ extract 63 32) v_prenex_100) c_ULTIMATE.start___ieee754_atan2_~hx~1))) .cse0)) (exists ((v_prenex_95 (_ BitVec 64)) (v_prenex_97 (_ BitVec 64))) (and (= (fp ((_ extract 63 63) v_prenex_95) ((_ extract 62 52) v_prenex_95) ((_ extract 51 0) v_prenex_95)) (fp ((_ extract 63 63) v_prenex_97) ((_ extract 62 52) v_prenex_97) ((_ extract 51 0) v_prenex_97))) (= c_ULTIMATE.start___ieee754_atan2_~ix~1 (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_95))) (not (= (bvlshr (bvadd (bvand (_ bv2147483647 32) ((_ extract 63 32) v_prenex_97)) (_ bv2148532224 32)) (_ bv31 32)) (_ bv0 32))))) (= c_~tiny_atan2~0 ((_ to_fp 11 53) roundNearestTiesToEven (/ 1.0 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0))))) is different from false [2018-11-23 00:15:29,794 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000) stderr output: (error "out of memory") [2018-11-23 00:15:29,794 FATAL L265 ToolchainWalker]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:225) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.checkSat(Scriptor.java:155) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.managedscript.ManagedScript.checkSat(ManagedScript.java:141) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.MonolithicImplicationChecker.checkImplication(MonolithicImplicationChecker.java:84) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.predicates.PredicateUnifier$PredicateComparison.compare(PredicateUnifier.java:893) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.predicates.PredicateUnifier$PredicateComparison.(PredicateUnifier.java:767) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate(PredicateUnifier.java:339) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate(PredicateUnifier.java:286) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.CodeChecker.negatePredicate(CodeChecker.java:100) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.kojak.UltimateChecker.isSatEdge(UltimateChecker.java:237) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.kojak.UltimateChecker.connectOutgoingIfSat(UltimateChecker.java:199) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.kojak.UltimateChecker.splitNode(UltimateChecker.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.kojak.UltimateChecker.codeCheck(UltimateChecker.java:95) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.CodeCheckObserver.process(CodeCheckObserver.java:489) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.CFGWalker.runObserver(CFGWalker.java:57) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.BaseWalker.runObserver(BaseWalker.java:93) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.BaseWalker.run(BaseWalker.java:86) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1427) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:630) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:419) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:205) ... 28 more [2018-11-23 00:15:29,797 INFO L168 Benchmark]: Toolchain (without parser) took 796856.71 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 92.3 MB). Free memory was 950.8 MB in the beginning and 856.5 MB in the end (delta: 94.3 MB). Peak memory consumption was 186.6 MB. Max. memory is 11.5 GB. [2018-11-23 00:15:29,797 INFO L168 Benchmark]: CDTParser took 0.12 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 00:15:29,797 INFO L168 Benchmark]: CACSL2BoogieTranslator took 293.00 ms. Allocated memory is still 1.0 GB. Free memory was 950.8 MB in the beginning and 929.3 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. [2018-11-23 00:15:29,798 INFO L168 Benchmark]: Boogie Procedure Inliner took 77.86 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 122.7 MB). Free memory was 929.3 MB in the beginning and 1.1 GB in the end (delta: -180.3 MB). Peak memory consumption was 16.0 MB. Max. memory is 11.5 GB. [2018-11-23 00:15:29,798 INFO L168 Benchmark]: Boogie Preprocessor took 35.09 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 00:15:29,799 INFO L168 Benchmark]: RCFGBuilder took 244210.73 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 97.0 MB). Peak memory consumption was 97.0 MB. Max. memory is 11.5 GB. [2018-11-23 00:15:29,799 INFO L168 Benchmark]: CodeCheck took 552237.02 ms. Allocated memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: -30.4 MB). Free memory was 1.0 GB in the beginning and 856.5 MB in the end (delta: 156.2 MB). Peak memory consumption was 125.8 MB. Max. memory is 11.5 GB. [2018-11-23 00:15:29,801 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - ExceptionOrErrorResult: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000)Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000)Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12 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 293.00 ms. Allocated memory is still 1.0 GB. Free memory was 950.8 MB in the beginning and 929.3 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 77.86 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 122.7 MB). Free memory was 929.3 MB in the beginning and 1.1 GB in the end (delta: -180.3 MB). Peak memory consumption was 16.0 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 35.09 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. * RCFGBuilder took 244210.73 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.0 GB in the end (delta: 97.0 MB). Peak memory consumption was 97.0 MB. Max. memory is 11.5 GB. * CodeCheck took 552237.02 ms. Allocated memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: -30.4 MB). Free memory was 1.0 GB in the beginning and 856.5 MB in the end (delta: 156.2 MB). Peak memory consumption was 125.8 MB. Max. memory is 11.5 GB. RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...