Singular https://www.singular.uni-kl.de/forum/ |
|
How to use NTL in singular? https://www.singular.uni-kl.de/forum/viewtopic.php?f=10&t=1958 |
Page 1 of 1 |
Author: | magichowlNew [ Sun Aug 21, 2011 10:39 am ] |
Post subject: | How to use NTL in singular? |
I want to generate a random element in a finite field, (may not be a prime field), do I have to write dynamic module? And I can't find a file to reference with the sourcecode written in the structure of dynamic module. Besides, how can I use NTL in singular? Should I write dynamic module too? Thank you |
Author: | mlee [ Mon Aug 22, 2011 12:06 pm ] |
Post subject: | Re: How to use NTL in singular? |
Hi, you can use the function random in a prime field or sparsepoly in a non prime field (Please check the manual). NTL is used by default for univariate gcd and factorization. If you need NTL for anything besides this let me know. |
Author: | magichowl [ Thu Aug 25, 2011 11:43 am ] |
Post subject: | Re: How to use NTL in singular? |
but sparsepoly can not generate a random element of the field with equal posibility... |
Author: | gorzel [ Thu Aug 25, 2011 1:56 pm ] |
Post subject: | Re: How to use NTL in singular? |
What do you mean by Quote: but sparsepoly can not generate a random element of the field with equal posibility... Use the command random for random integers within a specified range http://www.singular.uni-kl.de/Manual/la ... htm#SEC340 |
Author: | magichowl [ Sat Aug 27, 2011 7:51 am ] |
Post subject: | Re: How to use NTL in singular? |
Say, GF(3^3), I want randomly generate a element in this field, and each one with equal possibility to be outputted. |
Author: | mlee [ Mon Aug 29, 2011 11:36 am ] |
Post subject: | Re: How to use NTL in singular? |
Hi Try something like LIB "random.lib"; ring r= 3,x,dp; poly f= sparsepoly (0,2,50,4); ring s=(3,a),(x,y),dp; minpoly= a3+2a+1; map m= r,a; m (f); The sparsepoly (0,2,50,4) creates a random polynomial in x with coefficients in the range [1,4) of degree between 0 and 2. And each monomial is zero with probability 0,5. The last 4 lines maps this polynomial to a ring s with coefficients from Z/3Z[a]/ (a3+2a+1). |
Author: | magichowl [ Tue Sep 27, 2011 4:01 am ] |
Post subject: | Re: How to use NTL in singular? |
Each coefficient of the monomial in f is zero with probability 1/3. So f must be defined as poly f = sparsepoly (0,2,0,4); Don't you think so? |
Author: | mlee [ Tue Sep 27, 2011 2:36 pm ] |
Post subject: | Re: How to use NTL in singular? |
If you want a uniformly random element of GF (3^3) you're right. |
Author: | magichowl [ Sat Oct 08, 2011 5:09 am ] |
Post subject: | Re: How to use NTL in singular? |
Thanks. But when I define a ring: ring s=(9,a),(x,y),dp; s; // # ground field : 9 // primitive element : a // minpoly : 1*a^2+2*a^1+2*a^0 // number of vars : 2 // block 1 : ordering dp // : names x y // block 2 : ordering C then i can't reduce the elememts like a^6 or a7x2+a9y; what i mean is to present the coefficients by the basis { 1, a }, in fact a^6 is (-a-1); |
Author: | mlee [ Tue Oct 11, 2011 2:24 pm ] |
Post subject: | Re: How to use NTL in singular? |
In your case GF (3^2) is represented by a primitive element. See http://www.singular.uni-kl.de/Manual/latest/sing_29.htm#SEC39 for an example of this. |
Page 1 of 1 | All times are UTC + 1 hour [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |