Post a reply
Username:
Note:If not registered, provide any username. For more comfort, register here.
Subject:
Message body:
Enter your message here, it may contain no more than 60000 characters. 

Smilies
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
Font size:
Font colour
Options:
BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON
Disable BBCode
Disable smilies
Do not automatically parse URLs
Confirmation of post
To prevent automated posts the board requires you to enter a confirmation code. The code is displayed in the image you should see below. If you are visually impaired or cannot otherwise read this code please contact the %sBoard Administrator%s.
Confirmation code:
Enter the code exactly as it appears. All letters are case insensitive, there is no zero.
   

Topic review - How to use NTL in singular?
Author Message
  Post subject:  Re: How to use NTL in singular?  Reply with quote
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.
Post Posted: Tue Oct 11, 2011 2:24 pm
  Post subject:  Re: How to use NTL in singular?  Reply with quote
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);
Post Posted: Sat Oct 08, 2011 5:09 am
  Post subject:  Re: How to use NTL in singular?  Reply with quote
If you want a uniformly random element of GF (3^3) you're right.
Post Posted: Tue Sep 27, 2011 2:36 pm
  Post subject:  Re: How to use NTL in singular?  Reply with quote
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?
Post Posted: Tue Sep 27, 2011 4:01 am
  Post subject:  Re: How to use NTL in singular?  Reply with quote
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).
Post Posted: Mon Aug 29, 2011 11:36 am
  Post subject:  Re: How to use NTL in singular?  Reply with quote
Say, GF(3^3), I want randomly generate a element in this field, and each one with equal possibility to be outputted.
Post Posted: Sat Aug 27, 2011 7:51 am
  Post subject:  Re: How to use NTL in singular?  Reply with quote
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
Post Posted: Thu Aug 25, 2011 1:56 pm
  Post subject:  Re: How to use NTL in singular?  Reply with quote
but sparsepoly can not generate a random element of the field with equal posibility...
Post Posted: Thu Aug 25, 2011 11:43 am
  Post subject:  Re: How to use NTL in singular?  Reply with quote
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.
Post Posted: Mon Aug 22, 2011 12:06 pm
  Post subject:  How to use NTL in singular?  Reply with quote
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
Post Posted: Sun Aug 21, 2011 10:39 am


It is currently Fri May 13, 2022 11:06 am
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group