• (expt 9.5 400) and (expt 9.4721 400) -- hints ?

    From henhanna@gmail.com@21:1/5 to All on Sat Jun 18 09:09:13 2022
    here using Gauche implementation of Scheme (Lisp)
    _________________________

    gosh> (expt 2 10)
    1024

    gosh> (expt 95 400) 122868941115179737710771763422406480301757540139859458808109124467070985446636432601124226198138372384827136835747639824957217872566284270584970573806709719276387720717338491937768940125341858818232921546470367105745159050900738732857641177973934199359975
    283304040662214527892754581251472028550573377465974149524776907053647487276218630915991403393175918807721542352052061931828388937244412868178358157101355186823815679746336760233122803664930597166935876581382936048661922495177503814998271180126016615741029
    048421718399550885061036453398850989384221230496760667725343755621356110646439201800024101683783925799569271375473948166129904365762856539506504738909912793972528107696543949955683957699890196644331714953888959611025828637994242150674323852711788962466243
    901872076094150543212890625

    gosh> (expt 9.5 300) --> 2.075303347768084e293

    gosh> (expt 9.5 400) --> +inf.0


    SO... With ( 9.5 ^ 400) i can get the exact value, but what i want to do is to get an approx. value of

    ( A ^ 400 ) where

    A is 9.47213595499958
    or
    A is (+ 5 (* 2 (sqrt 5)))


    ---------------- is there an easy way to do this?


    (expt 947213595499958 400) gives me an approx value,
    but i guess i'm asking for 1000 (or million) times as many digits.

    so it seems far beyond what my cheap PC can do.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Edward Murphy@21:1/5 to henh...@gmail.com on Sun Jun 19 16:04:48 2022
    On 6/18/2022 9:09 AM, henh...@gmail.com wrote:

    get an approx. value of

    ( A ^ 400 ) where

    A is 9.47213595499958
    or
    A is (+ 5 (* 2 (sqrt 5)))


    ---------------- is there an easy way to do this?


    (expt 947213595499958 400) gives me an approx value,
    but i guess i'm asking for 1000 (or million) times as many digits.

    so it seems far beyond what my cheap PC can do.

    A = 2s+5 (where s = sqrt(5)), so:

    1) Compute the binomial expansion of (2s+5)^400.

    2) Use s^2 = 5 to reduce it to x + ys (where x and y are integers).

    3) Compute s to at least the desired number of digits, plus about
    log10(x) or log10(y) more digits (whichever is larger).

    4) Use simple arithmetic on 3) to derive an approximation of
    (2s+5)^400 to at least the desired number of digits.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)