\mnb150ÿ{\rtf1\ansi\deff0\deftab720{\fonttbl{\f0\fswiss MS Sans Serif;}{\f1\froman\fcharset2 Symbol;}{\f2\fswiss\fprq2 System;}{\f3\fmodern\fprq1 Courier New;}} {\colortbl\red0\green0\blue0;\red255\green0\blue0;\red0\green0\blue255;} \deflang1031\pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f3\fs22\cf1 {\pntext\f1\'b7\tab}reset(): \par {\pntext\f1\'b7\tab}F2:=Dom::GaloisField(2): \par \pard\li600\ri1\fi-300\plain\f3\fs22\cf1 F256:=Dom::GaloisField(2,8,x^8+x^4+x^3+x+1): \par R:=Dom::AlgebraicExtension( F2, x^8+1 ): \par // The definition of R is illegal since x^8+1 is not irreducible \par // but maybe it works for our purpose... [It does!] \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f3\fs22\cf1 {\pntext\f1\'b7\tab}// add missing features: \par \pard\li600\ri1\fi-300\plain\f3\fs22\cf1 F256::element:=proc(n) \par local N,i; \par begin \par N:=numlib::g_adic(n mod F256::size,F256::characteristic); \par _plus( F256(N[i]) * F256(F256::variable)^(i-1) $ i=1..nops(N) ) \par end_proc: \par R::element:=proc(n) \par local N,i; \par begin \par N:=numlib::g_adic(n mod 256,R::characteristic); \par _plus( R(N[i]) * R(R::variable)^(i-1) $ i=1..nops(N) ) \par end_proc: \par R::elementNumber:=proc(n) \par begin \par evalp(mapcoeffs( \par subsop(extop(n,1),3=Expr), \par _mod, \par R::characteristic ), \par R::variable = R::characteristic); \par end_proc: \par //random(0..255)(); F256::element(%); F256::elementNumber(%); \par //random(0..255)(); R::element(%); R::elementNumber(%); \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f3\fs22\cf1 {\pntext\f1\'b7\tab}F256(x^3+x); \par \pard\li50\ri6\plain\f3\fs22\cf2\protect {\pict\wmetafile8\picw1349\pich907\picwgoal764\pichgoal514 010009000003200200000B001C0000000000050000000B0200000000050000000C028B03450503 0000001E00030000001E00050000000C020202FD02050000000B020000000014000000FF060000 0600F602000024000100020000800080FF7FFF7F02000080FF7F0080FF7F0200040000002D0100 0004000000F001000008000000FA0200000000000000000000040000002D01000007000000FC02 0000000000000000040000002D0101001C000000FB0210FF000000000000900100000001070000 00417269616C000000DF0C0AB114ED1200D89FF177E19FF1772020F377FF11666B040000002D01 020005000000020101000000050000000102FFFFFF00050000002E011800000005000000090200 00000004000000080100001C000000FB0210FF0000000000009001000000010700000054696D65 73204E657720526F6D616E00D89FF177E19FF1772020F377FF11666B040000002D0103000B0000 0026060F000C004D6174685479706500007B001C000000FB0210FF000000000000900101000001 0700000054696D6573204E657720526F6D616E00D89FF177E19FF1772020F377FF11666B040000 002D0104001C000000FB0256FF0000000000009001000000010700000054696D6573204E657720 526F6D616E00D89FF177E19FF1772020F377FF11666B040000002D010500040000002D0104001C 000000FB0210FF0000000000009001000000020700000053796D626F6C00000D120ABC14ED1200 D89FF177E19FF1772020F377FF11666B040000002D0106001C000000FB0210FF00000000000090 01000000020700000053796D626F6C00004B120A3014ED1200D89FF177E19FF1772020F377FF11 666B040000002D0107001C000000FB0210FF0000000000009001000000020700000054696D6573 204E657720526F6D616E00D89FF177E19FF1772020F377FF11666B040000002D01080004000000 2D0103000500000009020000FF00040000002D0104000700000021050100780068016B00040000 002D01050007000000210501003300EC00D600040000002D010600040000002D01070007000000 210501002B00680167011C000000FB0210FF0000000000009001010000020700000054696D6573 204E657720526F6D616E00D89FF177E19FF1772020F377FF11666B040000002D01090004000000 2D0104000700000021050100780068012E0208000000FA0200000000000000000000040000002D 010A0004000000F001000007000000FC020000FFFFFF000000040000002D01000004000000F001 01001C000000FB021000070000000000BC02000000000102022253797374656D000037120A3214 ED1200D89FF177E19FF1772020F377FF11666B040000002D010100040000002701FFFF04000000 F001020004000000F001030004000000F001040004000000F001050004000000F0010600040000 00F001070004000000F001080004000000F0010900040000002701FFFF030000000000 }\plain\f3\fs22\cf2\protect \par \pard\li50\ri2\plain\f3\fs22\cf2\protect \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f3\fs22\cf1 {\pntext\f1\'b7\tab}F256::element(17); \par \pard\li50\ri6\plain\f3\fs22\cf2\protect {\pict\wmetafile8\picw1360\pich903\picwgoal771\pichgoal511 010009000003000200000A001C0000000000050000000B0200000000050000000C028703500503 0000001E00030000001E00050000000C0200020303050000000B020000000014000000FF060000 0600F602000024000100020000800080FF7FFF7F02000080FF7F0080FF7F0200040000002D0100 0004000000F001000008000000FA0200000000000000000000040000002D01000007000000FC02 0000000000000000040000002D0101001C000000FB0210FF000000000000900100000001070000 00417269616C000000FF110A6C14ED1200D89FF177E19FF1772020F377C91466B8040000002D01 020005000000020101000000050000000102FFFFFF00050000002E011800000005000000090200 00000004000000080100001C000000FB0210FF0000000000009001000000010700000054696D65 73204E657720526F6D616E00D89FF177E19FF1772020F377C91466B8040000002D0103000B0000 0026060F000C004D6174685479706500007B001C000000FB0210FF000000000000900101000001 0700000054696D6573204E657720526F6D616E00D89FF177E19FF1772020F377C91466B8040000 002D0104001C000000FB0256FF0000000000009001000000010700000054696D6573204E657720 526F6D616E00D89FF177E19FF1772020F377C91466B8040000002D010500040000002D0103001C 000000FB0210FF0000000000009001000000020700000053796D626F6C000011120AB914ED1200 D89FF177E19FF1772020F377C91466B8040000002D0106001C000000FB0210FF00000000000090 01000000020700000053796D626F6C00006D130AFF14ED1200D89FF177E19FF1772020F377C914 66B8040000002D0107001C000000FB0210FF0000000000009001000000020700000054696D6573 204E657720526F6D616E00D89FF177E19FF1772020F377C91466B8040000002D01080004000000 2D0103000500000009020000FF00040000002D0104000700000021050100780066016B00040000 002D01050007000000210501003400EC00D600040000002D010600040000002D01070007000000 210501002B0066016701040000002D010800040000002D01030007000000210501003100660127 0208000000FA0200000000000000000000040000002D01090004000000F001000007000000FC02 0000FFFFFF000000040000002D01000004000000F00101001C000000FB021000070000000000BC 02000000000102022253797374656D0000DF0C0AB214ED1200D89FF177E19FF1772020F377C914 66B8040000002D010100040000002701FFFF04000000F001020004000000F001030004000000F0 01040004000000F001050004000000F001060004000000F001070004000000F001080004000000 2701FFFF030000000000 }\plain\f3\fs22\cf2\protect \par \pard\li50\ri2\plain\f3\fs22\cf2\protect \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f3\fs22\cf1 {\pntext\f1\'b7\tab}F256::elementNumber( F256(x^3+x) ); \par \pard\li50\ri6\plain\f3\fs22\cf2\protect {\pict\wmetafile8\picw776\pich827\picwgoal439\pichgoal468 0100090000031E01000005001C0000000000050000000B0200000000050000000C023B03080303 0000001E00030000001E00050000000C02D501B801050000000B020000000014000000FF060000 0600F602000024000100020000800080FF7FFF7F02000080FF7F0080FF7F0200040000002D0100 0004000000F001000008000000FA0200000000000000000000040000002D01000007000000FC02 0000000000000000040000002D0101001C000000FB0210FF000000000000900100000001070000 00417269616C000000C9140AB914ED1200D89FF177E19FF1772020F377010E660F040000002D01 020005000000020101000000050000000102FFFFFF00050000002E011800000005000000090200 00000004000000080100001C000000FB0210FF0000000000009001000000010700000054696D65 73204E657720526F6D616E00D89FF177E19FF1772020F377010E660F040000002D0103000B0000 0026060F000C004D6174685479706500007B000500000009020000FF0007000000210501003100 3B016400070000002105010030003B01DC0008000000FA0200000000000000000000040000002D 01040004000000F001000007000000FC020000FFFFFF000000040000002D01000004000000F001 01001C000000FB021000070000000000BC02000000000102022253797374656D000011120ABA14 ED1200D89FF177E19FF1772020F377010E660F040000002D010100040000002701FFFF04000000 F001020004000000F0010300040000002701FFFF030000000000 }\plain\f3\fs22\cf2\protect \par \pard\li50\ri2\plain\f3\fs22\cf2\protect \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f3\fs22\cf1 {\pntext\f1\'b7\tab} \par }