./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/double_req_bl_0663a_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_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_0663a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/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 3e7d0b868b35716dc1f516fc758062372899bb27 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. 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_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_0663a_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/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 3e7d0b868b35716dc1f516fc758062372899bb27 .......................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: UnsupportedOperationException: nested self-update not yet implemented: (store v_arrayElimCell_9 (_ bv0 32) ((_ extract 31 0) v_prenex_95)) --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 02:42:22,637 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 02:42:22,639 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 02:42:22,648 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 02:42:22,649 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 02:42:22,649 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 02:42:22,650 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 02:42:22,652 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 02:42:22,653 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 02:42:22,654 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 02:42:22,655 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 02:42:22,655 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 02:42:22,656 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 02:42:22,657 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 02:42:22,658 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 02:42:22,658 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 02:42:22,659 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 02:42:22,661 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 02:42:22,662 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 02:42:22,664 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 02:42:22,665 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 02:42:22,665 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 02:42:22,667 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 02:42:22,668 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 02:42:22,668 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 02:42:22,669 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 02:42:22,669 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 02:42:22,670 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 02:42:22,671 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 02:42:22,672 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 02:42:22,672 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 02:42:22,672 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 02:42:22,673 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 02:42:22,673 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 02:42:22,674 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 02:42:22,674 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 02:42:22,674 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf [2018-11-23 02:42:22,686 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 02:42:22,686 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 02:42:22,687 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 02:42:22,687 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 02:42:22,687 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 02:42:22,688 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 02:42:22,688 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 02:42:22,688 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 02:42:22,688 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 02:42:22,688 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 02:42:22,688 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 02:42:22,689 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 02:42:22,690 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 02:42:22,690 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 02:42:22,690 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 02:42:22,690 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 02:42:22,690 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 02:42:22,690 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 02:42:22,691 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 02:42:22,691 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 02:42:22,691 INFO L133 SettingsManager]: * Trace refinement strategy=PENGUIN [2018-11-23 02:42:22,691 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 02:42:22,691 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 02:42:22,691 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_b122e46c-deda-4178-9eb8-c188e70ee6be/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 -> 3e7d0b868b35716dc1f516fc758062372899bb27 [2018-11-23 02:42:22,715 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 02:42:22,724 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 02:42:22,726 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 02:42:22,727 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 02:42:22,727 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 02:42:22,728 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_0663a_true-unreach-call.c [2018-11-23 02:42:22,766 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/1ee07ff4a/3c654bad5caa450c9132706af5d6223f/FLAGe1e27d19c [2018-11-23 02:42:23,130 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 02:42:23,131 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/sv-benchmarks/c/float-newlib/double_req_bl_0663a_true-unreach-call.c [2018-11-23 02:42:23,138 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/1ee07ff4a/3c654bad5caa450c9132706af5d6223f/FLAGe1e27d19c [2018-11-23 02:42:23,532 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/1ee07ff4a/3c654bad5caa450c9132706af5d6223f [2018-11-23 02:42:23,535 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 02:42:23,536 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 02:42:23,536 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 02:42:23,536 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 02:42:23,539 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 02:42:23,539 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,541 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17c001e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23, skipping insertion in model container [2018-11-23 02:42:23,541 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,550 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 02:42:23,572 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 02:42:23,721 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:42:23,725 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 02:42:23,761 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:42:23,827 INFO L195 MainTranslator]: Completed translation [2018-11-23 02:42:23,827 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23 WrapperNode [2018-11-23 02:42:23,827 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 02:42:23,828 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 02:42:23,828 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 02:42:23,828 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 02:42:23,833 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,844 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,866 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 02:42:23,867 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 02:42:23,867 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 02:42:23,867 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 02:42:23,873 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,873 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,875 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,876 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,885 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,890 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,893 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... [2018-11-23 02:42:23,896 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 02:42:23,896 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 02:42:23,896 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 02:42:23,896 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 02:42:23,897 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:23" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/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 02:42:23,932 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-23 02:42:23,932 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 02:42:23,932 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_double [2018-11-23 02:42:23,932 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_double [2018-11-23 02:42:23,932 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-23 02:42:23,933 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 02:42:23,933 INFO L130 BoogieDeclarations]: Found specification of procedure atan_double [2018-11-23 02:42:23,933 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_double [2018-11-23 02:42:23,933 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 02:42:23,933 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 02:42:23,933 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 02:42:23,933 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-23 02:42:23,933 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 02:42:24,459 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 02:42:24,460 INFO L280 CfgBuilder]: Removed 22 assue(true) statements. [2018-11-23 02:42:24,460 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:42:24 BoogieIcfgContainer [2018-11-23 02:42:24,460 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 02:42:24,461 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 02:42:24,461 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 02:42:24,470 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 02:42:24,471 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:42:24" (1/1) ... [2018-11-23 02:42:24,481 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:42:24,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:42:24,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 72 states and 117 transitions. [2018-11-23 02:42:24,517 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 117 transitions. [2018-11-23 02:42:24,518 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2018-11-23 02:42:24,518 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:42:24,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:42:24,609 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 02:42:24,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:42:24,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 72 states and 112 transitions. [2018-11-23 02:42:24,619 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 112 transitions. [2018-11-23 02:42:24,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2018-11-23 02:42:24,619 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:42:24,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 02:42:24,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 02:42:24,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 02:42:24,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 02:42:24,774 WARN L493 CodeCheckObserver]: This program is UNSAFE, Check terminated with 2 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~nondet48, main_#t~ret49, main_~res~0, main_~x~0, main_~y~0;main_~x~0 := ~someUnaryDOUBLEoperation(0.0);main_~y~0 := main_#t~nondet48;havoc main_#t~nondet48; VAL [|#NULL.base|=0, |#NULL.offset|=0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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_~y~0, 0.0);__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=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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~union30;havoc __ieee754_atan2_#t~mem29;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=6, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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~union32;havoc __ieee754_atan2_#t~mem31;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=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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~ret49 := __ieee754_atan2_#res;main_~res~0 := main_#t~ret49;havoc main_#t~ret49; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~res~0=6.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=6.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~res~0=6.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=6.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=4.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~res~0=6.0, ULTIMATE.start_main_~x~0=4.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=4.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=6.0, |~#aT_atan~0.base|=5, |~#aT_atan~0.offset|=0, |~#atanhi_atan~0.base|=2, |~#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~nondet48, main_#t~ret49, main_~res~0, main_~x~0, main_~y~0; [L251] main_~x~0 := ~someUnaryDOUBLEoperation(0.0); [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L254-L263] assume ~someBinaryDOUBLEComparisonOperation(main_~y~0, 0.0); [L256] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L256] havoc __ieee754_atan2_#res; [L256] 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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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~union30; [L151] havoc __ieee754_atan2_#t~mem29; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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~union32; [L157] havoc __ieee754_atan2_#t~mem31; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L256] main_#t~ret49 := __ieee754_atan2_#res; [L256] main_~res~0 := main_#t~ret49; [L256] havoc main_#t~ret49; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L259-L262] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L260] assert false; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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~nondet48, main_#t~ret49, main_~res~0, main_~x~0, main_~y~0; [L251] main_~x~0 := ~someUnaryDOUBLEoperation(0.0); [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL.base=0, #NULL.offset=0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L254-L263] assume ~someBinaryDOUBLEComparisonOperation(main_~y~0, 0.0); [L256] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L256] havoc __ieee754_atan2_#res; [L256] 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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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~union30; [L151] havoc __ieee754_atan2_#t~mem29; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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~union32; [L157] havoc __ieee754_atan2_#t~mem31; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L256] main_#t~ret49 := __ieee754_atan2_#res; [L256] main_~res~0 := main_#t~ret49; [L256] havoc main_#t~ret49; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L259-L262] assume ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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] [L260] assert false; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0.base=5, ~#aT_atan~0.offset=0, ~#atanhi_atan~0.base=2, ~#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~nondet48, main_#t~ret49, main_~res~0, main_~x~0, main_~y~0; [L251] main_~x~0 := ~someUnaryDOUBLEoperation(0.0); [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L254] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~y~0, 0.0) [L256] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L256] havoc __ieee754_atan2_#res; [L256] 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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union30; [L151] havoc __ieee754_atan2_#t~mem29; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union32; [L157] havoc __ieee754_atan2_#t~mem31; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L256] main_#t~ret49 := __ieee754_atan2_#res; [L256] main_~res~0 := main_#t~ret49; [L256] havoc main_#t~ret49; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L259] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L260] assert false; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~nondet48, main_#t~ret49, main_~res~0, main_~x~0, main_~y~0; [L251] main_~x~0 := ~someUnaryDOUBLEoperation(0.0); [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L254] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~y~0, 0.0) [L256] __ieee754_atan2_#in~y, __ieee754_atan2_#in~x := main_~y~0, main_~x~0; [L256] havoc __ieee754_atan2_#res; [L256] 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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union30; [L151] havoc __ieee754_atan2_#t~mem29; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union32; [L157] havoc __ieee754_atan2_#t~mem31; [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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=4.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L256] main_#t~ret49 := __ieee754_atan2_#res; [L256] main_~res~0 := main_#t~ret49; [L256] havoc main_#t~ret49; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L259] COND TRUE ~someBinaryDOUBLEComparisonOperation(main_~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L260] assert false; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=4.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=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=4.0, __ieee754_atan2_~y=3.0, main_~res~0=6.0, main_~x~0=4.0, main_~y~0=3.0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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; [L251] ~x~0 := ~someUnaryDOUBLEoperation(0.0); [L252] ~y~0 := #t~nondet48; [L252] havoc #t~nondet48; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L254] COND TRUE ~someBinaryDOUBLEComparisonOperation(~y~0, 0.0) [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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union30; [L151] havoc #t~mem29; [L148] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L148] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union32; [L157] havoc #t~mem31; [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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L256] ~res~0 := #t~ret49; [L256] havoc #t~ret49; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L259] COND TRUE ~someBinaryDOUBLEComparisonOperation(~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L260] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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; [L251] ~x~0 := ~someUnaryDOUBLEoperation(0.0); [L252] ~y~0 := #t~nondet48; [L252] havoc #t~nondet48; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L254] COND TRUE ~someBinaryDOUBLEComparisonOperation(~y~0, 0.0) [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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union30; [L151] havoc #t~mem29; [L148] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L148] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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~union32; [L157] havoc #t~mem31; [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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L256] ~res~0 := #t~ret49; [L256] havoc #t~ret49; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L259] COND TRUE ~someBinaryDOUBLEComparisonOperation(~res~0, ~pi_o_2~0) VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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] [L260] assert false; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=5, ~#aT_atan~0!offset=0, ~#atanhi_atan~0!base=2, ~#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; [L251] double x = -0.0; [L252] double y = __VERIFIER_nondet_double(); [L254] COND TRUE y > 0.0 [L143] double z; [L144] __int32_t k, m, hx, hy, ix, iy; [L145] __uint32_t lx, ly; VAL [aT_atan={5:0}, atanhi_atan={2: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={5:0}, atanhi_atan={2: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={5:0}, atanhi_atan={2: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={5:0}, atanhi_atan={2: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] [L256] double res = __ieee754_atan2(y, x); [L259] COND TRUE res != pi_o_2 VAL [aT_atan={5:0}, atanhi_atan={2: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] [L260] __VERIFIER_error() VAL [aT_atan={5:0}, atanhi_atan={2: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 02:42:24,887 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 23.11 02:42:24 ImpRootNode [2018-11-23 02:42:24,887 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-23 02:42:24,888 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 02:42:24,888 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 02:42:24,888 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 02:42:24,889 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:42:24" (3/4) ... [2018-11-23 02:42:24,893 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 02:42:24,893 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 02:42:24,894 INFO L168 Benchmark]: Toolchain (without parser) took 1359.05 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 123.2 MB). Free memory was 959.1 MB in the beginning and 1.0 GB in the end (delta: -46.6 MB). Peak memory consumption was 76.6 MB. Max. memory is 11.5 GB. [2018-11-23 02:42:24,896 INFO L168 Benchmark]: CDTParser took 0.12 ms. Allocated memory is still 1.0 GB. Free memory is still 985.4 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 02:42:24,896 INFO L168 Benchmark]: CACSL2BoogieTranslator took 291.28 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 123.2 MB). Free memory was 959.1 MB in the beginning and 1.1 GB in the end (delta: -155.0 MB). Peak memory consumption was 31.5 MB. Max. memory is 11.5 GB. [2018-11-23 02:42:24,897 INFO L168 Benchmark]: Boogie Procedure Inliner took 38.66 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.7 MB). Peak memory consumption was 6.7 MB. Max. memory is 11.5 GB. [2018-11-23 02:42:24,897 INFO L168 Benchmark]: Boogie Preprocessor took 29.17 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 02:42:24,897 INFO L168 Benchmark]: RCFGBuilder took 564.34 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: 58.1 MB). Peak memory consumption was 58.1 MB. Max. memory is 11.5 GB. [2018-11-23 02:42:24,898 INFO L168 Benchmark]: CodeCheck took 426.91 ms. Allocated memory is still 1.2 GB. Free memory was 1.0 GB in the beginning and 1.0 GB in the end (delta: 43.6 MB). Peak memory consumption was 43.6 MB. Max. memory is 11.5 GB. [2018-11-23 02:42:24,900 INFO L168 Benchmark]: Witness Printer took 5.72 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 02:42:24,902 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, 94 locations, 1 error locations. UNSAFE Result, 0.2s OverallTime, 2 OverallIterations, 0 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 32 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 97 GetRequests, 97 SyntacticMatches, 0 SemanticMatches, 0 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, 22 NumberOfCodeBlocks, 22 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 9 ConstructedInterpolants, 0 QuantifiedInterpolants, 81 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 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: 260]: 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 bitwiseAnd at line 160, overapproximation of someBinaryArithmeticDOUBLEoperation at line 163, overapproximation of someBinaryDOUBLEComparisonOperation at line 259. 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; [L251] double x = -0.0; [L252] double y = __VERIFIER_nondet_double(); [L254] COND TRUE y > 0.0 [L143] double z; [L144] __int32_t k, m, hx, hy, ix, iy; [L145] __uint32_t lx, ly; VAL [aT_atan={5:0}, atanhi_atan={2: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={5:0}, atanhi_atan={2: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={5:0}, atanhi_atan={2: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={5:0}, atanhi_atan={2: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] [L256] double res = __ieee754_atan2(y, x); [L259] COND TRUE res != pi_o_2 VAL [aT_atan={5:0}, atanhi_atan={2: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] [L260] __VERIFIER_error() VAL [aT_atan={5:0}, atanhi_atan={2: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.12 ms. Allocated memory is still 1.0 GB. Free memory is still 985.4 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 291.28 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 123.2 MB). Free memory was 959.1 MB in the beginning and 1.1 GB in the end (delta: -155.0 MB). Peak memory consumption was 31.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 38.66 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.7 MB). Peak memory consumption was 6.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 29.17 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 564.34 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: 58.1 MB). Peak memory consumption was 58.1 MB. Max. memory is 11.5 GB. * CodeCheck took 426.91 ms. Allocated memory is still 1.2 GB. Free memory was 1.0 GB in the beginning and 1.0 GB in the end (delta: 43.6 MB). Peak memory consumption was 43.6 MB. Max. memory is 11.5 GB. * Witness Printer took 5.72 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 02:42:26,386 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 02:42:26,387 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 02:42:26,397 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 02:42:26,397 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 02:42:26,398 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 02:42:26,399 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 02:42:26,400 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 02:42:26,401 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 02:42:26,402 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 02:42:26,403 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 02:42:26,403 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 02:42:26,404 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 02:42:26,404 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 02:42:26,405 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 02:42:26,406 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 02:42:26,406 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 02:42:26,408 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 02:42:26,409 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 02:42:26,410 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 02:42:26,411 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 02:42:26,412 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 02:42:26,414 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 02:42:26,414 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 02:42:26,414 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 02:42:26,415 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 02:42:26,415 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 02:42:26,416 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 02:42:26,416 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 02:42:26,417 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 02:42:26,417 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 02:42:26,418 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 02:42:26,418 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 02:42:26,418 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 02:42:26,419 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 02:42:26,419 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 02:42:26,420 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf [2018-11-23 02:42:26,431 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 02:42:26,431 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 02:42:26,432 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 02:42:26,432 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-23 02:42:26,433 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 02:42:26,433 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 02:42:26,433 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 02:42:26,433 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 02:42:26,433 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 02:42:26,434 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 02:42:26,435 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 02:42:26,435 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 02:42:26,435 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 02:42:26,435 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-23 02:42:26,435 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-23 02:42:26,436 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 02:42:26,436 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 02:42:26,436 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-23 02:42:26,436 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 02:42:26,436 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 02:42:26,436 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 02:42:26,437 INFO L133 SettingsManager]: * Use separate solver for trace checks=false [2018-11-23 02:42:26,437 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-23 02:42:26,437 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 02:42:26,437 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 02:42:26,437 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 02:42:26,437 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_b122e46c-deda-4178-9eb8-c188e70ee6be/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 -> 3e7d0b868b35716dc1f516fc758062372899bb27 [2018-11-23 02:42:26,470 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 02:42:26,479 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 02:42:26,482 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 02:42:26,483 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 02:42:26,483 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 02:42:26,484 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_0663a_true-unreach-call.c [2018-11-23 02:42:26,532 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/54134ad07/69d562e1f59b457288937cbf908a63f7/FLAGcf98ea88d [2018-11-23 02:42:26,887 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 02:42:26,887 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/sv-benchmarks/c/float-newlib/double_req_bl_0663a_true-unreach-call.c [2018-11-23 02:42:26,892 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/54134ad07/69d562e1f59b457288937cbf908a63f7/FLAGcf98ea88d [2018-11-23 02:42:26,901 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/bin-2019/ukojak/data/54134ad07/69d562e1f59b457288937cbf908a63f7 [2018-11-23 02:42:26,904 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 02:42:26,905 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 02:42:26,906 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 02:42:26,906 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 02:42:26,909 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 02:42:26,909 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:42:26" (1/1) ... [2018-11-23 02:42:26,911 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6c58243f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:26, skipping insertion in model container [2018-11-23 02:42:26,911 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:42:26" (1/1) ... [2018-11-23 02:42:26,919 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 02:42:26,943 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 02:42:27,117 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:42:27,124 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 02:42:27,178 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 02:42:27,206 INFO L195 MainTranslator]: Completed translation [2018-11-23 02:42:27,207 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27 WrapperNode [2018-11-23 02:42:27,207 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 02:42:27,207 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 02:42:27,208 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 02:42:27,208 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 02:42:27,213 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,267 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,286 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 02:42:27,286 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 02:42:27,286 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 02:42:27,286 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 02:42:27,292 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,292 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,296 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,296 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,307 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,312 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,315 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... [2018-11-23 02:42:27,319 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 02:42:27,319 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 02:42:27,319 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 02:42:27,319 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 02:42:27,320 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:42:27" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_b122e46c-deda-4178-9eb8-c188e70ee6be/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 02:42:27,355 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2018-11-23 02:42:27,355 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2018-11-23 02:42:27,355 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_double [2018-11-23 02:42:27,355 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_double [2018-11-23 02:42:27,356 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8 [2018-11-23 02:42:27,356 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 02:42:27,356 INFO L130 BoogieDeclarations]: Found specification of procedure atan_double [2018-11-23 02:42:27,356 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_double [2018-11-23 02:42:27,356 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 02:42:27,356 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 02:42:27,356 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 02:42:27,356 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 02:42:27,357 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 02:42:27,497 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:42:27,537 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:42:36,080 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:43:04,975 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:43:05,503 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:43:05,525 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:43:05,966 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:43:06,000 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:43:06,021 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-23 02:46:22,196 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 02:46:22,197 INFO L280 CfgBuilder]: Removed 22 assue(true) statements. [2018-11-23 02:46:22,197 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:46:22 BoogieIcfgContainer [2018-11-23 02:46:22,197 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 02:46:22,198 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-23 02:46:22,198 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-23 02:46:22,208 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-23 02:46:22,208 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:46:22" (1/1) ... [2018-11-23 02:46:22,219 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 02:46:22,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:46:22,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 72 states and 117 transitions. [2018-11-23 02:46:22,248 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 117 transitions. [2018-11-23 02:46:22,249 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2018-11-23 02:46:22,250 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:46:22,295 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 02:46:22,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:46:22,361 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:46:22,373 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 02:46:22,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:46:22,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 72 states and 112 transitions. [2018-11-23 02:46:22,385 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 112 transitions. [2018-11-23 02:46:22,385 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2018-11-23 02:46:22,386 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:46:22,387 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 02:46:22,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:46:22,514 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:46:22,575 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:22,575 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:22,581 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 02:46:22,626 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:46:22,627 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:22,628 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 02:46:22,629 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:46:22,646 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 02:46:22,652 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 02:46:22,653 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 02:46:22,654 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:46:22,661 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:46:22,665 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 02:46:22,681 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 02:46:22,682 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:46, output treesize:18 [2018-11-23 02:46:22,771 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:22,772 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:22,774 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 48 treesize of output 56 [2018-11-23 02:46:22,868 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:22,877 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 37 treesize of output 35 [2018-11-23 02:46:22,878 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:46:22,900 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 02:46:22,922 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 23 treesize of output 9 [2018-11-23 02:46:22,923 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:46:22,930 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:46:22,942 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 02:46:22,964 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 02:46:22,964 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 5 variables, input treesize:73, output treesize:34 [2018-11-23 02:46:27,787 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 02:46:30,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:46:30,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 72 states and 111 transitions. [2018-11-23 02:46:30,275 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 111 transitions. [2018-11-23 02:46:30,275 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2018-11-23 02:46:30,275 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:46:30,276 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 02:46:30,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:46:30,739 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:46:31,009 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:31,009 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:46:31,011 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 02:46:31,063 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 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 27 treesize of output 24 [2018-11-23 02:46:31,064 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 02:46:31,083 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 02:46:31,091 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 02:46:31,092 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 02:46:31,097 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:46:31,102 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 02:46:31,124 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 02:46:31,125 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:52, output treesize:24 [2018-11-23 02:46:31,665 WARN L180 SmtUtils]: Spent 243.00 ms on a formula simplification that was a NOOP. DAG size: 22 [2018-11-23 02:46:33,665 WARN L180 SmtUtils]: Spent 117.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 02:46:35,570 WARN L180 SmtUtils]: Spent 120.00 ms on a formula simplification that was a NOOP. DAG size: 11 [2018-11-23 02:46:35,574 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 02:46:48,867 WARN L180 SmtUtils]: Spent 1.29 s on a formula simplification. DAG size of input: 49 DAG size of output: 39 [2018-11-23 02:47:02,542 WARN L180 SmtUtils]: Spent 258.00 ms on a formula simplification. DAG size of input: 51 DAG size of output: 41 [2018-11-23 02:47:04,305 WARN L180 SmtUtils]: Spent 340.00 ms on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 02:47:11,312 WARN L180 SmtUtils]: Spent 3.68 s on a formula simplification that was a NOOP. DAG size: 51 [2018-11-23 02:47:35,576 WARN L180 SmtUtils]: Spent 4.03 s on a formula simplification that was a NOOP. DAG size: 53 [2018-11-23 02:47:42,476 WARN L180 SmtUtils]: Spent 3.77 s on a formula simplification that was a NOOP. DAG size: 52 [2018-11-23 02:48:06,800 WARN L180 SmtUtils]: Spent 3.81 s on a formula simplification that was a NOOP. DAG size: 54 [2018-11-23 02:48:08,280 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 02:48:40,725 WARN L180 SmtUtils]: Spent 159.00 ms on a formula simplification that was a NOOP. DAG size: 12 [2018-11-23 02:48:41,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:48:41,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 75 states and 133 transitions. [2018-11-23 02:48:41,722 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 133 transitions. [2018-11-23 02:48:41,725 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2018-11-23 02:48:41,725 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:48:41,726 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 02:48:41,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:48:41,803 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:48:42,366 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:48:42,366 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:48:42,367 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 48 treesize of output 56 [2018-11-23 02:48:42,431 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 43 [2018-11-23 02:48:42,461 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 23 treesize of output 9 [2018-11-23 02:48:42,461 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 02:48:42,475 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:48:42,491 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 02:48:42,496 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 02:48:42,496 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 02:48:42,497 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 02:48:42,503 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 02:48:42,513 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 02:48:42,513 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:57, output treesize:18 [2018-11-23 02:48:53,560 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 02:49:14,070 WARN L180 SmtUtils]: Spent 3.51 s on a formula simplification that was a NOOP. DAG size: 38 [2018-11-23 02:49:29,533 WARN L180 SmtUtils]: Spent 3.41 s on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 02:49:36,942 WARN L180 SmtUtils]: Spent 116.00 ms on a formula simplification that was a NOOP. DAG size: 40 [2018-11-23 02:49:39,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-23 02:49:39,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 71 states and 119 transitions. [2018-11-23 02:49:39,054 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 119 transitions. [2018-11-23 02:49:39,056 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2018-11-23 02:49:39,057 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-23 02:49:39,057 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-23 02:49:39,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 02:49:39,125 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 02:49:40,028 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:49:40,029 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:49:40,029 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:49:40,030 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 02:49:40,031 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 02:49:40,144 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification. DAG size of input: 31 DAG size of output: 27 [2018-11-23 02:49:40,145 FATAL L292 ToolchainWalker]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck has thrown an exception: java.lang.UnsupportedOperationException: nested self-update not yet implemented: (store v_arrayElimCell_9 (_ bv0 32) ((_ extract 31 0) v_prenex_95)) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.DerPreprocessor.constructReplacementForStoreCase(DerPreprocessor.java:248) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.DerPreprocessor.constructReplacement(DerPreprocessor.java:219) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.DerPreprocessor.constructReplacement(DerPreprocessor.java:210) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.DerPreprocessor.convert(DerPreprocessor.java:142) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer.cacheConvert(TermTransformer.java:131) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer.access$0(TermTransformer.java:127) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer$Convert.walk(TermTransformer.java:79) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:122) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:113) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer.transform(TermTransformer.java:253) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.Elim1Store.elim1(Elim1Store.java:211) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.doElimOneRec(ElimStorePlain.java:221) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.doElimAllRec(ElimStorePlain.java:247) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.doElimOneRec(ElimStorePlain.java:225) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.doElimAllRec(ElimStorePlain.java:247) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.ElimStorePlain.elimAllRec(ElimStorePlain.java:199) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.elim(PartialQuantifierElimination.java:293) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.tryToEliminate(PartialQuantifierElimination.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:245) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:439) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:200) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:286) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:162) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.CodeCheckObserver.createTraceCheck(CodeCheckObserver.java:624) at de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.CodeCheckObserver.process(CodeCheckObserver.java:454) 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) [2018-11-23 02:49:40,147 INFO L168 Benchmark]: Toolchain (without parser) took 433242.66 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 200.8 MB). Free memory was 949.7 MB in the beginning and 860.4 MB in the end (delta: 89.3 MB). Peak memory consumption was 290.1 MB. Max. memory is 11.5 GB. [2018-11-23 02:49:40,148 INFO L168 Benchmark]: CDTParser took 0.16 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 02:49:40,148 INFO L168 Benchmark]: CACSL2BoogieTranslator took 300.93 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 928.2 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. [2018-11-23 02:49:40,149 INFO L168 Benchmark]: Boogie Procedure Inliner took 78.40 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.7 MB). Free memory was 928.2 MB in the beginning and 1.1 GB in the end (delta: -203.4 MB). Peak memory consumption was 15.8 MB. Max. memory is 11.5 GB. [2018-11-23 02:49:40,150 INFO L168 Benchmark]: Boogie Preprocessor took 33.15 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 02:49:40,150 INFO L168 Benchmark]: RCFGBuilder took 234878.19 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: 91.7 MB). Peak memory consumption was 91.7 MB. Max. memory is 11.5 GB. [2018-11-23 02:49:40,151 INFO L168 Benchmark]: CodeCheck took 197948.91 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 57.1 MB). Free memory was 1.0 GB in the beginning and 860.4 MB in the end (delta: 179.5 MB). Peak memory consumption was 236.6 MB. Max. memory is 11.5 GB. [2018-11-23 02:49:40,154 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - ExceptionOrErrorResult: UnsupportedOperationException: nested self-update not yet implemented: (store v_arrayElimCell_9 (_ bv0 32) ((_ extract 31 0) v_prenex_95)) de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: UnsupportedOperationException: nested self-update not yet implemented: (store v_arrayElimCell_9 (_ bv0 32) ((_ extract 31 0) v_prenex_95)): de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.DerPreprocessor.constructReplacementForStoreCase(DerPreprocessor.java:248) * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16 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 300.93 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 928.2 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 78.40 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.7 MB). Free memory was 928.2 MB in the beginning and 1.1 GB in the end (delta: -203.4 MB). Peak memory consumption was 15.8 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 33.15 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 234878.19 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: 91.7 MB). Peak memory consumption was 91.7 MB. Max. memory is 11.5 GB. * CodeCheck took 197948.91 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 57.1 MB). Free memory was 1.0 GB in the beginning and 860.4 MB in the end (delta: 179.5 MB). Peak memory consumption was 236.6 MB. Max. memory is 11.5 GB. RESULT: Ultimate could not prove your program: Toolchain returned no result. [MP z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (1)] Forcibly destroying the process Received shutdown request...