Read-only forum archive

is there a way to support huge exponent, like x^(2^256)

is there a way to support huge exponent, like x^(2^256)

gepo · Wed Oct 27, 2010 11:56 pm

What I found was Singular can only support at most x^(2^30) (on a 64-bit machine).
Now I am wondering whether there is a way to support large exponent, like x^(2^256).
Or whether Singular has a plan to support large exponent.

Thanks in advance.
Gepo

Re: is there a way to support huge exponent, like x^(2^256)

hannes · Thu Oct 28, 2010 9:26 am

The limit for exponent can be extended up to the size that of the type long,
i.e. up to 2^63 on 64-bit machine - this will be available in one
of the next versions.
There no plans to go to larger exponent as this would require a change of
the data structures for polynomials.

Hans Schoenemann

Re: is there a way to support huge exponent, like x^(2^256)

malex · Wed Nov 10, 2010 2:08 pm

Dear gepo,

you may simulate huge exponents per hand using additional dummy variables as follows:

Code:
ring R = 0, (x100, x50, x), lp; // ADD dummy variables for multiples
qring Q = groebner( ideal( x100 - x50^2, x50 - x^50 ) ); // Relations between x^n and x_n
poly H = x100 * x100 - x50 + x; // bigger exponents
H; // x100^2-x50+x
NF(H, std(0)); // or use subst to get expression in 'x'
x^200-x^50+x


I hope this helps,
Oleksandr