./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/float-newlib/double_req_bl_0662b_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_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_0662b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/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 427f5a1297639616b7c4f6533641105ea064cfe8 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ 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_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/config/KojakReach.xml -i ../../sv-benchmarks/c/float-newlib/double_req_bl_0662b_true-unreach-call.c -s /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/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 427f5a1297639616b7c4f6533641105ea064cfe8 ................................................................................................................................................................................................................................................................................................................................................ 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_96)) --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-22 21:51:46,779 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-22 21:51:46,780 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-22 21:51:46,788 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-22 21:51:46,788 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-22 21:51:46,789 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-22 21:51:46,790 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-22 21:51:46,791 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-22 21:51:46,792 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-22 21:51:46,793 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-22 21:51:46,793 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-22 21:51:46,794 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-22 21:51:46,794 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-22 21:51:46,795 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-22 21:51:46,796 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-22 21:51:46,796 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-22 21:51:46,797 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-22 21:51:46,798 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-22 21:51:46,799 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-22 21:51:46,800 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-22 21:51:46,801 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-22 21:51:46,802 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-22 21:51:46,803 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-22 21:51:46,803 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-22 21:51:46,804 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-22 21:51:46,805 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-22 21:51:46,805 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-22 21:51:46,806 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-22 21:51:46,807 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-22 21:51:46,807 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-22 21:51:46,807 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-22 21:51:46,808 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-22 21:51:46,808 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-22 21:51:46,808 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-22 21:51:46,809 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-22 21:51:46,809 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-22 21:51:46,809 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Default.epf [2018-11-22 21:51:46,816 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-22 21:51:46,817 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-22 21:51:46,817 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-22 21:51:46,817 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-22 21:51:46,818 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-22 21:51:46,818 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-22 21:51:46,818 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-22 21:51:46,818 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-22 21:51:46,819 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-22 21:51:46,820 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-22 21:51:46,820 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-22 21:51:46,820 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-22 21:51:46,820 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-22 21:51:46,820 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-22 21:51:46,820 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-22 21:51:46,820 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-22 21:51:46,821 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-22 21:51:46,821 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-22 21:51:46,821 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-22 21:51:46,821 INFO L133 SettingsManager]: * Trace refinement strategy=PENGUIN [2018-11-22 21:51:46,821 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-22 21:51:46,821 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-22 21:51:46,821 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_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/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 -> 427f5a1297639616b7c4f6533641105ea064cfe8 [2018-11-22 21:51:46,841 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-22 21:51:46,850 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-22 21:51:46,852 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-22 21:51:46,852 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-22 21:51:46,853 INFO L276 PluginConnector]: CDTParser initialized [2018-11-22 21:51:46,853 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_0662b_true-unreach-call.c [2018-11-22 21:51:46,892 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/ff7bf5700/d325f74be68048b48bb5c9bdc535611d/FLAGd93efac90 [2018-11-22 21:51:47,312 INFO L307 CDTParser]: Found 1 translation units. [2018-11-22 21:51:47,312 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/sv-benchmarks/c/float-newlib/double_req_bl_0662b_true-unreach-call.c [2018-11-22 21:51:47,319 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/ff7bf5700/d325f74be68048b48bb5c9bdc535611d/FLAGd93efac90 [2018-11-22 21:51:47,328 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/ff7bf5700/d325f74be68048b48bb5c9bdc535611d [2018-11-22 21:51:47,330 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-22 21:51:47,331 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-22 21:51:47,332 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-22 21:51:47,332 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-22 21:51:47,334 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-22 21:51:47,335 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,336 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@37427c0c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47, skipping insertion in model container [2018-11-22 21:51:47,336 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,342 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-22 21:51:47,362 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-22 21:51:47,518 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-22 21:51:47,522 INFO L191 MainTranslator]: Completed pre-run [2018-11-22 21:51:47,594 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-22 21:51:47,614 INFO L195 MainTranslator]: Completed translation [2018-11-22 21:51:47,614 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47 WrapperNode [2018-11-22 21:51:47,614 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-22 21:51:47,615 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-22 21:51:47,615 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-22 21:51:47,615 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-22 21:51:47,620 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,628 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,644 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-22 21:51:47,644 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-22 21:51:47,644 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-22 21:51:47,644 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-22 21:51:47,650 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,650 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,653 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,653 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,663 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,668 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,670 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... [2018-11-22 21:51:47,672 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-22 21:51:47,672 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-22 21:51:47,672 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-22 21:51:47,672 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-22 21:51:47,673 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:47" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/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-22 21:51:47,707 INFO L130 BoogieDeclarations]: Found specification of procedure read~real [2018-11-22 21:51:47,708 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-22 21:51:47,708 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_double [2018-11-22 21:51:47,708 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_double [2018-11-22 21:51:47,708 INFO L130 BoogieDeclarations]: Found specification of procedure write~real [2018-11-22 21:51:47,708 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-22 21:51:47,708 INFO L130 BoogieDeclarations]: Found specification of procedure atan_double [2018-11-22 21:51:47,708 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_double [2018-11-22 21:51:47,708 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-22 21:51:47,709 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-22 21:51:47,709 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-22 21:51:47,709 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real [2018-11-22 21:51:47,709 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-22 21:51:48,255 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-22 21:51:48,255 INFO L280 CfgBuilder]: Removed 22 assue(true) statements. [2018-11-22 21:51:48,256 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.11 09:51:48 BoogieIcfgContainer [2018-11-22 21:51:48,256 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-22 21:51:48,256 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-22 21:51:48,256 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-22 21:51:48,266 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-22 21:51:48,266 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.11 09:51:48" (1/1) ... [2018-11-22 21:51:48,276 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-22 21:51:48,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:51:48,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 72 states and 117 transitions. [2018-11-22 21:51:48,303 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 117 transitions. [2018-11-22 21:51:48,304 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2018-11-22 21:51:48,304 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:51:48,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-22 21:51:48,402 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-22 21:51:48,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:51:48,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 72 states and 112 transitions. [2018-11-22 21:51:48,412 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 112 transitions. [2018-11-22 21:51:48,412 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2018-11-22 21:51:48,412 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:51:48,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-22 21:51:48,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-22 21:51:48,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-22 21:51:48,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-22 21:51:48,585 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 := 0.0;main_~y~0 := main_#t~nondet48;havoc main_#t~nondet48; VAL [ULTIMATE.start_main_~x~0=0.0, |#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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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~mem27;havoc __ieee754_atan2_#t~union28;call __ieee754_atan2_#t~mem29 := read~int(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 4);__ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29;call write~real(__ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8);havoc __ieee754_atan2_#t~mem29;havoc __ieee754_atan2_#t~union30;call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset);havoc __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~lx~0=6, ULTIMATE.start___ieee754_atan2_~x=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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~mem31;havoc __ieee754_atan2_#t~union32;call __ieee754_atan2_#t~mem33 := read~int(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 4);__ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33;call write~real(__ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8);havoc __ieee754_atan2_#t~mem33;havoc __ieee754_atan2_#t~union34;call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset);havoc __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset; VAL [ULTIMATE.start___ieee754_atan2_~hx~1=0, ULTIMATE.start___ieee754_atan2_~hy~0=0, ULTIMATE.start___ieee754_atan2_~lx~0=6, ULTIMATE.start___ieee754_atan2_~ly~0=11, ULTIMATE.start___ieee754_atan2_~x=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~res~0=5.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=5.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, ~someUnaryDOUBLEoperation(~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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~res~0=5.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=5.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=0.0, ULTIMATE.start___ieee754_atan2_~y=3.0, ULTIMATE.start_main_~res~0=5.0, ULTIMATE.start_main_~x~0=0.0, ULTIMATE.start_main_~y~0=3.0, |#NULL.base|=0, |#NULL.offset|=0, |ULTIMATE.start___ieee754_atan2_#in~x|=0.0, |ULTIMATE.start___ieee754_atan2_#in~y|=3.0, |ULTIMATE.start___ieee754_atan2_#res|=5.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 := 0.0; [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL.base=0, #NULL.offset=0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem27; [L150] havoc __ieee754_atan2_#t~union28; [L151] call __ieee754_atan2_#t~mem29 := read~int(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] call write~real(__ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset); [L148] havoc __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] call __ieee754_atan2_#t~mem33 := read~int(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] call write~real(__ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset); [L155] havoc __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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, ~someUnaryDOUBLEoperation(~pi_o_2~0)); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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 := 0.0; [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL.base=0, #NULL.offset=0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem27; [L150] havoc __ieee754_atan2_#t~union28; [L151] call __ieee754_atan2_#t~mem29 := read~int(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] call write~real(__ieee754_atan2_#t~union30, __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset); [L148] havoc __ieee754_atan2_~#ew_u~0.base, __ieee754_atan2_~#ew_u~0.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] call __ieee754_atan2_#t~mem33 := read~int(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] call write~real(__ieee754_atan2_#t~union34, __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset); [L155] havoc __ieee754_atan2_~#ew_u~1.base, __ieee754_atan2_~#ew_u~1.offset; VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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, ~someUnaryDOUBLEoperation(~pi_o_2~0)); VAL [#NULL.base=0, #NULL.offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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 := 0.0; [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL!base=0, #NULL!offset=0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem27; [L150] havoc __ieee754_atan2_#t~union28; [L151] FCALL call __ieee754_atan2_#t~mem29 := read~int({ base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] FCALL call write~real(__ieee754_atan2_#t~union30, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0); [L148] havoc __ieee754_atan2_~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] FCALL call __ieee754_atan2_#t~mem33 := read~int({ base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] FCALL call write~real(__ieee754_atan2_#t~union34, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1); [L155] havoc __ieee754_atan2_~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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, ~someUnaryDOUBLEoperation(~pi_o_2~0)) VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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 := 0.0; [L252] main_~y~0 := main_#t~nondet48; [L252] havoc main_#t~nondet48; VAL [#NULL!base=0, #NULL!offset=0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem27; [L150] havoc __ieee754_atan2_#t~union28; [L151] FCALL call __ieee754_atan2_#t~mem29 := read~int({ base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 4); [L151] __ieee754_atan2_~lx~0 := __ieee754_atan2_#t~mem29; [L151] FCALL call write~real(__ieee754_atan2_#t~union30, { base: __ieee754_atan2_~#ew_u~0!base, offset: __ieee754_atan2_~#ew_u~0!offset }, 8); [L151] havoc __ieee754_atan2_#t~mem29; [L151] havoc __ieee754_atan2_#t~union30; [L148] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~0); [L148] havoc __ieee754_atan2_~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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~mem31; [L157] havoc __ieee754_atan2_#t~union32; [L158] FCALL call __ieee754_atan2_#t~mem33 := read~int({ base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 4); [L158] __ieee754_atan2_~ly~0 := __ieee754_atan2_#t~mem33; [L158] FCALL call write~real(__ieee754_atan2_#t~union34, { base: __ieee754_atan2_~#ew_u~1!base, offset: __ieee754_atan2_~#ew_u~1!offset }, 8); [L158] havoc __ieee754_atan2_#t~mem33; [L158] havoc __ieee754_atan2_#t~union34; [L155] FCALL call ULTIMATE.dealloc(__ieee754_atan2_~#ew_u~1); [L155] havoc __ieee754_atan2_~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.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=0.0, __ieee754_atan2_~y=3.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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, ~someUnaryDOUBLEoperation(~pi_o_2~0)) VAL [#NULL!base=0, #NULL!offset=0, __ieee754_atan2_#in~x=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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=0.0, __ieee754_atan2_#in~y=3.0, __ieee754_atan2_#res=5.0, __ieee754_atan2_~hx~1=0, __ieee754_atan2_~hy~0=0, __ieee754_atan2_~lx~0=6, __ieee754_atan2_~ly~0=11, __ieee754_atan2_~x=0.0, __ieee754_atan2_~y=3.0, main_~res~0=5.0, main_~x~0=0.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 := 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~mem27; [L150] havoc #t~union28; [L151] FCALL call #t~mem29 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L151] ~lx~0 := #t~mem29; [L151] FCALL call write~real(#t~union30, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L151] havoc #t~mem29; [L151] havoc #t~union30; [L148] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L148] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=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~mem31; [L157] havoc #t~union32; [L158] FCALL call #t~mem33 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L158] ~ly~0 := #t~mem33; [L158] FCALL call write~real(#t~union34, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L158] havoc #t~mem33; [L158] havoc #t~union34; [L155] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L155] havoc ~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=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, ~someUnaryDOUBLEoperation(~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 := 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~mem27; [L150] havoc #t~union28; [L151] FCALL call #t~mem29 := read~int({ base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 4); [L151] ~lx~0 := #t~mem29; [L151] FCALL call write~real(#t~union30, { base: ~#ew_u~0!base, offset: ~#ew_u~0!offset }, 8); [L151] havoc #t~mem29; [L151] havoc #t~union30; [L148] FCALL call ULTIMATE.dealloc(~#ew_u~0); [L148] havoc ~#ew_u~0; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=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~mem31; [L157] havoc #t~union32; [L158] FCALL call #t~mem33 := read~int({ base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 4); [L158] ~ly~0 := #t~mem33; [L158] FCALL call write~real(#t~union34, { base: ~#ew_u~1!base, offset: ~#ew_u~1!offset }, 8); [L158] havoc #t~mem33; [L158] havoc #t~union34; [L155] FCALL call ULTIMATE.dealloc(~#ew_u~1); [L155] havoc ~#ew_u~1; VAL [#NULL!base=0, #NULL!offset=0, ~#aT_atan~0!base=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, ~someUnaryDOUBLEoperation(~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-22 21:51:48,685 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 22.11 09:51:48 ImpRootNode [2018-11-22 21:51:48,685 INFO L132 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2018-11-22 21:51:48,687 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-22 21:51:48,687 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-22 21:51:48,688 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-22 21:51:48,688 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.11 09:51:48" (3/4) ... [2018-11-22 21:51:48,691 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-22 21:51:48,691 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-22 21:51:48,692 INFO L168 Benchmark]: Toolchain (without parser) took 1361.37 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.6 MB). Free memory was 961.3 MB in the beginning and 1.0 GB in the end (delta: -56.6 MB). Peak memory consumption was 76.0 MB. Max. memory is 11.5 GB. [2018-11-22 21:51:48,695 INFO L168 Benchmark]: CDTParser took 0.11 ms. Allocated memory is still 1.0 GB. Free memory is still 982.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-22 21:51:48,695 INFO L168 Benchmark]: CACSL2BoogieTranslator took 283.03 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.6 MB). Free memory was 961.3 MB in the beginning and 1.1 GB in the end (delta: -166.0 MB). Peak memory consumption was 30.8 MB. Max. memory is 11.5 GB. [2018-11-22 21:51:48,696 INFO L168 Benchmark]: Boogie Procedure Inliner took 28.70 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: 5.4 MB). Peak memory consumption was 5.4 MB. Max. memory is 11.5 GB. [2018-11-22 21:51:48,697 INFO L168 Benchmark]: Boogie Preprocessor took 27.90 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-22 21:51:48,697 INFO L168 Benchmark]: RCFGBuilder took 583.83 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: 61.1 MB). Peak memory consumption was 61.1 MB. Max. memory is 11.5 GB. [2018-11-22 21:51:48,698 INFO L168 Benchmark]: CodeCheck took 430.69 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: 43.0 MB). Peak memory consumption was 43.0 MB. Max. memory is 11.5 GB. [2018-11-22 21:51:48,698 INFO L168 Benchmark]: Witness Printer took 4.31 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-22 21:51:48,701 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.3s 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.11 ms. Allocated memory is still 1.0 GB. Free memory is still 982.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 283.03 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.6 MB). Free memory was 961.3 MB in the beginning and 1.1 GB in the end (delta: -166.0 MB). Peak memory consumption was 30.8 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 28.70 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: 5.4 MB). Peak memory consumption was 5.4 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 27.90 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 583.83 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: 61.1 MB). Peak memory consumption was 61.1 MB. Max. memory is 11.5 GB. * CodeCheck took 430.69 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: 43.0 MB). Peak memory consumption was 43.0 MB. Max. memory is 11.5 GB. * Witness Printer took 4.31 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-22 21:51:50,128 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-22 21:51:50,129 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-22 21:51:50,137 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-22 21:51:50,138 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-22 21:51:50,138 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-22 21:51:50,139 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-22 21:51:50,140 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-22 21:51:50,142 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-22 21:51:50,142 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-22 21:51:50,143 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-22 21:51:50,143 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-22 21:51:50,144 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-22 21:51:50,144 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-22 21:51:50,145 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-22 21:51:50,146 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-22 21:51:50,146 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-22 21:51:50,148 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-22 21:51:50,149 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-22 21:51:50,150 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-22 21:51:50,151 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-22 21:51:50,151 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-22 21:51:50,153 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-22 21:51:50,153 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-22 21:51:50,153 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-22 21:51:50,154 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-22 21:51:50,155 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-22 21:51:50,155 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-22 21:51:50,156 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-22 21:51:50,156 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-22 21:51:50,157 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-22 21:51:50,157 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-22 21:51:50,157 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-22 21:51:50,157 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-22 21:51:50,158 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-22 21:51:50,159 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-22 21:51:50,159 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/config/svcomp-Reach-32bit-Kojak_Bitvector.epf [2018-11-22 21:51:50,169 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-22 21:51:50,169 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-22 21:51:50,170 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-22 21:51:50,170 INFO L133 SettingsManager]: * ... to procedures called more than once=ALWAYS [2018-11-22 21:51:50,171 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-22 21:51:50,171 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-22 21:51:50,171 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-22 21:51:50,171 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-22 21:51:50,171 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-22 21:51:50,171 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-22 21:51:50,171 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-22 21:51:50,172 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-22 21:51:50,173 INFO L131 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2018-11-22 21:51:50,173 INFO L133 SettingsManager]: * Timeout in seconds=1000000 [2018-11-22 21:51:50,173 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-22 21:51:50,173 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-22 21:51:50,173 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2018-11-22 21:51:50,173 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-22 21:51:50,173 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-22 21:51:50,174 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-22 21:51:50,174 INFO L133 SettingsManager]: * Use separate solver for trace checks=false [2018-11-22 21:51:50,174 INFO L133 SettingsManager]: * Trace refinement strategy=WALRUS [2018-11-22 21:51:50,174 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-22 21:51:50,174 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-22 21:51:50,174 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-22 21:51:50,174 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_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/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 -> 427f5a1297639616b7c4f6533641105ea064cfe8 [2018-11-22 21:51:50,205 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-22 21:51:50,214 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-22 21:51:50,217 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-22 21:51:50,218 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-22 21:51:50,218 INFO L276 PluginConnector]: CDTParser initialized [2018-11-22 21:51:50,219 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/../../sv-benchmarks/c/float-newlib/double_req_bl_0662b_true-unreach-call.c [2018-11-22 21:51:50,264 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/553f004c0/852a610be40c4fbeb64cbc3787820379/FLAG0c6e82798 [2018-11-22 21:51:50,606 INFO L307 CDTParser]: Found 1 translation units. [2018-11-22 21:51:50,606 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/sv-benchmarks/c/float-newlib/double_req_bl_0662b_true-unreach-call.c [2018-11-22 21:51:50,611 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/553f004c0/852a610be40c4fbeb64cbc3787820379/FLAG0c6e82798 [2018-11-22 21:51:51,035 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/bin-2019/ukojak/data/553f004c0/852a610be40c4fbeb64cbc3787820379 [2018-11-22 21:51:51,038 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-22 21:51:51,039 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-22 21:51:51,040 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-22 21:51:51,040 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-22 21:51:51,043 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-22 21:51:51,044 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,046 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6919f42f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51, skipping insertion in model container [2018-11-22 21:51:51,046 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,053 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-22 21:51:51,074 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-22 21:51:51,241 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-22 21:51:51,247 INFO L191 MainTranslator]: Completed pre-run [2018-11-22 21:51:51,289 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-22 21:51:51,316 INFO L195 MainTranslator]: Completed translation [2018-11-22 21:51:51,316 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51 WrapperNode [2018-11-22 21:51:51,317 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-22 21:51:51,317 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-22 21:51:51,317 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-22 21:51:51,318 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-22 21:51:51,326 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,343 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,408 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-22 21:51:51,408 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-22 21:51:51,408 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-22 21:51:51,408 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-22 21:51:51,414 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,415 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,420 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,420 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,435 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,441 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,444 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... [2018-11-22 21:51:51,447 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-22 21:51:51,447 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-22 21:51:51,447 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-22 21:51:51,447 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-22 21:51:51,448 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.11 09:51:51" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_d7bc109b-f7fa-44d1-b744-b5dd40c9b4cf/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-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8 [2018-11-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8 [2018-11-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure fabs_double [2018-11-22 21:51:51,479 INFO L138 BoogieDeclarations]: Found implementation of procedure fabs_double [2018-11-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8 [2018-11-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure atan_double [2018-11-22 21:51:51,479 INFO L138 BoogieDeclarations]: Found implementation of procedure atan_double [2018-11-22 21:51:51,479 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-22 21:51:51,480 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-22 21:51:51,480 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-22 21:51:51,480 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-22 21:51:51,480 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-22 21:51:51,599 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:51:51,628 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:51:59,723 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:52:29,535 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:52:30,215 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:52:30,229 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:52:30,611 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:52:30,641 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:52:30,655 WARN L317 ript$VariableManager]: TermVariabe |q#valueAsBitvector| not constructed by VariableManager. Cannot ensure absence of name clashes. [2018-11-22 21:55:55,034 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-22 21:55:55,034 INFO L280 CfgBuilder]: Removed 22 assue(true) statements. [2018-11-22 21:55:55,035 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.11 09:55:55 BoogieIcfgContainer [2018-11-22 21:55:55,035 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-22 21:55:55,035 INFO L113 PluginConnector]: ------------------------CodeCheck---------------------------- [2018-11-22 21:55:55,036 INFO L271 PluginConnector]: Initializing CodeCheck... [2018-11-22 21:55:55,045 INFO L276 PluginConnector]: CodeCheck initialized [2018-11-22 21:55:55,045 INFO L185 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.11 09:55:55" (1/1) ... [2018-11-22 21:55:55,052 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-22 21:55:55,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:55:55,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 72 states and 117 transitions. [2018-11-22 21:55:55,077 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 117 transitions. [2018-11-22 21:55:55,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2018-11-22 21:55:55,078 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:55:55,112 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-22 21:55:55,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-22 21:55:55,165 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-22 21:55:55,173 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-22 21:55:55,183 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:55:55,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 72 states and 112 transitions. [2018-11-22 21:55:55,184 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 112 transitions. [2018-11-22 21:55:55,184 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2018-11-22 21:55:55,184 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:55:55,185 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-22 21:55:55,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-22 21:55:55,294 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-22 21:55:55,351 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,351 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,357 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-22 21:55:55,402 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,402 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,404 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 32 [2018-11-22 21:55:55,404 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-22 21:55:55,420 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-22 21:55:55,426 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,427 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 9 [2018-11-22 21:55:55,428 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-22 21:55:55,435 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-22 21:55:55,440 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-22 21:55:55,459 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-22 21:55:55,459 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:45, output treesize:17 [2018-11-22 21:55:55,558 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,559 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,561 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-22 21:55:55,645 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:55,654 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-22 21:55:55,654 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-22 21:55:55,678 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-22 21:55:55,700 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-22 21:55:55,701 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-22 21:55:55,709 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-22 21:55:55,717 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-22 21:55:55,740 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-22 21:55:55,740 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 5 variables, input treesize:72, output treesize:33 [2018-11-22 21:55:55,875 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-22 21:55:56,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:55:56,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 72 states and 111 transitions. [2018-11-22 21:55:56,710 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 111 transitions. [2018-11-22 21:55:56,711 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2018-11-22 21:55:56,711 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:55:56,711 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-22 21:55:57,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-22 21:55:57,014 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-22 21:55:57,229 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:57,230 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:55:57,231 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-22 21:55:57,272 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 40 treesize of output 35 [2018-11-22 21:55:57,273 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-22 21:55:57,291 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-22 21:55:57,310 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-22 21:55:57,310 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-22 21:55:57,329 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-22 21:55:57,344 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-22 21:55:57,375 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-22 21:55:57,376 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 4 variables, input treesize:67, output treesize:28 [2018-11-22 21:56:00,114 WARN L180 SmtUtils]: Spent 250.00 ms on a formula simplification that was a NOOP. DAG size: 12 [2018-11-22 21:56:01,792 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification that was a NOOP. DAG size: 12 [2018-11-22 21:56:01,795 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-22 21:56:10,466 WARN L180 SmtUtils]: Spent 232.00 ms on a formula simplification that was a NOOP. DAG size: 13 [2018-11-22 21:56:43,652 WARN L180 SmtUtils]: Spent 179.00 ms on a formula simplification that was a NOOP. DAG size: 13 [2018-11-22 21:56:44,357 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:56:44,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 75 states and 133 transitions. [2018-11-22 21:56:44,358 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 133 transitions. [2018-11-22 21:56:44,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2018-11-22 21:56:44,360 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:56:44,361 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-22 21:56:44,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-22 21:56:44,435 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-22 21:56:44,958 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:56:44,959 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:56:44,960 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-22 21:56:45,029 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:56:45,035 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-22 21:56:45,035 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-22 21:56:45,050 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-22 21:56:45,066 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-22 21:56:45,066 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-22 21:56:45,073 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-22 21:56:45,081 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-22 21:56:45,093 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-22 21:56:45,093 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 4 variables, input treesize:57, output treesize:18 [2018-11-22 21:56:50,330 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-22 21:57:04,501 WARN L180 SmtUtils]: Spent 734.00 ms on a formula simplification that was a NOOP. DAG size: 48 [2018-11-22 21:57:14,299 WARN L180 SmtUtils]: Spent 394.00 ms on a formula simplification that was a NOOP. DAG size: 49 [2018-11-22 21:57:35,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2018-11-22 21:57:35,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 71 states and 119 transitions. [2018-11-22 21:57:35,812 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 119 transitions. [2018-11-22 21:57:35,814 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2018-11-22 21:57:35,814 INFO L427 CodeCheckObserver]: Error Path is FOUND. [2018-11-22 21:57:35,814 ERROR L613 CodeCheckObserver]: First Tracecheck threw exception Indexed Sort FloatingPoint undefined [2018-11-22 21:57:35,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-22 21:57:35,876 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-22 21:57:36,432 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:57:36,432 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:57:36,433 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:57:36,433 INFO L683 Elim1Store]: detected equality via solver [2018-11-22 21:57:36,434 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-22 21:57:36,519 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_96)) 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-22 21:57:36,522 INFO L168 Benchmark]: Toolchain (without parser) took 345483.21 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 120.6 MB). Free memory was 949.7 MB in the beginning and 1.1 GB in the end (delta: -119.8 MB). Peak memory consumption was 814.4 kB. Max. memory is 11.5 GB. [2018-11-22 21:57:36,522 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-22 21:57:36,523 INFO L168 Benchmark]: CACSL2BoogieTranslator took 276.88 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 928.3 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. [2018-11-22 21:57:36,523 INFO L168 Benchmark]: Boogie Procedure Inliner took 90.78 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 129.0 MB). Free memory was 928.3 MB in the beginning and 1.1 GB in the end (delta: -195.0 MB). Peak memory consumption was 15.9 MB. Max. memory is 11.5 GB. [2018-11-22 21:57:36,523 INFO L168 Benchmark]: Boogie Preprocessor took 38.55 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-22 21:57:36,524 INFO L168 Benchmark]: RCFGBuilder took 243587.99 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: 92.8 MB). Peak memory consumption was 92.8 MB. Max. memory is 11.5 GB. [2018-11-22 21:57:36,524 INFO L168 Benchmark]: CodeCheck took 101485.78 ms. Allocated memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: -8.4 MB). Free memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: -45.7 MB). There was no memory consumed. Max. memory is 11.5 GB. [2018-11-22 21:57:36,526 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_96)) 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_96)): 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 276.88 ms. Allocated memory is still 1.0 GB. Free memory was 949.7 MB in the beginning and 928.3 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 90.78 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 129.0 MB). Free memory was 928.3 MB in the beginning and 1.1 GB in the end (delta: -195.0 MB). Peak memory consumption was 15.9 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 38.55 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. * RCFGBuilder took 243587.99 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: 92.8 MB). Peak memory consumption was 92.8 MB. Max. memory is 11.5 GB. * CodeCheck took 101485.78 ms. Allocated memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: -8.4 MB). Free memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: -45.7 MB). There was no memory consumed. 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...