> (2) Singular *is* capable of handling the ring Integers(3**6)['x,y'].
> Check it out (ok, I use 3**5 below):
>
> sage: r = singular.ring(3^5, '(x,y)', 'dp')
> sage: r
>
> // characteristic : 241
> // number of vars : 2
> // block 1 : ordering dp
> // : names x y
> // block 2 : ordering C
> sage: singular('(x+y)^10')
This gives you F_241 - as fas as I know singular returns the ring F_p
with p the next smallest prime if n is composite. Here instead of
F_243 you get F_241. I do not know if you can actually get F_n with n
composite in singular, but Martin probably knows.
> x^10+10*x^9*y+45*x^8*y^2+120*x^7*y^3-31*x^6*y^4+11*x^5*y^5-31*x^4*y^6+120*x^3*y^7+45*x^2*y^8+10*x*y^9+y^10
> sage: R.<x,y> = Integers(3^5)[x,y]
> sage: (x+y)^10
> y^10 + 10*x*y^9 + 45*x^2*y^8 + 120*x^3*y^7 + 210*x^4*y^6 + 9*x^5*y^5 +
> 210*x^6*y^4 + 120*x^7*y^3 + 45*x^8*y^2 + 10*x^9*y + x^10
>
> So singular seems to be capable of *arithmetic* modulo n for any n.
> It just doesn't do
> Groebner basis modulo n for n composite.
>
The two results from above are different, -31*x^4*y^6 is equal to
210*x^4*y^6 in F_241, not F_243.
<shameless plug>CoCoALib can do multivariate polynomial arithmetic in
Z_n, the bindings Martin and I wrote (well mostly Martin) only do QQ
at the moment, but Z_n is just a copy and paste job once the bindings
have been fleshed out.</shameless plug>
I have been rather busy the last month, so my time on sage was mostly
spend on installers and testing. Hopefully once 2.5 is out I can spend
more time on CoCoALib bindings.
Cheers,
Michael
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@xxxxxxxxxxxxxxxx
To unsubscribe from this group, send email to
sage-devel-unsubscribe@xxxxxxxxxxxxxxxx
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---
|