Google

Go to the first, previous, next, last section, table of contents.


Í­¸ÂÂΤÎɽ¸½¤ª¤è¤Ó±é»»

Asir ¤Ë¤ª¤¤¤Æ¤Ï, Í­¸ÂÂΤÏ, ÀµÉ¸¿ôÁÇÂÎ GF(p), ɸ¿ô 2 ¤ÎÍ­¸ÂÂÎ GF(2^n) ¤¬ÄêµÁ¤Ç¤­¤ë. ¤³¤ì¤é¤ÏÁ´¤Æ, setmod_ff() ¤Ë¤è¤êÄêµÁ¤µ¤ì¤ë.

[0] P=pari(nextprime,2^50);
1125899906842679
[1] setmod_ff(P);
1125899906842679
[2] field_type_ff();
1
[3] load("fff");
1
[4] F=defpoly_mod2(50);
x^50+x^4+x^3+x^2+1
[5] setmod_ff(F);
x^50+x^4+x^3+x^2+1
[6] field_type_ff();
2

setmod_ff() ¤Ï, °ú¿ô¤¬ÀµÀ°¿ô p ¤Î¾ì¹ç GF(p), n ¼¡Â¿¹à¼° f(x) ¤Î¾ì ¹ç, f(x) mod 2 ¤òÄêµÁ¿¹à¼°¤È¤¹¤ë GF(2^n) ¤ò¤½¤ì¤¾¤ì´ðÁÃÂΤȤ·¤Æ¥»¥Ã¥È¤¹ ¤ë. setmod_ff() ¤Ë¤ª¤¤¤Æ¤Ï°ú¿ô¤Î´ûÌó¥Á¥§¥Ã¥¯¤Ï¹Ô¤ï¤º, ¸Æ¤Ó½Ð¤·Â¦ ¤¬ÀÕǤ¤ò»ý¤Ä.

´ðÁÃÂΤȤÏ, ¤¢¤¯¤Þ¤ÇÍ­¸ÂÂΤθµ¤È¤·¤ÆÀë¸À¤¢¤ë¤¤¤ÏÄêµÁ¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤¬, ¥»¥Ã¥È¤µ¤ì¤¿´ðÁÃÂΤα黻¤Ë½¾¤¦¤È¤¤¤¦°ÕÌ£¤Ç¤¢¤ë. ¨¤Á, Í­Íý¿ô¤É¤¦¤·¤Î±é»» ¤Î·ë²Ì¤ÏÍ­Íý¿ô¤È¤Ê¤ë. ⤷, »Í§±é»»¤Ë¤ª¤¤¤Æ°ìÊý¤Î¥ª¥Ú¥é¥ó¥É¤¬Í­¸ÂÂΤθµ ¤Î¾ì¹ç¤Ë¤Ï, ¾¤Î¸µ¤â¼«Æ°Åª¤ËƱ¤¸Í­¸ÂÂΤθµ¤È¸«¤Ê¤µ¤ì, ±é»»·ë²Ì¤âƱÍÍ¤Ë¤Ê ¤ë.

0 ¤Ç¤Ê¤¤Í­¸ÂÂΤ赤Ï, ¿ô¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ê, ¼±Ê̻ҤÎÃÍ¤Ï 1 ¤Ç¤¢¤ë. ¤µ¤é¤Ë, 0 ¤Ç¤Ê¤¤Í­¸ÂÂΤθµ¤Î¿ô¼±Ê̻ҤÏ, GF(p) ¤Î¾ì¹ç 6, GF(2^n) ¤Î¾ì¹ç 7 ¤È¤Ê¤ë.

Í­¸ÂÂΤθµ¤ÎÆþÎÏÊýË¡¤Ï, Í­¸ÂÂΤμïÎà¤Ë¤è¤êÍÍ¡¹¤Ç¤¢¤ë. GF(p) ¤Î¾ì¹ç, simp_ff() ¤Ë¤è¤ë.

[0] P=pari(nextprime,2^50);
1125899906842679
[1] setmod_ff(P);
1125899906842679
[2] A=simp_ff(2^100);
3025
[3] ntype(@@);
6

¤Þ¤¿, GF(2^n) ¤Î¾ì¹ç¤¤¤¯¤Ä¤«¤ÎÊýË¡¤¬¤¢¤ë.

[0] setmod_ff(x^50+x^4+x^3+x^2+1);
x^50+x^4+x^3+x^2+1
[1] A=@;
(@)
[2] ptogf2n(x^50+1);
(@^50+1)
[3] simp_ff(@@);
(@^4+@^3+@^2)
[4] ntogf2n(2^10-1);
(@^9+@^8+@^7+@^6+@^5+@^4+@^3+@^2+@+1)

Í­¸ÂÂΤθµ¤Ï¿ô¤Ç¤¢¤ê, Âα黻¤¬²Äǽ¤Ç¤¢¤ë. @ ¤Ï GF(2^n) ¤Î, GF(2)¾å¤ÎÀ¸À®¸µ¤Ç¤¢¤ë. ¾Ü¤·¤¯¤Ï See section ¿ô¤Î·¿.


Go to the first, previous, next, last section, table of contents.