American Citizen on Thu, 30 Nov 2023 03:58:52 +0100


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: reasonable number size limit for working with with PARI/GP? (googol is fine, googolplex is not)


Hermann:

This really depends upon the capabilities of your computer, particularly system RAM.

I have 32 gigs on my HP Z420 workstation with 6 Xeon processors running 3.4 Gigahertz or so.

I would suggest looking at the "htop" linux command and take a look at how much system ram is being used up by your program.

This will give you a better idea on what's feasible for your systems.

Or you can use the simple linux command: %ps -o %mem pid where pid is the pid # of the executing GP-Pari program

I believe GP-Pari will allow you to run external bash commands and pipe the input back into GP-Pari

Randall

On 11/29/23 04:14, hermann@stamm-wilbrandt.de wrote:
What is a reasonable number size limit for working with with PARI/GP?
Working with 11.9million decimal digit numbers is no problem, even sub second: https://github.com/Hermann-SW/RSA_numbers_factored/blob/main/pari/sqrtm1.11887192_digit.largest_known_1mod4_prime.gp

hermann@7600x:~/RSA_numbers_factored/pari$ gp -q < sqrtm1.11887192_digit.largest_known_1mod4_prime.gp
11887192-digit prime p (39488395 bits)
[M,V] = halfgcd(sqrtm1, p)
  ***   last result computed in 183 ms.
[x,y] = [V[2], M[2,1]]
  ***   last result computed in 0 ms.
sqrtm1 = lift(Mod(x, p)/y)
  ***   last result computed in 391 ms.
done, all asserts OK
hermann@7600x:~/RSA_numbers_factored/pari$


But googolplex is too much ...
https://en.wikipedia.org/wiki/Googolplex

hermann@7600x:~$ gp --version
                                            GP/PARI CALCULATOR Version 2.15.4 (released)                                     amd64 running linux (x86-64/GMP-6.2.1 kernel) 64-bit version                               compiled: Aug 21 2023, gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)                                                       threading engine: single                                           (readline v8.1 disabled, extended help enabled)
hermann@7600x:~$ gp -q
? googol=10^100;
? googolplex=10^googol;
  ***   at top-level: googolplex=10^googol
  ***                              ^-------
  *** _^_: overflow in lg().
  ***   Break loop: type 'break' to go back to GP prompt
break>


? #digits(googol-1)
100
? ##
  ***   last result computed in 0 ms.
?


Regards,

Hermann.