Singular https://www.singular.uni-kl.de/forum/ |
|
doubts about declaration of ring or galois field https://www.singular.uni-kl.de/forum/viewtopic.php?f=10&t=1823 |
Page 1 of 1 |
Author: | gepo [ Thu Apr 08, 2010 6:36 am ] |
Post subject: | doubts about declaration of ring or galois field |
Hi, all, I am not sure what the range of a ring (galois field) is in Singular. For example, I want to define a Galois field GF(2^m): ring r=(2,a),x,dp; minpoly=a^m+...; //here is a min polynomial definition and I want to know how large the "m" in GF(2^m) can be? from link: http://www.singular.uni-kl.de/Manual/la ... .htm#SEC38 2^m should be less than 2^16, which means "m" should be less or equal than 16, is this correct? But I tried when "m=24", it worked correctly. Would you like to clear my doubts? Thanks a lot. Gepo |
Author: | gorzel [ Thu Apr 08, 2010 6:08 pm ] |
Post subject: | Re: doubts about declaration of ring or galois field |
See the 9th example of 3.3.1 Examples of ring declarations http://www.singular.uni-kl.de/Manual/la ... .htm#SEC39 You can define algebraic extension of finite fields in two ways. Either you specify the primepower. Then Singular sets a minpoly itselfs. The limitation, that is must hold p^n <=2^16=65536 is valid for this approach. Code: > ring rGF8 = (8,a),x,dp; > basering; // # ground field : 8 // primitive element : a // minpoly : 1*a^3+1*a^1+1*a^0 // number of vars : 1 // block 1 : ordering dp // : names x // block 2 : ordering C > 2*a2+a; a If you try to define a Galoisfield with 2^24 elements in this way, then Singular guesses, that you want to define a basering with characteristic p, where p is the largest prime number less or equal to what you specify as characteristic. See this: Code: > 2^24; 16777216 > prime(2^24); // the largest prime below or equal to the input 16777213 > ring rGF16777216 = (16777216,b),x,dp; > basering; // characteristic : 16777213 // <-- this is not 2^24 // 1 parameter : b // minpoly : 0 // <-- a minpoly is not set yet // number of vars : 1 // block 1 : ordering dp // : names x // block 2 : ordering C News for version 3-0-4 says: kernel: use Conway polynomials and support more finite fields (I.e. /Singular/3-1-1/LIB/gftables only shows a part of what is intenal possible.) or, you specify the characteristic of the groundfield and define a minimal polynomial. This is a you did above. Code: > ring r2ext = (2,a),x,dp; > minpoly = a3+a+1; > basering; // characteristic : 2 // 1 parameter : a // minpoly : (a3+a+1) // number of vars : 1 // block 1 : ordering dp // : names x // block 2 : ordering C > a2+a; (a2+a) > 2*a2+a; (a) 6.1 Limitations http://www.singular.uni-kl.de/Manual/la ... htm#SEC386 seems not to state something about limitations in this case. This means, if you know the minpoly for the the alg extension of degree 24 or higher, it should be possible that you set it. Ch. Gorzel |
Author: | gepo [ Thu Apr 08, 2010 7:13 pm ] |
Post subject: | Re: doubts about declaration of ring or galois field |
"This means, if you know the minpoly for the the alg extension of degree 24 or higher, it should be possible that you set it". Thanks for your long reply. I just need to know whether your conclusion is for sure: for GF(2^m) with "m" greater or equal to 32, whether Singular support operations on it. Thanks so much. Gepo |
Author: | gepo [ Fri Apr 09, 2010 12:25 am ] |
Post subject: | Re: doubts about declaration of ring or galois field |
yes, it can work for GF(2^32). just let your guys know. |
Page 1 of 1 | All times are UTC + 1 hour [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |