{VERSION 7 1 "Linux" "7.1" } {USTYLETAB {PSTYLE "Ordered List 5" -1 200 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 144 2 0 2 2 -1 1 } {PSTYLE "Heading 4" -1 20 1 {CSTYLE "" -1 -1 "MS Serif" 1 12 0 0 0 1 1 2 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Text Output " -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 255 1 2 2 2 2 2 1 3 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered List 1" -1 201 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Bullet Item" -1 15 1 {CSTYLE "" -1 -1 "Tim es" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 } {PSTYLE "Author" -1 19 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 8 8 2 0 2 0 2 2 -1 1 }{PSTYLE "Dash Item" -1 16 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 3" -1 5 1 {CSTYLE "" -1 -1 "MS S erif" 1 14 0 0 0 1 1 1 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 } {PSTYLE "Diagnostic" -1 9 1 {CSTYLE "" -1 -1 "Courier" 1 12 40 120 40 1 2 2 2 2 2 1 2 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered \+ List 4" -1 202 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 108 2 0 2 2 -1 1 }{PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "List Item" -1 14 1 {CSTYLE "" -1 -1 "Times " 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 } {PSTYLE "Line Printed Output" -1 6 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 255 1 2 2 2 2 2 1 2 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "H eading 2" -1 4 1 {CSTYLE "" -1 -1 "MS Serif" 1 16 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }1 1 0 0 8 2 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered List 3" -1 203 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 72 2 0 2 2 -1 1 }{PSTYLE "Error" -1 8 1 {CSTYLE "" -1 -1 "Courie r" 1 12 255 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Maple Plot" -1 13 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Warning" -1 7 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 "MS Serif" 1 18 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }1 1 0 0 8 4 2 0 2 0 2 2 -1 1 }{PSTYLE "Title" -1 18 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }3 1 0 0 12 12 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered Li st 2" -1 204 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 36 2 0 2 2 -1 1 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{CSTYLE "Equation Label" -1 200 "Courier" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Text" -1 201 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Page Number" -1 33 "Times" 1 10 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Maple Input" -1 0 "Courier" 1 12 255 0 0 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "2D Output" -1 20 "Times" 1 12 0 0 255 1 2 2 2 2 2 1 0 0 0 1 }{CSTYLE "Dictionary Hyperlink" -1 45 "MS Serif" 1 12 147 0 15 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "2D Input" -1 19 "Times" 1 12 0 0 0 1 2 2 2 2 1 2 0 0 0 1 }{CSTYLE "Maple Input Placeholder" -1 202 "Couri er" 1 12 200 0 200 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Time s" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Hyperlink" -1 17 "MS Ser if" 1 12 0 128 128 1 2 2 1 2 2 2 0 0 0 1 }} {SECT 0 {EXCHG {PARA 18 "" 0 "" {TEXT 203 38 "Bevezet\303\251s a matem atik\303\241ba" }}}{EXCHG {PARA 19 "" 0 "" {TEXT 204 18 "J\303\241rai \+ Antal" }}}{EXCHG {PARA 19 "" 0 "" {TEXT 201 69 "Ezek a programok csak \+ szeml\303\251ltet\303\251sre szolg\303\241lnak." }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 11 "1. Halmazok" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 35 "2. Term\303\251s zetes sz\303\241mok" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 53 "3. A sz\303\241mfogalom b\305\221v\303\2 55t\303\251se" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}} {SECT 1 {PARA 3 "" 0 "" {TEXT 205 24 "4. V\303\251ges halmazok" }} {EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 27 "5. V\303\251gtelen halmazok" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 28 "6 . Sz\303\241melm\303\251let" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 28 "7. Gr\303\241felm\30 3\251let" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 10 "8. Algebra" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 3 "" 0 "" {TEXT 205 24 "9. K \303\263dol\303\241s" }}{SECT 0 {PARA 4 "" 0 "" {TEXT 206 63 "9.1. Kom munik\303\241ci\303\263 \303\251s k\303\263dol\303\241s" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart ;" }}}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 54 "9.1.1. Inform\303\241ci\303\263, bit, entr\303\263pia." }} {PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "H:=proc(F::list(positive),r::positive) local i,s,h; s:=0; h:=0; \n" }{MPLTEXT 1 0 36 "for i to nops(F) do s:=s+F[i]; od;\n" }{MPLTEXT 1 0 53 "for i to nops(F) do h:=h-log[r](F[i]/s)*F[i]/s; od;\n" } {MPLTEXT 1 0 9 "h; end;\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 35 "H([1 ,1],2); H([1,3],2); evalf(%);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$' I\"FG6\"-I%listG%*protectedG6#I)positiveGF)'I\"rGF&F+6%I\"iGF&I\"sGF&I \"hGF&F&F&C'>F0\"\"!>F1F4?(F/\"\"\"F7-I%nopsGF)6#F%I%trueGF)>F0,&F0F7& F%6#F/F7?(F/F7F7F8F;>F1,&F1F7*(-&I$logGF&6#F-6#*&F>F7F0!\"\"F7F>F7F0FJ FJF1F&F&F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&#\"\"\"\"\"#F$*(#\"\"$\"\"%F$-I#lnG6$%*protectedGI(_sy slibG6\"6#F'F$-F+6#F%!\"\"F3" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+X7y7 \")!#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "with(StringTools) ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "7juI)AnagramsG6\"I'AndMapGF$I2Appro ximateSearchGF$I5ApproximateSearchAllGF$I/ArithmeticMeanGF$I'BorderGF$ I,BorderArrayGF$I-BorderLengthGF$I*CamelCaseGF$I+CapitalizeGF$I)CaseJo inGF$I*CaseSplitGF$I'CenterGF$I'CentreGF$I%CharGF$I5CharacterFrequenci esGF$I-CharacterMapGF$I&ChompGF$I%ChopGF$I-CommonPrefixGF$I-CommonSuff ixGF$I(CompareGF$I*CompareCIGF$I:CountCharacterOccurrencesGF$I'DecodeG F$I'DeleteGF$I%DropGF$I-EditDistanceGF$I'EncodeGF$I(EntropyGF$I'Escape GF$I)ExchangeGF$I5ExpandCharacterClassGF$I+ExpandTabsGF$I(ExplodeGF$I& FenceGF$I*FibonacciGF$I%FillGF$I.FirstFromLeftGF$I/FirstFromRightGF$I. FormatMessageGF$I+FormatTimeGF$I.FromByteArrayGF$I)GenerateGF$I&GroupG F$I0HammingDistanceGF$I.HammingSearchGF$I1HammingSearchAllGF$I)HasASCI IGF$I)HasAlphaGF$I0HasAlphaNumericGF$I/HasBinaryDigitGF$I4HasControlCh aracterGF$I)HasDigitGF$I+HasGraphicGF$I,HasHexDigitGF$I.HasIdentifierG F$I/HasIdentifier1GF$I)HasLowerGF$I.HasOctalDigitGF$I-HasPrintableGF$I /HasPunctuationGF$I)HasSpaceGF$I)HasUpperGF$I)HasVowelGF$I%HashGF$I(Im plodeGF$I'InsertGF$I%IotaGF$I(IsASCIIGF$I(IsAlphaGF$I/IsAlphaNumericGF $I*IsAnagramGF$I+IsBalancedGF$I.IsBinaryDigitGF$I,IsConjugateGF$I3IsCo ntrolCharacterGF$I(IsDigitGF$I*IsGraphicGF$I+IsHexDigitGF$I-IsIdentifi erGF$I.IsIdentifier1GF$I(IsLowerGF$I,IsMonotonicGF$I-IsOctalDigitGF$I- IsPalindromeGF$I)IsPeriodGF$I.IsPermutationGF$I)IsPrefixGF$I,IsPrimiti veGF$I,IsPrintableGF$I.IsPunctuationGF$I)IsSortedGF$I(IsSpaceGF$I.IsSu bSequenceGF$I)IsSuffixGF$I(IsUpperGF$I(IsVowelGF$I%JoinGF$I)LeftFoldGF $I7LeftRecursivePathOrderGF$I'LengthGF$I,LevenshteinGF$I)LexOrderGF$I9 LongestCommonSubSequenceGF$I7LongestCommonSubStringGF$I*LowerCaseGF$I. LyndonFactorsGF$I$MapGF$I(MaxCharGF$I " 0 "" {MPLTEXT 1 0 35 "Entropy(\"ab\"); Entropy(\"aaab\");" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"\"\"\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"3KG8f W7y7\")!#=" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}} {SECT 1 {PARA 5 "" 0 "" {TEXT 207 33 "*9.1.2. Seg\303\251dt\303\251tel ." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 20 "9.1.3. T\303\251tel." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "->9 .1.4. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "->9.1.5. Fela dat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "->9.1.6. Feladat." }}} {SECT 1 {PARA 5 "" 0 "" {TEXT 207 29 "9.1.7. K\303\263dol\303\241s." } }{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 206 44 "9.2. Gazdas\303\241gos k\303\263dol\303\241s" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 54 "9.2.1. Bet\305\261nk \303\251nti k\303\263dol\303\241s." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 20 "9.2.2. P\303 \251lda." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "M:=table():\n" }{MPLTEXT 1 0 74 "M[\"a\"]:=\"10111\": M[\"b\"]:=\"111010101\": M[\"c\"]:=\"11101011101\":\n" }{MPLTEXT 1 0 66 "M[\"d\"]:=\"1110101\": M[\"e\"]:=\"1\": M[\"f\"]:=\"101011101\":\n " }{MPLTEXT 1 0 68 "M[\"g\"]:=\"111011101\": M[\"h\"]:=\"1010101\": M[ \"i\"]:=\"101\":\n" }{MPLTEXT 1 0 80 "M[\"j\"]:=\"1011101110111\": M[ \"k\"]:=\"111010111\": M[\"l\"]:=\"101110101\":\n" }{MPLTEXT 1 0 72 "M [\"m\"]:=\"1110111\": M[\"n\"]:=\"11101\": M[\"o\"]:=\"11101110111\": \n" }{MPLTEXT 1 0 80 "M[\"p\"]:=\"10111011101\": M[\"q\"]:=\"111011101 0111\": M[\"r\"]:=\"1011101\":\n" }{MPLTEXT 1 0 64 "M[\"s\"]:=\"10101 \": M[\"t\"]:=\"111\": M[\"u\"]:=\"1010111\":\n" }{MPLTEXT 1 0 78 "M[ \"v\"]:=\"101010111\": M[\"w\"]:=\"101110111\": M[\"x\"]:=\"1110101011 1\":\n" }{MPLTEXT 1 0 73 "M[\"y\"]:=\"1110101110111\": M[\"z\"]:=\"111 01110101\": M[\" \"]:=\"\":\n" }{MPLTEXT 1 0 69 "M[\"0\"]:=\"111011101 1101110111\": M[\"1\"]:=\"10111011101110111\":\n" }{MPLTEXT 1 0 61 "M[ \"2\"]:=\"101011101110111\": M[\"3\"]:=\"1010101110111\":\n" }{MPLTEXT 1 0 80 "M[\"4\"]:=\"10101010111\": M[\"5\"]:=\"101010101\": M[\"6\"]: =\"11101010101\":\n" }{MPLTEXT 1 0 61 "M[\"7\"]:=\"1110111010101\": M[ \"8\"]:=\"111011101110101\":\n" }{MPLTEXT 1 0 67 "M[\"9\"]:=\"11101110 111011101\": M[\".\"]:=\"10111010111010111\":\n" }{MPLTEXT 1 0 67 "M[ \",\"]:=\"1110111010101110111\": M[\"?\"]:=\"101011101110101\":\n" } {MPLTEXT 1 0 65 "M[\":\"]:=\"11101110111010101\": M[\"-\"]:=\"11101010 1010111\":\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "ASCII2Morse :=proc(s::string) local i,m; m:=\"\";\n" }{MPLTEXT 1 0 61 "for i to le ngth(s) do m:=cat(m,M[s[i]],\"000\") od; m; end;\n" }{MPLTEXT 1 0 2 " \n" }{MPLTEXT 1 0 46 "ASCII2Morse(\"ad \"); ASCII2Morse(\"emi \");\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#'I\"sG6\"I'stringG%*protectedG6$I \"iGF&I\"mGF&F&F&C%>F+Q!F&?(F*\"\"\"F0-I'lengthGF(6#F%I%trueGF(>F+-I$c atGF(6%F+&I\"MGF&6#&F%6#F*Q$000F&F+F&F&F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q61011100011101010000006\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q8100011101110001010000006\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "addcomma:=proc(A,M,Ct,p) local i;\n" }{MPLTEXT 1 0 55 "for i \+ to length(A) do Ct[A[i]]:=cat(M[A[i]],p) od; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&I\"AG6\"I\"MGF%I#CtGF%I\"pGF%6#I\"iGF%F%F%?(F*\"\"\"F ,-I'lengthG%*protectedG6#F$I%trueGF/>&F'6#&F$F)-I$catGF/6$&F&F4F(F%F%F %" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "Ct:=table(): A:=\"abcd efghijklmnopqrstuvwxyz 0123456789.,?:-\";\n" }{MPLTEXT 1 0 25 "addcomm a(A,M,Ct,\"000\"):" }}{PARA 11 "" 1 "" {XPPMATH 20 "QKabcdefghijklmnop qrstuvwxyz~0123456789.,?:-6\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "Ct[\"m\"];" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q+11101110006\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "code:=proc(m,Ct) local i,c; \+ c:=\"\";\n" }{MPLTEXT 1 0 49 "for i to length(m) do c:=cat(c,Ct[m[i]]) od; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"mG6\"I#CtGF%6$I\"iGF %I\"cGF%F%F%C$>F)Q!F%?(F(\"\"\"F.-I'lengthG%*protectedG6#F$I%trueGF1>F )-I$catGF16$F)&F&6#&F$6#F(F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "c:=code(\"ad emi\",Ct);" }}{PARA 11 "" 1 "" {XPPMATH 20 "QJ10 1110001110101000000100011101110001010006\"" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 30 "9.2. 3. Prefix, szuffix, infix." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 75 "IsPrefix(\"a\",\"abc\"); IsPrefix( \"\",\"abc\"); IsPrefix(\"abc\",\"abc\");" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*protectedG" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%tr ueG%*protectedG" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*protectedG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "IsSuffix(\"c\",\"abc\"); \+ IsSuffix(\"b\",\"abc\");" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*pro tectedG" }}{PARA 11 "" 1 "" {XPPMATH 20 "I&falseG%*protectedG" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 81 "HammingSearch(\"xy\",\"axybc xyde\",0); HammingSearch(\"xyz\",\"axybcxyzde\",0);\n" }{MPLTEXT 1 0 40 "HammingSearch(\"xyz\",\"axybcxyzde\",1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"#" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 20 "9.2.4. K\303\263dfa. " }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 77 "9.2.5. Prefix k\303\263d, e gyenletes k\303\263d, vessz\305\221s k\303\263d.\n" }}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 48 "isprefixcode:=proc(A,Ct) local f,i,j; f:=tru e;\n" }{MPLTEXT 1 0 54 "for i to length(A) do for j from i+1 to length (A) do\n" }{MPLTEXT 1 0 65 " if IsPrefix(Ct[A[i]],Ct[A[j]]) or IsPref ix(Ct[A[j]],Ct[A[i]])\n" }{MPLTEXT 1 0 21 " then f:=false fi;\n" } {MPLTEXT 1 0 15 "od; od; f; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$ I\"AG6\"I#CtGF%6%I\"fGF%I\"iGF%I\"jGF%F%F%C%>F(I%trueG%*protectedG?(F) \"\"\"F0-I'lengthGF.6#F$F-?(F*,&F)F0F0F0F0F1F-@$5-_I,StringToolsG6$F.I (_syslibGF%I)IsPrefixGF%6$&F&6#&F$6#F)&F&6#&F$6#F*-F96$FCF?>F(I&falseG F.F(F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "isprefixcode( A,Ct);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*protectedG" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 72 "decodewithcodetable:=proc(c, A,Ct) local i,j,a,m,cc; m:=\"\"; cc:=\"\";\n" }{MPLTEXT 1 0 47 "for i \+ while i<=length(c) do cc:=cat(cc,c[i]);\n" }{MPLTEXT 1 0 34 " for j t o length(A) do a:=A[j];\n" }{MPLTEXT 1 0 59 " if Ct[a]=cc then m:=c at(m,a); cc:=\"\"; break fi; od;\n" }{MPLTEXT 1 0 45 "od; if length(cc )>0 then FAIL else m fi; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\" cG6\"I\"AGF%I#CtGF%6'I\"iGF%I\"jGF%I\"aGF%I\"mGF%I#ccGF%F%F%C&>F,Q!F%> F-F0?(F)\"\"\"F3F%1F)-I'lengthG%*protectedG6#F$C$>F--I$catGF76$F-&F$6# F)?(F*F3F3-F66#F&I%trueGF7C$>F+&F&6#F*@$/&F'6#F+F-C%>F,-F<6$F,F+F1[@%2 \"\"!-F66#F-I%FAILGF7F,F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "decodewithcodetable(c,A,Ct);" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q' ad~emi6\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "makedecodetabl e:=proc(A,Ct,Dt) local i;\n" }{MPLTEXT 1 0 49 "for i to length(A) do D t[Ct[A[i]]]:=A[i] od; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"AG6 \"I#CtGF%I#DtGF%6#I\"iGF%F%F%?(F)\"\"\"F+-I'lengthG%*protectedG6#F$I%t rueGF.>&F'6#&F&6#&F$F(F6F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "Dt:=table(): makedecodetable(A,Ct,Dt): print(Dt);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I&TABLEG%*protectedG6#7L/Q7111011101010111011100 06\"Q\",F)/Q/11101110101000F)Q\"zF)/Q511101110111010101000F)Q\":F)/Q+1 110101000F)Q\"dF)/Q510111010111010111000F)Q\".F)/Q-111010101000F)Q\"bF )/Q3101011101110101000F)Q\"?F)/Q'111000F)Q\"tF)/Q/11101011101000F)Q\"c F)/Q-111010111000F)Q\"kF)/Q11110111010101000F)Q\"7F)/Q+1110111000F)Q\" mF)/Q-101010111000F)Q\"vF)/Q3111011101110101000F)Q\"8F)/Q-101110111000 F)Q\"wF)/Q/10101010111000F)Q\"4F)/Q511101110111011101000F)Q\"9F)/Q1101 1101110111000F)Q\"jF)/Q+1010101000F)Q\"hF)/Q)10101000F)Q\"sF)/Q7111011 1011101110111000F)Q\"0F)/Q11110101110111000F)Q\"yF)/Q/11101110111000F) Q\"oF)/Q$000F)Q\"~F)/Q%1000F)Q\"eF)/Q+1010111000F)Q\"uF)/Q-11101110100 0F)Q\"gF)/Q11110111010111000F)Q\"qF)/Q510111011101110111000F)Q\"1F)/Q- 101010101000F)Q\"5F)/Q/11101010111000F)Q\"xF)/Q)11101000F)Q\"nF)/Q1101 0101110111000F)Q\"3F)/Q/11101010101000F)Q\"6F)/Q)10111000F)Q\"aF)/Q-10 1110101000F)Q\"lF)/Q'101000F)Q\"iF)/Q3101011101110111000F)Q\"2F)/Q/101 11011101000F)Q\"pF)/Q3111010101010111000F)Q\"-F)/Q-101011101000F)Q\"fF )/Q+1011101000F)Q\"rF)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "d ecode:=proc(c::string,Dt::table) local i,m,cc; m:=\"\"; cc:=\"\";\n" } {MPLTEXT 1 0 47 "for i while i<=length(c) do cc:=cat(cc,c[i]);\n" } {MPLTEXT 1 0 63 " if type(Dt[cc],string) then m:=cat(m,Dt[cc]); cc:= \"\"; fi;\n" }{MPLTEXT 1 0 45 "od; if length(cc)>0 then FAIL else m fi ; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$'I\"cG6\"I'stringG%*protec tedG'I#DtGF&I&tableGF(6%I\"iGF&I\"mGF&I#ccGF&F&F&C&>F.Q!F&>F/F2?(F-\" \"\"F5F&1F--I'lengthGF(6#F%C$>F/-I$catGF(6$F/&F%6#F-@$-I%typeGF(6$&F*6 #F/F'C$>F.-F=6$F.FEF3@%2\"\"!-F8FFI%FAILGF(F.F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "decode(c,Dt);" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q'ad~emi6\"" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "% #%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 28 "9.2.6. P\303\251ld\303 \241k." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 17 "->9.2.7. Feladat." }} }{SECT 1 {PARA 5 "" 0 "" {TEXT 207 15 "9.2.8. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 7 "9.2.9. " }{TEXT 207 52 "T\303\251tel: McM illan-egyenl\305\221tlens\303\251g." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 43 "mcmillan:=proc(L::list(pos int),r::posint)\n" }{MPLTEXT 1 0 36 "convert(map(x->r^(-x),L),`+`) end ;\n" }{MPLTEXT 1 0 20 "mcmillan([6,7,5],2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$'I\"LG6\"-I%listG%*protectedG6#I'posintGF)'I\"rGF&F+F &F&F&-I(convertGF)6$-I$mapGF)6$f*6#I\"xGF&F&6$I)operatorGF&I&arrowGF&F &)F-,$F6!\"\"F&F&6$F-9%F%I\"+GF)F&F&F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "#\"\"(\"$G\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "shannonco de:=proc(B::string,L::list(posint)) local i,s,c,r,C,LL;\n" }{MPLTEXT 1 0 28 "r:=length(B); s:=0; C:=[];\n" }{MPLTEXT 1 0 60 "LL:=[[L[i],i]$ i=1..nops(L)]; LL:=sort(%,(x,y)->x[1]B[x+1],c); c:=cat(\"\",op(c));\n" }{MPLTEXT 1 0 59 " c:= Reverse(c); c:=cat(Fill(B[1],LL[i][1]-length(c)),c);\n" }{MPLTEXT 1 0 47 " C:=[op(C),[c,LL[i][2]]]; s:=s+1/r^LL[i][1];\n" }{MPLTEXT 1 0 55 "od; C:=sort(C,(x,y)->x[2]x[1],C); end;\n" }{MPLTEXT 1 0 4 " \n" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$'I\"BG6\"I'stringG%*pro tectedG'I\"LGF&-I%listGF(6#I'posintGF(6(I\"iGF&I\"sGF&I\"cGF&I\"rGF&I \"CGF&I#LLGF&F&F&C*>F3-I'lengthGF(6#F%>F1\"\"!>F47\">F57#-I\"$GF(6$7$& F*6#F0F0/F0;\"\"\"-I%nopsGF(6#F*>F5-I%sortGF(6$I\"%GF&f*6$I\"xGF&I\"yG F&F&6$I)operatorGF&I&arrowGF&F&2&FT6#FI&FUFenF&F&F&?(F0FIFI-FK6#F5I%tr ueGF(C)>F2-I(convertGF(6%*&F1FI)F3&&F5FFFenFII%baseGF&F3>F2-I$mapGF(6$ f*6#FTF&FVF&&F%6#,&FTFIFIFIF&F&6$F%9$F2>F2-I$catGF(6$Q!F&-I#opGF(6#F2> F2-_I,StringToolsG6$F(I(_syslibGF&I(ReverseGF&Fgp>F2-Fbp6$-_F[qI%FillG F&6$&F%Fen,&FboFI-F9Fgp!\"\"F2>F47$-Ffp6#F47$F2&Fco6#\"\"#>F1,&F1FI*$F aoFiqFI>F4-FO6$F4f*FSF&FVF&2&FTF`r&FUF`rF&F&F&-Fgo6$f*FjoF&FVF&FZF&F&F &F4F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "L:=[6,7,5]; B: =\"ab\"; shannoncode(B,L);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"\"'\" \"(\"\"&" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q#ab6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%Q'aaaaba6\"Q(aaaabbaF$Q&aaaaaF$" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 18 " ->9.2.10. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.2.11. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.2.12. Feladat. " }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 16 "9.2.13. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 86 "9.2.14. \303\201tlagos sz\303\263hossz \303\272s\303\241g, optim\303\241lis k\303\263d." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "meanlength: =proc(F::list(nonnegative),L::list(posint))\n" }{MPLTEXT 1 0 67 "local i,s,m; if nops(F)<>nops(L) then return FAIL fi; s:=0; m:=0;\n" } {MPLTEXT 1 0 63 "for i to nops(F) do s:=s+F[i] od; if s=0 then return \+ FAIL fi;\n" }{MPLTEXT 1 0 48 "for i to nops(F) do m:=m+L[i]*F[i] od; m /s; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$'I\"FG6\"-I%listG%*prote ctedG6#I,nonnegativeGF)'I\"LGF&-F(6#I'posintGF)6%I\"iGF&I\"sGF&I\"mGF& F&F&C)@$0-I%nopsGF)6#F%-F96#F-OI%FAILGF)>F3\"\"!>F4F@?(F2\"\"\"FCF8I%t rueGF)>F3,&F3FC&F%6#F2FC@$/F3F@F=?(F2FCFCF8FD>F4,&F4FC*&&F-FHFCFGFCFC* &F4FCF3!\"\"F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "meanl ength([1,1,2],[6,7,5]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "#\"#B\"\"%" } }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 5 " " 0 "" {TEXT 207 58 "9.2.15. Shannon t\303\251tele zajmentes csatorn\3 03\241ra." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 64 "9.2.16. T\303\251tel: Shannon-k\303\26 3d l\303\251tez\303\251se." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "shannonlength:=proc(F::list(positiv e),r::posint)\n" }{MPLTEXT 1 0 58 "local i,j,s,L; s:=0; L:=[]; if r<=1 then return FAIL fi;\n" }{MPLTEXT 1 0 35 "for i to nops(F) do s:=s+F[ i] od;\n" }{MPLTEXT 1 0 65 "for i to nops(F) do for j while r^jF2\"\"!>F37\"@$1F- \"\"\"OI%FAILGF)?(F0F;F;-I%nopsGF)6#F%I%trueGF)>F2,&F2F;&F%6#F0F;?(F0F ;F;F?FBC$?(F1F;F;F&2)F-F1*&F2F;FE!\"\"F&>F37$-I#opGF)6#F3F1F3F&F&F&" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "F:=[1,1,2,2]; L:=shannonle ngth([1,1,2,2],4); shannoncode(\"0123\",%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"\"\"F#\"\"#F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"\" #F#\"\"\"F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&Q#216\"Q#20F$Q\"1F$Q\"0 F$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "H(F,4); evalf(%); mea nlength(F,L); evalf(%);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&*(#\"\"\"\" \"'F%-I#lnG6$%*protectedGI(_syslibG6\"6#F&F%-F(6#\"\"#!\"\"F%*(#F%\"\" $F%-F(6#F4F%F.F1F%" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+q\"z9f*!#5" }} {PARA 11 "" 1 "" {XPPMATH 20 "#\"\"%\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+LLLL8!\"*" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 71 "9.2.17. T\303\251tel : optim\303\241lis k\303\263d konstrukci\303\263ja." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 28 "9.2.18. Huffmann-k\303\263d." }}{PARA 0 "" 0 " " {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "huffmannl ength:=proc(F::list(nonnegative),r::posint)\n" }{MPLTEXT 1 0 53 "local i,l,h,rr,s,L,HH; if r<=1 then return FAIL fi;\n" }{MPLTEXT 1 0 48 "if nops(F)<=r then return [1$i=1..nops(F)] fi;\n" }{MPLTEXT 1 0 71 "L:=[ [F[i],0,i]$i=1..nops(F)]; HH:=heap[new]((x,y)->x[1]>=y[1],op(L));\n" } {MPLTEXT 1 0 32 "rr:=2+((nops(L)-2) mod (r-1));\n" }{MPLTEXT 1 0 4 "do \n" }{MPLTEXT 1 0 25 " h:=heap[extract](HH);\n" }{MPLTEXT 1 0 37 " i f heap[empty](HH) then break fi;\n" }{MPLTEXT 1 0 20 " s:=h[1]; L:=[h ];\n" }{MPLTEXT 1 0 76 " for i from 2 to rr do h:=heap[extract](HH); \+ L:=[op(L),h]; s:=s+h[1]; od;\n" }{MPLTEXT 1 0 36 " heap[insert]([s,1, L],HH); rr:=r;\n" }{MPLTEXT 1 0 5 "od;\n" }{MPLTEXT 1 0 49 "HH:=heap[n ew]((x,y)->x[1]<=y[1],[h[2],0,h[3]]);\n" }{MPLTEXT 1 0 4 "do\n" } {MPLTEXT 1 0 70 " h:=heap[extract](HH); if h[1]=0 then heap[insert](h ,HH); break fi;\n" }{MPLTEXT 1 0 23 " L:=h[3]; l:=h[2]+1;\n" } {MPLTEXT 1 0 65 " for i to nops(L) do heap[insert]([L[i][2],l,L[i][3] ],HH); od;\n" }{MPLTEXT 1 0 12 "od; L:=[];\n" }{MPLTEXT 1 0 30 "while \+ not heap[empty](HH) do\n" }{MPLTEXT 1 0 49 " h:=heap[extract](HH); L: =[op(L),[h[2],h[3]]];\n" }{MPLTEXT 1 0 52 "od; sort(L,(x,y)->x[2]x[1],%); end;\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$'I\"FG6 \"-I%listG%*protectedG6#I,nonnegativeGF)'I\"rGF&I'posintGF)6)I\"iGF&I \"lGF&I\"hGF&I#rrGF&I\"sGF&I\"LGF&I#HHGF&F&F&C.@$1F-\"\"\"OI%FAILGF)@$ 1-I%nopsGF)6#F%F-O7#-I\"$GF)6$F:/F0;F:F?>F57#-FE6$7%&F%6#F0\"\"!F0FG>F 6-&I%heapGF&6#I$newGF&6$f*6$I\"xGF&I\"yGF&F&6$I)operatorGF&I&arrowGF&F &1&Fen6#F:&FZF[oF&F&F&-I#opGF)6#F5>F3,&\"\"#F:-I$modGF&6$,&-F@F_oF:Fbo !\"\",&F-F:F:FhoF:?(F&F:F:F&I%trueGF)C)>F2-&FT6#I(extractGF&6#F6@$-&FT 6#I&emptyGF&Fbp[>F4&F2F[o>F57#F2?(F0FboF:F3F[pC%F]p>F57$F]oF2>F4,&F4F: FjpF:-&FT6#I'insertGF&6$7%F4F:F5F6>F3F->F6-FS6$f*FYF&FfnF&1F\\oFjnF&F& F&7%&F26#FboFP&F26#\"\"$?(F&F:F:F&F[pC'F]p@$/FjpFPC$-Fdq6$F2F6Fhp>F5Fb r>F1,&F`rF:F:F:?(F0F:F:FgoF[p-Fdq6$7%&&F5FOFarF1&FdsFcrF6>F57\"?(F&F:F :F&4FdpC$F]p>F57$F]o7$F`rFbr-I%sortGF)6$F5f*FYF&FfnF&2&FZFar&FenFarF&F &F&-I$mapGF)6$f*6#FZF&FfnF&F\\oF&F&F&I\"%GF&F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "F:=[1,1,2,2,3]; L:=huffmannlength(F,2);\n" }{MPLTEXT 1 0 38 "evalf(H(F,2)); evalf(meanlength(F,L));" }}{PARA 11 " " 1 "" {XPPMATH 20 "7'\"\"\"F#\"\"#F$\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "7'\"\"$F#\"\"#F$F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+C (fr>#!\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+AAAAA!\"*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 72 "huffmanncode:=proc(B::string,L::lis t(posint)) local i,j,l,ll,b,c,LL,C;\n" }{MPLTEXT 1 0 61 "LL:=[[L[i],i] $i=1..nops(L)]; LL:=sort(LL,(x,y)->x[1]length(B) do b[l]:=1; l:=l-1; b[l]:=b[l]+1; od;\n" }{MPLTEXT 1 0 54 " l:=LL[i][1]; while llx[2]x[ 1],%); end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$'I\"BG6\"I'stringG%*p rotectedG'I\"LGF&-I%listGF(6#I'posintGF(6*I\"iGF&I\"jGF&I\"lGF&I#llGF& I\"bGF&I\"cGF&I#LLGF&I\"CGF&F&F&C*>F67#-I\"$GF(6$7$&F*6#F0F0/F0;\"\"\" -I%nopsGF(6#F*>F6-I%sortGF(6$F6f*6$I\"xGF&I\"yGF&F&6$I)operatorGF&I&ar rowGF&F&2&FM6#FC&FNFTF&F&F&>F3FC>&F46#F3\"\"!>F77\"?(F0FCFC-FE6#F6I%tr ueGF(C*>F2F3>&F46#F2,&F^oFCFCFC?(F&FCFCF&2-I'lengthGF(6#F%F^oC%>F^oFC> F2,&F2FCFC!\"\"F]o>F2&&F6F@FT?(F&FCFCF&2F3F2C$>F3,&F3FCFCFC>FXFC>F5Q!F &?(F1FCFCF2Fjn>F5-I$catGF(6$F5&F%6#&F46#F1>F77$-I#opGF(6#F77$F5&F]p6# \"\"#-FI6$F7f*FLF&FOF&2&FMFfq&FNFfqF&F&F&-I$mapGF(6$f*6#FMF&FOF&FSF&F& F&I\"%GF&F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "huffmann code(\"ab\",L);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7'Q$bbb6\"Q$bbaF$Q#ba F$Q#abF$Q#aaF$" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}} {SECT 0 {PARA 5 "" 0 "" {TEXT 207 21 "9.2.19. P\303\251lda." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "F: =[17,2,13,2,1,31,2,17,6,9]; L:=huffmannlength(F,3);\n" }{MPLTEXT 1 0 65 "evalf(H(F,3)); evalf(meanlength(F,L)); huffmanncode(\"012\",L);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "7,\"#<\"\"#\"#8F$\"\"\"\"#JF$F#\"\"' \"\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "7,\"\"#\"\"$F#F$\"\"%\"\"\"F%F# F#F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+!fsns\"!\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"++++!z\"!\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "7,Q# 216\"Q$221F$Q#20F$Q$220F$Q%2221F$Q\"0F$Q%2220F$Q#12F$Q#11F$Q#10F$" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "L:=shannonlength(F,3); shann oncode(\"012\",L); evalf(meanlength(F,L));" }}{PARA 11 "" 1 "" {XPPMATH 20 "7,\"\"#\"\"%F#F$\"\"&F#F$F#\"\"$F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "7,Q#106\"Q%1122F$Q#02F$Q%1121F$Q&12000F$Q#01F$Q%1120F$Q#0 0F$Q$111F$Q$110F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "$\"+++++B!\"*" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 128 "F:=[1247,190,65,197,1407,78 ,326,165,444,105,541,605,352,638,683,96,0,367,600,761,226,199,9,1,261, 437]; L:=huffmannlength(F,2);\n" }{MPLTEXT 1 0 47 "huffmanncode(\"01\" ,L); evalf(meanlength(F,L));" }}{PARA 11 "" 1 "" {XPPMATH 20 "7<\"%Z7 \"$!>\"#l\"$(>\"%29\"#y\"$E$\"$l\"\"$W%\"$0\"\"$T&\"$0'\"$_$\"$Q'\"$$o \"#'*\"\"!\"$n$\"$+'\"$h(\"$E#\"$*>\"\"*\"\"\"\"$h#\"$P%" }}{PARA 11 " " 1 "" {XPPMATH 20 "7<\"\"$\"\"'\"\")F$F#\"\"(\"\"&F$\"\"%F&F(F(F'F(F( F&\"#5F'F(F(F'F$\"\"*F)F'F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "7 " 0 "" {MPLTEXT 1 0 65 "F:=map(x-> x+1,F); L:=shannonlength(F,2); shannoncode(\"01\",L);\n" }{MPLTEXT 1 0 38 "evalf(meanlength(F,L)); evalf(H(F,2));" }}{PARA 11 "" 1 "" {XPPMATH 20 "7<\"%[7\"$\">\"#m\"$)>\"%39\"#z\"$F$\"$m\"\"$X%\"$1\"\"$U &\"$1'\"$`$\"$R'\"$%o\"#(*\"\"\"\"$o$\"$,'\"$i(\"$F#\"$+#\"#5\"\"#\"$i #\"$Q%" }}{PARA 11 "" 1 "" {XPPMATH 20 "7<\"\"%\"\"'\"\")F$\"\"$\"\"( \"\"&F$F(F'F(F(F(F#F#F'\"#9F(F(F#F$F$\"#5\"#8F$F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "79.2.21. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 16 "9.2.22. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9 .2.23. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.2.24. Fel adat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 16 "9.2.25. Feladat." }}} {SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.2.26. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 16 "9.2.27. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.2.28. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 16 "9.2.29. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9 .2.30. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 82 "9.2.31. A k \303\263doland\303\263 \303\241b\303\251c\303\251 kiterjeszt\303\251se ." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.2.32. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.2.33. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 41 "9.2.34. Sz\303\263t\303\241rk\303\263dok." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 36 "*9.2.35. Futamk\303\263dol\303\241s." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 14 "*9.2.36. LZ77." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 24 "*9.2.37. A gzip parancs." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 26 "*9 .2.38. LZW-k\303\263dok." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "LZW:=proc(m,T,N) local i,n,alpha,be ta,gamma,L; n:=128; L:=[];\n" }{MPLTEXT 1 0 24 "for i from 0 to n-1 do \n" }{MPLTEXT 1 0 52 " T[convert([i],bytes)]:=cat(\"\",convert(i,hex) );\n" }{MPLTEXT 1 0 5 "od;\n" }{MPLTEXT 1 0 47 "if length(m)=0 then re turn L fi; alpha:=m[1];\n" }{MPLTEXT 1 0 30 "for i from 2 to length(m) do\n" }{MPLTEXT 1 0 39 " beta:=m[i]; gamma:=cat(alpha,beta);\n" } {MPLTEXT 1 0 56 " if type(T[gamma],string) then alpha:=gamma; next fi ;\n" }{MPLTEXT 1 0 63 " if nF*\"$G\">F/7\"?(F)\"\"!\"\"\" ,&F*F7F7!\"\"I%trueGF.>&F&6#-I(convertGF.6$7#F)I&bytesGF%-I$catGF.6$Q! F%-F?6$F)I$hexGF%@$/-I'lengthGF.6#F$F6OF/>F+&F$6#F7?(F)\"\"#F7FLF:C(>F ,&F$6#F)>F--FD6$F+F,@$-I%typeGF.6$&F&6#F-I'stringGF.C$>F+F-\\@$2F*F'C$ >Fjn-FD6$FF-F?6$F*FI>F*,&F*F7F7F7>F/7$-I#opGF.6#F/&F&6#F+>F+F,FjoF%F%F %" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "m:=\"GUGOGOGOGOL\"; Ct :=table(); L:=LZW(m,Ct,256);" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q,GUGOGO GOGOL6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"I&falseG%*protectedGE\\[ l!" }}{PARA 11 "" 1 "" {XPPMATH 20 "7*Q#476\"Q#55F$F#Q#4FF$Q#82F$Q#84F $F&Q#4CF$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "iLZW:=proc(L,T ,N) local i,j,m,n,alpha,beta,gamma; n:=128; m:=\"\";\n" }{MPLTEXT 1 0 24 "for i from 0 to n-1 do\n" }{MPLTEXT 1 0 52 " T[cat(\"\",convert(i ,hex))]:=convert([i],bytes);\n" }{MPLTEXT 1 0 5 "od;\n" }{MPLTEXT 1 0 54 "if nops(L)=0 then return m fi; j:=L[1]; alpha:=T[j];\n" }{MPLTEXT 1 0 28 "for i from 2 to nops(L) do\n" }{MPLTEXT 1 0 12 " j:=L[i];\n" }{MPLTEXT 1 0 29 " if type(T[j],string) then\n" }{MPLTEXT 1 0 33 " \+ beta:=T[j]; gamma:=beta[1];\n" }{MPLTEXT 1 0 76 " if nF,\"$G\">F+Q!F%?(F )\"\"!\"\"\",&F,F8F8!\"\"I%trueGF0>&F&6#-I$catGF06$F5-I(convertGF06$F) I$hexGF%-FC6$7#F)I&bytesGF%@$/-I%nopsGF06#F$F7OF+>F*&F$6#F8>F-&F&6#F*? (F)\"\"#F8FLF;C$>F*&F$6#F)@%-I%typeGF06$FTI'stringGF0C'>F.FT>F/&F.FR@$ 2F,F'C$>&F&6#-F@6$F5-FC6$F,FE-F@6$F-F/>F,,&F,F8F8F8>F+-F@6$F+F->F-F.C( >F/&F-FR>F.Fio>FcoF.F[pF]pF`pF]pF%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "Dt:=table(); iLZW(L,Ct,256);" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"I&falseG%*protectedGE\\[l!" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q,GUGOGOGOGOL6\"" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 42 "*9.2.39. P\303\25 1lda az LZW-k\303\263dra." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 28 "*9 .2.40. A compress parancs." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 37 "* 9.2.41. Digitaliz\303\241l\303\241s." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 28 "*9.2.42. DFT \303\251s IDFT." }}{PARA 0 "" 0 "" {TEXT 201 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "with(DiscreteTransforms) ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$I1FourierTransformG6\"I8InverseFo urierTransformGF$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "Z:=Vec tor(5,[0,1+I,0,0,0]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+mo dulenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"ZF'/%'italicGQ%tr ueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&f alseF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.mova blelimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/ %'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6&-F#6 #-I'mtableGF$6'-I$mtrGF$6#-I$mtdGF$6#-I#mnGF$6$Q\"0F'F9-F[o6#-F^o6#-F# 6%-Fao6$FTF9-F660Q\"+F'F9F;F>F@FBFDFFFHFJ/FNQ0mediummathspaceF'/FQF`pF RFU-Fao6$Q\"IF'F9FjnFjnFjn/%%openGQ\"[F'/%&closeGQ\"]F'/I+msemanticsGF $Q*ColVectorF'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "ZZ:=Fouri erTransform(Z);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulena meG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q#ZZF'/%'italicGQ%trueF'/% ,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF' /%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablelim itsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rspa ceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6&-F#6#-I'mt ableGF$6'-I$mtrGF$6#-I$mtdGF$6#-F#6%-I#mnGF$6$Q50.447213595499957928F' F9-F660Q\"+F'F9F;F>F@FBFDFFFHFJ/FNQ0mediummathspaceF'/FQFjoFRFU-F#6%Fb o-F660Q1⁢F'F9F;F>F@FBFDFFFHFJ/FNQ$0emF'/FQFbpFRFU-Fco6$ Q\"IF'F9-F[o6#-F^o6#-F#6%-Fco6$Q50.563522005301030471F'F9-F660Q(&minus ;F'F9F;F>F@FBFDFFFHFJFioF[pFRFU-F#6%-Fco6$Q50.287128803051009463F'F9F^ pFdp-F[o6#-F^o6#-F#6&-F660Q*&uminus0;F'F9F;F>F@FBFDFFFH/FKQ'prefixF'Fa p/FQQ2verythinmathspaceF'FRFU-Fco6$Q60.0989378428154226858F'F9F`q-F#6% -Fco6$Q50.624668954934556320F'F9F^pFdp-F[o6#-F^o6#-F#6&F^rFjrF`q-F#6%F erF^pFdp-F[o6#-F^o6#-F#6&F^rFeqFfo-F#6%F]qF^pFdp/%%openGQ\"[F'/%&close GQ\"]F'/I+msemanticsGF$Q*ColVectorF'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "InverseFourierTransform(ZZ);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6 &-I%mrowGF$6#-I'mtableGF$6'-I$mtrGF$6#-I$mtdGF$6#-F,6&-I#moGF$60Q*&umi nus0;F'/%,mathvariantGQ'normalF'/%&fenceGQ&falseF'/%*separatorGFB/%)st retchyGFB/%*symmetricGFB/%(largeopGFB/%.movablelimitsGFB/%'accentGFB/% %formGQ'prefixF'/%'lspaceGQ$0emF'/%'rspaceGQ2verythinmathspaceF'/%(min sizeGQ\"1F'/%(maxsizeGQ)infinityF'-F,6%-I#mnGF$6$Q44.96506830649454586 F'F=-F:60Q1⁢F'F=F@FCFEFGFIFKFM/FPQ&infixF'FR/FVFTFXFen- I%msupGF$6%-F[o6$Q#10F'F=-F[o6$Q$-17F'F=/%1superscriptshiftGQ\"0F'-F:6 0Q(−F'F=F@FCFEFGFIFKFMFao/FSQ0mediummathspaceF'/FVFdpFXFen-F,6%F hnF^o-F[o6$Q\"IF'F=-F26#-F56#-F,6%-F[o6$Q#1.F'F=-F:60Q\"+F'F=F@FCFEFGF IFKFMFaoFcpFepFXFen-F,6%FaqF^oFhp-F26#-F56#-F,6&F9-F,6%-F[o6$Q41.07883 564276859031F'F=F^o-Feo6%Fgo-F[o6$Q$-18F'F=F]pF`p-F,6%F_rF^oFhp-F26#-F 56#-F,6&F9-F,6%-F[o6$Q43.16377643553485458F'F=F^oFdrF`p-F,6%FasF^oFhp- F26#-F56#-F,6%-F,6%-F[o6$Q47.75791922889772792F'F=F^o-Feo6%Fgo-F[o6$Q$ -19F'F=F]pFdq-F,6%F^tF^oFhp/%%openGQ\"[F'/%&closeGQ\"]F'/I+msemanticsG F$Q*ColVectorF'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "FourierT ransform(ZZ);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/I+modulen ameG6\"I,TypesettingGI(_syslibGF'6&-I%mrowGF$6#-I'mtableGF$6'-I$mtrGF$ 6#-I$mtdGF$6#-F,6&-I#moGF$60Q*&uminus0;F'/%,mathvariantGQ'normalF'/%&f enceGQ&falseF'/%*separatorGFB/%)stretchyGFB/%*symmetricGFB/%(largeopGF B/%.movablelimitsGFB/%'accentGFB/%%formGQ'prefixF'/%'lspaceGQ$0emF'/%' rspaceGQ2verythinmathspaceF'/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-F ,6%-I#mnGF$6$Q44.96506830649454586F'F=-F:60Q1⁢F'F=F@FCF EFGFIFKFM/FPQ&infixF'FR/FVFTFXFen-I%msupGF$6%-F[o6$Q#10F'F=-F[o6$Q$-17 F'F=/%1superscriptshiftGQ\"0F'-F:60Q(−F'F=F@FCFEFGFIFKFMFao/FSQ0 mediummathspaceF'/FVFdpFXFen-F,6%FhnF^o-F[o6$Q\"IF'F=-F26#-F56#-F,6%-F ,6%-F[o6$Q47.75791922889772792F'F=F^o-Feo6%Fgo-F[o6$Q$-19F'F=F]p-F:60Q \"+F'F=F@FCFEFGFIFKFMFaoFcpFepFXFen-F,6%FaqF^oFhp-F26#-F56#-F,6&F9-F,6 %-F[o6$Q43.16377643553485458F'F=F^o-Feo6%Fgo-F[o6$Q$-18F'F=F]pF`p-F,6% FfrF^oFhp-F26#-F56#-F,6&F9-F,6%-F[o6$Q41.07883564276859031F'F=F^oF[sF` p-F,6%FhsF^oFhp-F26#-F56#-F,6%-F[o6$Q#1.F'F=F[r-F,6%FetF^oFhp/%%openGQ \"[F'/%&closeGQ\"]F'/I+msemanticsGF$Q*ColVectorF'" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 13 "*9.2.43. FFT." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 24 "*9.2.44. FFT algoritmus." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 48 "# This procedure do the bit reversation of the\n" }{MPLTEXT 1 0 33 "# number x which is k bit long.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 34 "reverse:=proc(x,k) local xx,i,y;\n" }{MPLTEXT 1 0 16 " xx:=x; y:=0;\n" }{MPLTEXT 1 0 17 " for i to k do\n" }{MPLTEXT 1 0 26 " if type(xx,odd) then\n" }{MPLTEXT 1 0 31 " y:=2*y+1; \+ xx:=(xx-1)/2;\n" }{MPLTEXT 1 0 10 " else\n" }{MPLTEXT 1 0 25 " \+ y:=2*y; xx:=xx/2;\n" }{MPLTEXT 1 0 9 " fi;\n" }{MPLTEXT 1 0 13 " \+ od; y; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"xG6\"I\"kGF%6%I#xx GF%I\"iGF%I\"yGF%F%F%C&>F(F$>F*\"\"!?(F)\"\"\"F0F&I%trueG%*protectedG@ %-I%typeGF26$F(I$oddGF2C$>F*,&*&\"\"#F0F*F0F0F0F0>F(,&*&#F0FF*,$F;F0>F(,$F?F0F*F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 45 "# This procedure do the butterf ly operation\n" }{MPLTEXT 1 0 46 "# between the two terms A[i] and A[j ] of the\n" }{MPLTEXT 1 0 33 "# table A. The multiplier is w.\n" } {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 37 "butterfly: =proc(A,i,j,w) local X,Y;\n" }{MPLTEXT 1 0 45 " X:=A[i]; Y:=A[j]*w; A [i]:=X+Y; A[j]:=X-Y;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&I\"AG6\"I\"iGF%I\"jGF%I\"wGF%6$I\"XGF%I\"YGF%F%F%C&>F *&F$6#F&>F+*&&F$6#F'\"\"\"F(F4>F.,&F*F4F+F4>F2,&F*F4F+!\"\"F%F%F%" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 29 "# This is an FFT procedure.\n" }{MPLTEXT 1 0 62 "# It use the butterfly proc edure to operate on the vector A.\n" }{MPLTEXT 1 0 41 "# The number of rounds is k in the FFT.\n" }{MPLTEXT 1 0 58 "# T is a table of the po wers of primitive root of unity.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 33 "fft:=proc(A,T,k) local l,s,w,t;\n" } {MPLTEXT 1 0 26 " for l from 0 to k-1 do\n" }{MPLTEXT 1 0 30 " for s from 0 to 2^l-1 do\n" }{MPLTEXT 1 0 16 " w:=T[s];\n" }{MPLTEXT 1 0 38 " for t from 0 to 2^(k-l-1)-1 do\n" }{MPLTEXT 1 0 59 " \+ butterfly(A,2^(k-l)*s+t,2^(k-l)*s+t+2^(k-l-1),w);\n" }{MPLTEXT 1 0 11 " od;\n" }{MPLTEXT 1 0 9 " od;\n" }{MPLTEXT 1 0 7 " od; \n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"AG6 \"I\"TGF%I\"kGF%6&I\"lGF%I\"sGF%I\"wGF%I\"tGF%F%F%?(F)\"\"!\"\"\",&F'F /F/!\"\"I%trueG%*protectedG?(F*F.F/,&)\"\"#F)F/F/F1F2C$>F+&F&6#F*?(F,F .F/,&)F7,(F'F/F)F1F/F1F/F/F1F2-I*butterflyGF%6&F$,&*&)F7,&F'F/F)F1F/F* F/F/F,F/,(FDF/F,F/F>F/F+F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 49 "# The pre procedure do the preparation f or FFT:\n" }{MPLTEXT 1 0 54 "# The table T[0..2^(k-1)] of powers of th e primitive\n" }{MPLTEXT 1 0 27 "# root of unity prepared.\n" } {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 25 "pre:=proc( T,k) local i;\n" }{MPLTEXT 1 0 19 "Digits:=2*Digits;\n" }{MPLTEXT 1 0 26 "for i from 0 to 2^k-1 do\n" }{MPLTEXT 1 0 51 " T[i]:=evalf(exp(-2 *Pi*I*reverse(i,k)/2^(k+1)));\n" }{MPLTEXT 1 0 5 "od;\n" }{MPLTEXT 1 0 19 "Digits:=Digits/2;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"TG6\"I\"kGF%6#I\"iGF%F%F%C%>I'DigitsGF%,$*&\"\"#\" \"\"F+F/F/?(F(\"\"!F/,&)F.F&F/F/!\"\"I%trueG%*protectedG>&F$F'-I&evalf GF66#-I$expG6$F6I(_syslibGF%6#,$**,$*&F.F/^#F/F/F/F/I#PiGF6F/-I(revers eGF%6$F(F&F/)F.,&F&F/F/F/F4F4>F+,$*&#F/F.F/F+F/F/F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "k:=5; A:=array(0..2^k-1); for i fro m 0 to 2^k -1 do A[i]:=0 od:\n" }{MPLTEXT 1 0 23 "T:=array(0..2^(k-1)- 1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"6#;\"\"!\"#JE\\[l!" }}{PARA 11 "" 1 "" {XPPMATH 20 "= 6\"6#;\"\"!\"#:E\\[l!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "pr e(T,k-1): A[1]:=1+I: print(A);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6 \"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "fft(A,T,k): print(A); " }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 26 "for i from 0 to 2^k-1 do\n" }{MPLTEXT 1 0 20 " j:= reverse(i,k);\n" }{MPLTEXT 1 0 49 " if i " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 53 "# This procedure do the inverse butterfly operation\n" }{MPLTEXT 1 0 46 "# between the tw o terms A[i] and A[j] of the\n" }{MPLTEXT 1 0 47 "# table A. The power of primitive unity is w.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n " }{MPLTEXT 1 0 40 "ibutterfly:=proc(A,i,j,w) local X,Y,e;\n" } {MPLTEXT 1 0 51 " X:=A[i]+A[j]; Y:=A[i]-A[j]; A[i]:=X; A[j]:=Y/w;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&I\"AG6\"I\" iGF%I\"jGF%I\"wGF%6%I\"XGF%I\"YGF%I\"eGF%F%F%C&>F*,&&F$6#F&\"\"\"&F$6# F'F2>F+,&F0F2F3!\"\">F0F*>F3*&F+F2F(F7F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 54 "# This procedure is a float ing point IFFT procedure.\n" }{MPLTEXT 1 0 63 "# It use the ibutterfly procedure to operate on the vector A.\n" }{MPLTEXT 1 0 63 "# The numb er of round in the FFT is k and T is a table of the\n" }{MPLTEXT 1 0 38 "# powers of primitive root of unity.\n" }{MPLTEXT 1 0 3 "#\n" } {MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 34 "ifft:=proc(A,T,k) local l,s,w,t; \n" }{MPLTEXT 1 0 30 "for l from k-1 to 0 by -1 do\n" }{MPLTEXT 1 0 28 " for s from 0 to 2^l-1 do\n" }{MPLTEXT 1 0 14 " w:=T[s];\n" } {MPLTEXT 1 0 36 " for t from 0 to 2^(k-l-1)-1 do\n" }{MPLTEXT 1 0 58 " ibutterfly(A,2^(k-l)*s+t,2^(k-l)*s+t+2^(k-l-1),w);\n" } {MPLTEXT 1 0 9 " od;\n" }{MPLTEXT 1 0 7 " od;\n" }{MPLTEXT 1 0 8 " od; end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"AG 6\"I\"TGF%I\"kGF%6&I\"lGF%I\"sGF%I\"wGF%I\"tGF%F%F%?(F),&F'\"\"\"F/!\" \"F0\"\"!I%trueG%*protectedG?(F*F1F/,&)\"\"#F)F/F/F0F2C$>F+&F&6#F*?(F, F1F/,&)F7,(F'F/F)F0F/F0F/F/F0F2-I+ibutterflyGF%6&F$,&*&)F7,&F'F/F)F0F/ F*F/F/F,F/,(FDF/F,F/F>F/F+F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "for i from 0 to 2^k-1 do\n" }{MPLTEXT 1 0 20 " j:=reverse(i, k);\n" }{MPLTEXT 1 0 49 " if i " 0 "" {MPLTEXT 1 0 22 "ifft(A,T,k): p rint(A);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 38 "*9.2.46. Gyors szorz\303\241s FFT-vel." }} {PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 46 "# The digmul procedure do the digit-by-dig it\n" }{MPLTEXT 1 0 47 "# multiplication of the two numbers after the \n" }{MPLTEXT 1 0 49 "# fft's. The result will be in the first table. \n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 30 "digmu l:=proc(A,B,k) local i;\n" }{MPLTEXT 1 0 47 "for i from 0 to 2^k-1 do \+ A[i]:=A[i]*B[i]; od;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"AG6\"I\"BGF%I\"kGF%6#I\"iGF%F%F%?(F)\"\"!\"\"\",&) \"\"#F'F,F,!\"\"I%trueG%*protectedG>&F$F(*&F4F,&F&F(F,F%F%F%" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "A:=array(0..2^k-1); for i fr om 0 to 2^k -1 do A[i]:=0 od:\n" }{MPLTEXT 1 0 57 "B:=array(0..2^k-1); for i from 0 to 2^k -1 do B[i]:=0 od:" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"6#;\"\"!\"#JE\\[l!" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"6#;\"\"! \"#JE\\[l!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "A[0]:=1: A[1] :=1: A[2]:=1: print(A);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 70 "# This is the polynom multiplication, do multiplication or squaring.\n" } {MPLTEXT 1 0 67 "# A and B are the two polynomials, the FFT and IFFT u se k rounds.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 34 "polmulfft:=proc(A,B,k) global T;\n" }{MPLTEXT 1 0 13 "if A=B t hen\n" }{MPLTEXT 1 0 15 " fft(A,T,k);\n" }{MPLTEXT 1 0 18 " digmul(A ,A,k);\n" }{MPLTEXT 1 0 16 " ifft(A,T,k);\n" }{MPLTEXT 1 0 6 "else\n" }{MPLTEXT 1 0 15 " fft(A,T,k);\n" }{MPLTEXT 1 0 15 " fft(B,T,k);\n" }{MPLTEXT 1 0 18 " digmul(A,B,k);\n" }{MPLTEXT 1 0 16 " ifft(A,T,k) ;\n" }{MPLTEXT 1 0 11 "fi; A; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f* 6%I\"AG6\"I\"BGF%I\"kGF%F%F%F%C$@%/F$F&C%-I$fftGF%6%F$I\"TGF%F'-I'digm ulGF%6%F$F$F'-I%ifftGF%F.C&F,-F-6%F&F/F'-F1F#F3F$F%6#F/F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "polmulfft(A,A,k): print(map(x->x/2^ k,A));" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"6#;\"\"!\"#JE\\[lAF&,&$\"+ %*********!#5\"\"\"*&$F&F&F-^#F-F-F-F-,&$\"+********>!\"*F-F.F-\"\"#,& $\"+********HF4F-F.F-\"\"$,&$\"+++++?F4F-F.F-\"\"&,&$\"+>Ee!3)!#?F-F.F -\"\"%,&$\"+++++5F4F-F.F-\"\"(,&$\"+Izs^A!#>F-F.F-\"\"',&$\"+_]Lh5FJ! \"\"F.F-\"#5,&$\"+>;B>9FJFOF.F-\"#6,&$\"+AM4ViFJFOF.F-\"\"),&F/F-F.F- \"\"*,&$\"++++v=FJFOF.F-\"#:,&$\"+Q=E(y&FJF-F.F-\"#9,&$\"+Qih$*oFJF-F. F-\"#8,&$\"+:_#eK\"FJF-F.F-\"#7,&$\"+wM))eFFJFOF.F-\"#@,&$\"+Q<%>p\"FJ F-F.F-\"#?,&$\"++++]iFJF-F.F-\"#B,&$\"+D-RgwFAF-F.F-\"#A,&$\"+G&=_%>FJ F-F.F-\"#;F]p\"#,&$\"++++DJFJF-F.F-F',&$\"+)yG]I'FJFOF. FO\"#I,&$\"+7(*\\xxFJFOF.FO\"#H,&FboFOF.F-\"#G,&$\"+Q_;6**FAFOF.F-\"#E ,&FRF-F.F-\"#F,&$\"++vd1p!#AFOF.F-\"#CFY\"#D,&FfnF-F.F-" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 51 "# The fftpre \+ procedure do the preparation for the\n" }{MPLTEXT 1 0 50 "# table for \+ fft, where x is the number, A is the\n" }{MPLTEXT 1 0 49 "# table, m t he modulus, and k is the number of \n" }{MPLTEXT 1 0 50 "# rounds for \+ the fft, hence the table is 2^k long." }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 33 "fftpre:=proc(x,A,m, k) local i,xx;" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 8 "xx:=x;\n" } {MPLTEXT 1 0 53 "for i from 0 to 2^k-1 do A[i]:=irem(xx,m,'xx'); od;\n " }{MPLTEXT 1 0 4 "end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&I\"xG6\"I\"AGF%I\"mGF%I\"kGF%6$I\"iGF%I#xxGF%F%F%C$>F +F$?(F*\"\"!\"\"\",&)\"\"#F(F0F0!\"\"I%trueG%*protectedG>&F&6#F*-I%ire mGF66%F+F'.F+F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 43 "# The norm procedure do the normalization\n" } {MPLTEXT 1 0 50 "# after the ifft. A is the table, m the modulus,\n" } {MPLTEXT 1 0 46 "# and k is the number of rounds for the fft,\n" } {MPLTEXT 1 0 55 "# hence the table is 2^k long. The fraction parts are \n" }{MPLTEXT 1 0 24 "# left in the table A.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 33 "fftnorm:=proc(A,m,k) local i,x; \n" }{MPLTEXT 1 0 7 "x:=0;\n" }{MPLTEXT 1 0 32 "for i from 2^k-1 to 0 \+ by -1 do\n" }{MPLTEXT 1 0 19 " A[i]:=A[i]/2^k;\n" }{MPLTEXT 1 0 23 " \+ x:=m*x+round(A[i]);\n" }{MPLTEXT 1 0 27 " A[i]:=A[i]-round(A[i]);\n" }{MPLTEXT 1 0 11 "od; x; end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"AG6\"I\"mGF%I\"kGF%6$I\"iGF%I\"xGF%F%F%C%>F*\"\"!? (F),&)\"\"#F'\"\"\"F2!\"\"F3F-I%trueG%*protectedGC%>&F$6#F)*&F8F2F0F3> F*,&*&F&F2F*F2F2-I&roundG6$F5I(_syslibGF%6#F8F2>F8,&F8F2F>F3F*F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 70 "# T his is the main procedure, do the multiplication or the squaring.\n" } {MPLTEXT 1 0 71 "# a and b are the two numbers, m is the modulus for t he preparation. \n" }{MPLTEXT 1 0 34 "# The FFT and IFFT use k rounds. \n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 37 "mulff t:=proc(a,b,m,k) global A,B,T;\n" }{MPLTEXT 1 0 13 "if a=b then\n" } {MPLTEXT 1 0 20 " fftpre(a,A,m,k);\n" }{MPLTEXT 1 0 15 " fft(A,T,k); \n" }{MPLTEXT 1 0 18 " digmul(A,A,k);\n" }{MPLTEXT 1 0 16 " ifft(A,T ,k);\n" }{MPLTEXT 1 0 19 " fftnorm(A,m,k);\n" }{MPLTEXT 1 0 6 "else\n " }{MPLTEXT 1 0 20 " fftpre(a,A,m,k);\n" }{MPLTEXT 1 0 15 " fft(A,T, k);\n" }{MPLTEXT 1 0 20 " fftpre(b,B,m,k);\n" }{MPLTEXT 1 0 15 " fft (B,T,k);\n" }{MPLTEXT 1 0 18 " digmul(A,B,k);\n" }{MPLTEXT 1 0 16 " \+ ifft(A,T,k);\n" }{MPLTEXT 1 0 19 " fftnorm(A,m,k);\n" }{MPLTEXT 1 0 5 "fi;\n" }{MPLTEXT 1 0 4 "end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&I\"aG6\"I\"bGF%I\"mGF%I\"kGF%F%F%F%@%/F$F&C'-I'fftpr eGF%6&F$I\"AGF%F'F(-I$fftGF%6%F/I\"TGF%F(-I'digmulGF%6%F/F/F(-I%ifftGF %F2-I(fftnormGF%6%F/F'F(C)F,F0-F-6&F&I\"BGF%F'F(-F16%F?F3F(-F56%F/F?F( F7F9F%6%F/F?F3F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "mulfft( 123456789,987654321,20,5);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"3p_j76jK >7" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "123456789*987654321;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"3p_j76jK>7" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "print(A);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 28 "*9.2 .47. DCT \303\251s IDCT." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 54 "*9. 2.48. K\303\251tdimenzi\303\263s DFT \303\251s DCT." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" } {MPLTEXT 1 0 52 "# This procedure is one round of an FFT procedure.\n" }{MPLTEXT 1 0 52 "# It use the butterfly procedure to operate on the \n" }{MPLTEXT 1 0 50 "# vector A. Round r is done, with siccor size s, \n" }{MPLTEXT 1 0 48 "# and repeated until the vector A is finished,\n " }{MPLTEXT 1 0 53 "# i.e. in size N. The T is a table of the powers o f\n" }{MPLTEXT 1 0 28 "# primitive root of unity.\n" }{MPLTEXT 1 0 3 " #\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 42 "fftround:=proc(A,T,r,s,N) \+ local i,j,w,t;\n" }{MPLTEXT 1 0 7 "i:=0;\n" }{MPLTEXT 1 0 14 "while i< N do\n" }{MPLTEXT 1 0 28 " for j from 0 to 2^r-1 do\n" }{MPLTEXT 1 0 14 " w:=T[j];\n" }{MPLTEXT 1 0 28 " for t from 0 to s-1 do\n" } {MPLTEXT 1 0 33 " butterfly(A,i+t,i+s+t,w);\n" }{MPLTEXT 1 0 9 " \+ od;\n" }{MPLTEXT 1 0 15 " i:=i+2*s;\n" }{MPLTEXT 1 0 7 " od;\n" }{MPLTEXT 1 0 8 "od; end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6'I\"AG6\"I\"TGF%I\"rGF%I\"sGF%I\"NGF%6&I\"iGF%I\"jGF%I \"wGF%I\"tGF%F%F%C$>F+\"\"!?(F%\"\"\"F3F%2F+F)?(F,F1F3,&)\"\"#F'F3F3! \"\"I%trueG%*protectedGC%>F-&F&6#F,?(F.F1F3,&F(F3F3F9F:-I*butterflyGF% 6&F$,&F+F3F.F3,(F+F3F(F3F.F3F->F+,&F+F3*&F8F3F(F3F3F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 58 "# This proced ure is an IFFT round. It use the ibutterfly\n" }{MPLTEXT 1 0 57 "# pro cedure to operate on the vector A. Round r is done\n" }{MPLTEXT 1 0 57 "# with siccor size s and repeated until the vector A is\n" } {MPLTEXT 1 0 53 "# finished, i.e. in size N. The T is a table of the\n " }{MPLTEXT 1 0 38 "# powers of primitive root of unity.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 43 "ifftround:=proc(A,T ,r,s,N) local i,j,w,t;\n" }{MPLTEXT 1 0 7 "i:=0;\n" }{MPLTEXT 1 0 14 " while iF+\"\"!?(F%\"\"\"F3F%2F+F)?(F, F1F3,&)\"\"#F'F3F3!\"\"I%trueG%*protectedGC%>F-&F&6#F,?(F.F1F3,&F(F3F3 F9F:-I+ibutterflyGF%6&F$,&F+F3F.F3,(F+F3F(F3F.F3F->F+,&F+F3*&F8F3F(F3F 3F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 57 "# This is a several-dimensional fft procedure. It works\n" } {MPLTEXT 1 0 53 "# on the array A having size 2^(k[1]+k[2]+..+k[n]),\n " }{MPLTEXT 1 0 52 "# i.e. as if it would have dimensions k[1],..k[n]. \n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 34 "ffts: =proc(A,T,k) local i,r,s,N;\n" }{MPLTEXT 1 0 34 "N:=convert(k,`+`); N: =2^N; s:=N;\n" }{MPLTEXT 1 0 21 "for i to nops(k) do\n" }{MPLTEXT 1 0 29 " for r from 0 to k[i]-1 do\n" }{MPLTEXT 1 0 13 " s:=s/2;\n" } {MPLTEXT 1 0 26 " fftround(A,T,r,s,N);\n" }{MPLTEXT 1 0 7 " od;\n" }{MPLTEXT 1 0 8 "od; end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"AG6\"I\"TGF%I\"kGF%6&I\"iGF%I\"rGF%I\"sGF%I\"NGF%F %F%C&>F,-I(convertG%*protectedG6$F'I\"+GF1>F,)\"\"#F,>F+F,?(F)\"\"\"F9 -I%nopsGF16#F'I%trueGF1?(F*\"\"!F9,&&F'6#F)F9F9!\"\"F=C$>F+,$*&#F9F6F9 F+F9F9-I)fftroundGF%6'F$F&F*F+F,F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 58 "# This is a several-dimensional ifft procedure. It works\n" }{MPLTEXT 1 0 53 "# on the array A having size 2^(k[1]+k[2]+..+k[n]),\n" }{MPLTEXT 1 0 52 "# i.e. as if it woul d have dimensions k[1],..k[n].\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 35 "iffts:=proc(A,T,k) local i,r,s,N;\n" } {MPLTEXT 1 0 34 "N:=convert(k,`+`); N:=2^N; s:=1;\n" }{MPLTEXT 1 0 34 "for i from nops(k) to 1 by -1 do\n" }{MPLTEXT 1 0 35 " for r from k[ i]-1 to 0 by -1 do\n" }{MPLTEXT 1 0 27 " ifftround(A,T,r,s,N);\n" } {MPLTEXT 1 0 13 " s:=s*2;\n" }{MPLTEXT 1 0 7 " od;\n" }{MPLTEXT 1 0 8 "od; end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6% I\"AG6\"I\"TGF%I\"kGF%6&I\"iGF%I\"rGF%I\"sGF%I\"NGF%F%F%C&>F,-I(conver tG%*protectedG6$F'I\"+GF1>F,)\"\"#F,>F+\"\"\"?(F)-I%nopsGF16#F'!\"\"F8 I%trueGF1?(F*,&&F'6#F)F8F8F=F=\"\"!F>C$-I*ifftroundGF%6'F$F&F*F+F,>F+, $*&F6F8F+F8F8F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 80 "A:=a rray(0..2^k-1); for i from 0 to 2^k -1 do A[i]:=0 od: A[1]:=1.+I;\npri nt(A);" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "=6\"6#;\"\" !\"#JE\\[l!" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&$\"\"\"\"\"!F$*&F#F$^#F $F$F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 26 "ffts(A,T,[2,3]): print(A);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "i ffts(A,T,[2,3]): print(A);" }}{PARA 11 "" 1 "" {XPPMATH 20 "I\"AG6\"" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 51 "*9.2.49. Hangt\303\266m\303 \266r\303\255t\303\251s." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 57 "*9. 2.50. K\303\251pt\303\266m\303\266r\303\255t\303\251s." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 13 "*9.2.51. PNG." }}}{SECT 0 {PARA 5 "" 0 " " {TEXT 207 13 "*9.2.52. JPEG" }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 14 "*9.2.53. DjVu." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 76 "*9.2.54. \+ Mozg\303\263k\303\251p-t\303\266m\303\266r\303\255t\303\251s: MPEG." } }}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 11 "9.2.55. Tov" }{TEXT 207 8 "\30 3\241" }{TEXT 207 20 "bbi feladatok megold" }{TEXT 207 15 "\303\241sok kal." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 11 "9.2.56. Tov" }{TEXT 207 8 "\303\241" }{TEXT 207 14 "bbi feladatok." }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 206 54 " 9.3. Hibakorl\303\241toz\303\263 k\303\263dol\303\241s" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "restart ; with(StringTools);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7juI)AnagramsG6 \"I'AndMapGF$I2ApproximateSearchGF$I5ApproximateSearchAllGF$I/Arithmet icMeanGF$I'BorderGF$I,BorderArrayGF$I-BorderLengthGF$I*CamelCaseGF$I+C apitalizeGF$I)CaseJoinGF$I*CaseSplitGF$I'CenterGF$I'CentreGF$I%CharGF$ I5CharacterFrequenciesGF$I-CharacterMapGF$I&ChompGF$I%ChopGF$I-CommonP refixGF$I-CommonSuffixGF$I(CompareGF$I*CompareCIGF$I:CountCharacterOcc urrencesGF$I'DecodeGF$I'DeleteGF$I%DropGF$I-EditDistanceGF$I'EncodeGF$ I(EntropyGF$I'EscapeGF$I)ExchangeGF$I5ExpandCharacterClassGF$I+ExpandT absGF$I(ExplodeGF$I&FenceGF$I*FibonacciGF$I%FillGF$I.FirstFromLeftGF$I /FirstFromRightGF$I.FormatMessageGF$I+FormatTimeGF$I.FromByteArrayGF$I )GenerateGF$I&GroupGF$I0HammingDistanceGF$I.HammingSearchGF$I1HammingS earchAllGF$I)HasASCIIGF$I)HasAlphaGF$I0HasAlphaNumericGF$I/HasBinaryDi gitGF$I4HasControlCharacterGF$I)HasDigitGF$I+HasGraphicGF$I,HasHexDigi tGF$I.HasIdentifierGF$I/HasIdentifier1GF$I)HasLowerGF$I.HasOctalDigitG F$I-HasPrintableGF$I/HasPunctuationGF$I)HasSpaceGF$I)HasUpperGF$I)HasV owelGF$I%HashGF$I(ImplodeGF$I'InsertGF$I%IotaGF$I(IsASCIIGF$I(IsAlphaG F$I/IsAlphaNumericGF$I*IsAnagramGF$I+IsBalancedGF$I.IsBinaryDigitGF$I, IsConjugateGF$I3IsControlCharacterGF$I(IsDigitGF$I*IsGraphicGF$I+IsHex DigitGF$I-IsIdentifierGF$I.IsIdentifier1GF$I(IsLowerGF$I,IsMonotonicGF $I-IsOctalDigitGF$I-IsPalindromeGF$I)IsPeriodGF$I.IsPermutationGF$I)Is PrefixGF$I,IsPrimitiveGF$I,IsPrintableGF$I.IsPunctuationGF$I)IsSortedG F$I(IsSpaceGF$I.IsSubSequenceGF$I)IsSuffixGF$I(IsUpperGF$I(IsVowelGF$I %JoinGF$I)LeftFoldGF$I7LeftRecursivePathOrderGF$I'LengthGF$I,Levenshte inGF$I)LexOrderGF$I9LongestCommonSubSequenceGF$I7LongestCommonSubStrin gGF$I*LowerCaseGF$I.LyndonFactorsGF$I$MapGF$I(MaxCharGF$I " 0 "" {MPLTEXT 1 0 45 "addparity:=proc(m::st ring) local i,c; c:=0;\n" }{MPLTEXT 1 0 23 "for i to length(m) do\n" } {MPLTEXT 1 0 40 " if m[i]=\"1\" then c:=1-c; next; fi;\n" }{MPLTEXT 1 0 39 " if m[i]<>\"0\" then return FAIL fi;\n" }{MPLTEXT 1 0 55 "od; if c=1 then cat(m,\"1\") else cat(m,\"0\") fi; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#'I\"mG6\"I'stringG%*protectedG6$I\"iGF&I\"cGF&F&F& C%>F+\"\"!?(F*\"\"\"F0-I'lengthGF(6#F%I%trueGF(C$@$/&F%6#F*Q\"1F&C$>F+ ,&F0F0F+!\"\"\\@$0F8Q\"0F&OI%FAILGF(@%/F+F0-I$catGF(6$F%F:-FH6$F%FBF&F &F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "addparity(\"0110\"); addparity(\"0010\");" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q&011006\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "Q&001016\"" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 20 "9.3. 2. P\303\251lda." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 34 "9.3.3. P\30 3\251lda: parit\303\241" }{TEXT 207 7 "sbites " }{TEXT 207 11 "k\303\2 63d." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 35 "9.3.4. Hibajelz\305\221 k\303\263d." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}} {SECT 0 {PARA 5 "" 0 "" {TEXT 207 67 "9.3.5. K\303\263dok t\303\241vol s\303\241ga \303\251s s\303\272lya." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "HammingDistance(\"abcd\", \"abdd\");" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 79 "9.3.6. Minim\303\241lis t\303\241vols\303\241g\303\272 dek\303\263 dol\303\241s." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 78 "Dt:=table(): Dt[\"0000\"]:=FAIL: Dt[\"0001\"]:=F AIL: Dt[\"0010\"]:=\"0010\":\n" }{MPLTEXT 1 0 73 "Dt[\"0011\"]:=\"0010 \": Dt[\"0100\"]:=\"0100\": Dt[\"0101\"]:=\"0100\":\n" }{MPLTEXT 1 0 65 "Dt[\"0110\"]:=FAIL: Dt[\"0111\"]:=\"1111\": Dt[\"1000\"]:=FAIL:\n" }{MPLTEXT 1 0 73 "Dt[\"1001\"]:=\"1111\": Dt[\"1010\"]:=\"0010\": Dt[ \"1011\"]:=\"1111\":\n" }{MPLTEXT 1 0 73 "Dt[\"1100\"]:=\"0100\": Dt[ \"1101\"]:=\"1111\": Dt[\"1110\"]:=\"1111\":\n" }{MPLTEXT 1 0 25 "Dt[ \"1111\"]:=\"1111\":\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 41 "Dt[\"00 11\"]; Dt[\"0000\"]; Dt[\"1110\"];" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q% 00106\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%FAILG%*protectedG" }}{PARA 11 "" 1 "" {XPPMATH 20 "Q%11116\"" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 43 "9.3.7. Hibaja v\303\255t\303\263 k\303\263d." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 32 "*9.3.8. Hibajav\3 03\255t\303\241" }{TEXT 207 23 "s ismert hibahelyekkel." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 43 "9.3.9. Ism\303\251tl\303\251ses k\303\26 3d." }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 74 "9.3.10. K\303\251tdimenzi\303\263s parit \303\241sellen\305\221rz\303\251s." }}{PARA 0 "" 0 "" {TEXT 201 0 "" } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "m:=9: n:=8: rnd:=rand(0..1) : A:=Matrix(m,n):\n" }{MPLTEXT 1 0 53 "for i to m do for j to n do A[i ,j]:=rnd(): od: od: A;" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/ I+modulenameG6\"I,TypesettingGI(_syslibGF'6&-I%mrowGF$6#-I'mtableGF$6+ -I$mtrGF$6*-I$mtdGF$6#-I#mnGF$6$Q\"0F'/%,mathvariantGQ'normalF'F4F4-F5 6#-F86$Q\"1F'F;F4F>F>F>-F26*F4F>F>F>F4F4F>F4-F26*F>F4F>F4F>F>F>F>-F26* F4F4F4F>F4F>F4F>-F26*F>F4F4F>F>F>F>F4-F26*F4F4F>F4F>F4F>F4-F26*F>F4F4F >F4F4F4F4-F26*F4F>F4F4F>F>F4F4-F26*F4F4F4F4F>F>F>F4/%%openGQ\"[F'/%&cl oseGQ\"]F'/I+msemanticsGF$Q'MatrixF'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "B:=Matrix(m+1,n+1):\n" }{MPLTEXT 1 0 100 "for i to m \+ do s:=0: for j to n do B[i,j]:=A[i,j]: if A[i,j]<>0 then s:=1-s fi: od : B[i,n+1]:=s od:\n" }{MPLTEXT 1 0 88 "for j to n+1 do s:=0: for i to \+ m do if B[i,j]<>0 then s:=1-s; fi: od: B[m+1,j]:=s: od:\n" }{MPLTEXT 1 0 2 "B;" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/I+modulenameG 6\"I,TypesettingGI(_syslibGF'6&-I%mrowGF$6#-I'mtableGF$6,-I$mtrGF$6+-I $mtdGF$6#-I#mnGF$6$Q\"0F'/%,mathvariantGQ'normalF'F4F4-F56#-F86$Q\"1F' F;F4F>F>F>F4-F26+F4F>F>F>F4F4F>F4F4-F26+F>F4F>F4F>F>F>F>F4-F26+F4F4F4F >F4F>F4F>F>-F26+F>F4F4F>F>F>F>F4F>-F26+F4F4F>F4F>F4F>F4F>-F26+F>F4F4F> F4F4F4F4F4-F26+F4F>F4F4F>F>F4F4F>-F26+F4F4F4F4F>F>F>F4F>-F26+F>F4F>F>F >F4F4F>F>/%%openGQ\"[F'/%&closeGQ\"]F'/I+msemanticsGF$Q'MatrixF'" }}} {EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 30 "9.3.11. Hamming-korl\303\241t." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 32 "9.3.12. Singleton-korl\303\241t." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 35 "9.3.13. Line\303\241ris k\303\263d." }}} {SECT 1 {PARA 5 "" 0 "" {TEXT 207 77 "9.3.14. Gener\303\241torm\303\24 1trix, ellen\305\221rz\305\221 m\303\241trix." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 48 "9.3.15. Szindr\303\263madek\303\263dol\303\241s." }} }{SECT 0 {PARA 5 "" 0 "" {TEXT 207 6 "9.3.16" }{TEXT 207 32 ". P\303\2 51lda: Fano-k\303\263d." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "isvectorspacemod2:=proc(S) local x, y,z;\n" }{MPLTEXT 1 0 63 "for x in S do for y in S do z:=zip((xx,yy)-> xx+yy mod 2,x,y);\n" }{MPLTEXT 1 0 56 " if not z in S then return fal se fi; od; od; true; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"SG6 \"6%I\"xGF%I\"yGF%I\"zGF%F%F%C$?&F'F$I%trueG%*protectedG?&F(F$F,C$>F)- I$zipGF%6%f*6$I#xxGF%I#yyGF%F%6$I)operatorGF%I&arrowGF%F%-I$modGF%6$,& F6\"\"\"F7F?\"\"#F%F%F%F'F(@$4-I#inGF-6$F)F$OI&falseGF-F,F%F%F%" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 268 "Fano:=\{[0,0,0,0,0,0,0],[1, 1,1,1,1,1,1],[1,1,1,0,0,0,0],[0,0,0,1,1,1,1],[1,0,0,1,1,0,0],[0,1,1,0, 0,1,1],[0,1,0,1,0,1,0],[1,0,1,0,1,0,1],[0,0,1,1,0,0,1],[1,1,0,0,1,1,0] ,[1,0,0,0,0,1,1],[0,1,1,1,1,0,0],[0,1,0,0,1,0,1],[1,0,1,1,0,1,0],[0,0, 1,0,1,1,0],[1,1,0,1,0,0,1]\};\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 24 "isvectorspacemod2(Fano);" }}{PARA 11 "" 1 "" {XPPMATH 20 "<27)\"\" !F$F$F$F$F$F$7)\"\"\"F&F&F&F&F&F&7)F&F&F&F$F$F$F$7)F$F$F$F&F&F&F&7)F&F $F$F&F&F$F$7)F$F&F&F$F$F&F&7)F$F&F$F&F$F&F$7)F&F$F&F$F&F$F&7)F$F$F&F&F $F$F&7)F&F&F$F$F&F&F$7)F&F$F$F$F$F&F&7)F$F&F&F&F&F$F$7)F$F&F$F$F&F$F&7 )F&F$F&F&F$F&F$7)F$F$F&F$F&F&F$7)F&F&F$F&F$F$F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*protectedG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "with(linalg);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7^rI.BlockDiag onalG6\"I,GramSchmidtGF$I,JordanBlockGF$I)LUdecompGF$I)QRdecompGF$I*Wr onskianGF$I'addcolGF$I'addrowGF$I$adjGF$I(adjointGF$I&angleGF$I(augmen tGF$I(backsubGF$I%bandGF$I&basisGF$I'bezoutGF$I,blockmatrixGF$I(charma tGF$I)charpolyGF$I)choleskyGF$I$colGF$I'coldimGF$I)colspaceGF$I(colspa nGF$I*companionGF$I'concatGF$I%condGF$I)copyintoGF$I*crossprodGF$I%cur lGF$I)definiteGF$I(delcolsGF$I(delrowsGF$I$detGF$I%diagGF$I(divergeGF$ I(dotprodGF$I*eigenvalsGF$I,eigenvaluesGF$I-eigenvectorsGF$I+eigenvect sGF$I,entermatrixGF$I&equalGF$I,exponentialGF$I'extendGF$I,ffgausselim GF$I*fibonacciGF$I+forwardsubGF$I*frobeniusGF$I*gausselimGF$I*gaussjor dGF$I(geneqnsGF$I*genmatrixGF$I%gradGF$I)hadamardGF$I(hermiteGF$I(hess ianGF$I(hilbertGF$I+htransposeGF$I)ihermiteGF$I*indexfuncGF$I*innerpro dGF$I)intbasisGF$I(inverseGF$I'ismithGF$I*issimilarGF$I'iszeroGF$I)jac obianGF$I'jordanGF$I'kernelGF$I*laplacianGF$I*leastsqrsGF$I)linsolveGF $I'mataddGF$I'matrixGF$I&minorGF$I(minpolyGF$I'mulcolGF$I'mulrowGF$I)m ultiplyGF$I%normGF$I*normalizeGF$I*nullspaceGF$I'orthogGF$I*permanentG F$I&pivotGF$I*potentialGF$I+randmatrixGF$I+randvectorGF$I%rankGF$I(rat formGF$I$rowGF$I'rowdimGF$I)rowspaceGF$I(rowspanGF$I%rrefGF$I*scalarmu lGF$I-singularvalsGF$I&smithGF$I,stackmatrixGF$I*submatrixGF$I*subvect orGF$I)sumbasisGF$I(swapcolGF$I(swaprowGF$I*sylvesterGF$I)toeplitzGF$I &traceGF$I*transposeGF$I,vandermondeGF$I*vecpotentGF$I(vectdimGF$I'vec torGF$I*wronskianGF$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "ran gemod2:=proc(A::matrix) local m,n,i,j,v,S;\n" }{MPLTEXT 1 0 38 "m:=row dim(A); n:=coldim(A); S:=\{\};\n" }{MPLTEXT 1 0 26 "for i from 0 to 2^ n-1 do\n" }{MPLTEXT 1 0 70 " v:=convert(i,base,2); v:=[op(v),0$j=nops (v)+1..n]; v:=vector(n,v);\n" }{MPLTEXT 1 0 43 " v:=multiply(A,v); v: =map(x->x mod 2,v);\n" }{MPLTEXT 1 0 41 " v:=convert(v,list); S:=S un ion \{v\};\n" }{MPLTEXT 1 0 11 "od; S; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#'I\"AG6\"_I'linalgG6+%*protectedGI(_syslibGF&F+F+F+F+ F+F+F+I'matrixGF&6(I\"mGF&I\"nGF&I\"iGF&I\"jGF&I\"vGF&I\"SGF&F&F&C'>F. -_F(I'rowdimGF&6#F%>F/-_F(I'coldimGF&F9>F3<\"?(F0\"\"!\"\"\",&)\"\"#F/ FBFB!\"\"I%trueGF*C)>F2-I(convertGF*6%F0I%baseGF&FE>F27$-I#opGF*6#F2-I \"$GF*6$FA/F1;,&-I%nopsGF*FRFBFBFBF/>F2-_F(I'vectorGF&6$F/F2>F2-_F(I)m ultiplyGF&6$F%F2>F2-I$mapGF*6$f*6#I\"xGF&F&6$I)operatorGF&I&arrowGF&F& -I$modGF&6$FeoFEF&F&F&F2>F2-FK6$F2I%listGF*>F3-I&unionGF*6$F3<#F2F3F&F &F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 83 "G:=matrix([[1,1,1,1] ,[1,0,0,1],[1,0,1,1],[0,0,1,1],[0,0,0,1],[0,1,1,1],[0,1,0,1]]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,Typesetting GI(_syslibGF'6%-I#miGF$6%Q\"GF'/%'italicGQ%trueF'/%,mathvariantGQ'ital icF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)s tretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/ %%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\" 1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%-F#6#-I'mtableGF$6)-I$mtrGF$6 &-I$mtdGF$6#-I#mnGF$6$FTF9F]oF]oF]o-F[o6&F]o-F^o6#-Fao6$Q\"0F'F9FeoF]o -F[o6&F]oFeoF]oF]o-F[o6&FeoFeoF]oF]o-F[o6&FeoFeoFeoF]o-F[o6&FeoF]oF]oF ]o-F[o6&FeoF]oFeoF]o/%%openGQ\"[F'/%&closeGQ\"]F'" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 28 "rangemod2(G); evalb(Fano=%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "<27)\"\"!F$F$F$F$F$F$7)\"\"\"F&F&F&F&F&F&7)F&F&F&F$F $F$F$7)F$F$F$F&F&F&F&7)F&F$F$F&F&F$F$7)F$F&F&F$F$F&F&7)F$F&F$F&F$F&F$7 )F&F$F&F$F&F$F&7)F$F$F&F&F$F$F&7)F&F&F$F$F&F&F$7)F&F$F$F$F$F&F&7)F$F&F &F&F&F$F$7)F$F&F$F$F&F$F&7)F&F$F&F&F$F&F$7)F$F$F&F$F&F&F$7)F&F&F$F&F$F $F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*protectedG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "addcol(G,1,2,1):addcol(%,1,3,1):add col(%,1,4,1):map(x->x mod 2,%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mf encedG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6%-I%mrowGF$6#-I'mt ableGF$6)-I$mtrGF$6&-I$mtdGF$6#-I#mnGF$6$Q\"1F'/%,mathvariantGQ'normal F'-F56#-F86$Q\"0F'F;F>F>-F26&F4F4F4F>-F26&F4F4F>F>-F26&F>F>F4F4-F26&F> F>F>F4-F26&F>F4F4F4-F26&F>F4F>F4/%%openGQ\"[F'/%&closeGQ\"]F'" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "addcol(%,2,1,1):addcol(%,2,3 ,1):map(x->x mod 2,%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/ I+modulenameG6\"I,TypesettingGI(_syslibGF'6%-I%mrowGF$6#-I'mtableGF$6) -I$mtrGF$6&-I$mtdGF$6#-I#mnGF$6$Q\"1F'/%,mathvariantGQ'normalF'-F56#-F 86$Q\"0F'F;F>F>-F26&F>F4F>F>-F26&F>F4F4F>-F26&F>F>F4F4-F26&F>F>F>F4-F2 6&F4F4F>F4-F26&F4F4F4F4/%%openGQ\"[F'/%&closeGQ\"]F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "addcol(%,3,2,1):map(x->x mod 2,%);" }} {PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/I+modulenameG6\"I,Typesett ingGI(_syslibGF'6%-I%mrowGF$6#-I'mtableGF$6)-I$mtrGF$6&-I$mtdGF$6#-I#m nGF$6$Q\"1F'/%,mathvariantGQ'normalF'-F56#-F86$Q\"0F'F;F>F>-F26&F>F4F> F>-F26&F>F>F4F>-F26&F>F4F4F4-F26&F>F>F>F4-F26&F4F4F>F4-F26&F4F>F4F4/%% openGQ\"[F'/%&closeGQ\"]F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "addcol(%,4,2,1):addcol(%,4,3,1):G1:=map(x->x mod 2,%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_sysl ibGF'6%-I#miGF$6%Q#G1F'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#m oGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyG F=/%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ &infixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(ma xsizeGQ)infinityF'-I(mfencedGF$6%-F#6#-I'mtableGF$6)-I$mtrGF$6&-I$mtdG F$6#-I#mnGF$6$FTF9-F^o6#-Fao6$Q\"0F'F9FcoFco-F[o6&FcoF]oFcoFco-F[o6&Fc oFcoF]oFco-F[o6&FcoFcoFcoF]o-F[o6&FcoF]oF]oF]o-F[o6&F]oFcoF]oF]o-F[o6& F]oF]oFcoF]o/%%openGQ\"[F'/%&closeGQ\"]F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "rangemod2(G1); evalb(Fano=%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "<27)\"\"!F$F$F$F$F$F$7)\"\"\"F&F&F&F&F&F&7)F&F&F&F$F$F$F$ 7)F$F$F$F&F&F&F&7)F&F$F$F&F&F$F$7)F$F&F&F$F$F&F&7)F$F&F$F&F$F&F$7)F&F$ F&F$F&F$F&7)F$F$F&F&F$F$F&7)F&F&F$F$F&F&F$7)F&F$F$F$F$F&F&7)F$F&F&F&F& F$F$7)F$F&F$F$F&F$F&7)F&F$F&F&F$F&F$7)F$F$F&F$F&F&F$7)F&F&F$F&F$F$F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "I%trueG%*protectedG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "H:=matrix([[0,1,1,1,1,0,0],[1,0,1,1,0,1,0] ,[1,1,0,1,0,0,1]]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modu lenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"HF'/%'italicGQ%true F'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&fal seF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movabl elimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%' rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%-F#6#- I'mtableGF$6%-I$mtrGF$6)-I$mtdGF$6#-I#mnGF$6$Q\"0F'F9-F^o6#-Fao6$FTF9F doFdoFdoF]oF]o-F[o6)FdoF]oFdoFdoF]oFdoF]o-F[o6)FdoFdoF]oFdoF]oF]oFdo/% %openGQ\"[F'/%&closeGQ\"]F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "sindromemod2:=proc(H::matrix,St::table) local i,j,k,m,n,s,ss,sss,x ;\n" }{MPLTEXT 1 0 58 "m:=rowdim(H); n:=coldim(H); if m>=n then return FAIL fi;\n" }{MPLTEXT 1 0 26 "for i from 0 to 2^m-1 do\n" }{MPLTEXT 1 0 54 " s:=convert(i,base,2); s:=[op(s),0$j=nops(s)+1..m];\n" } {MPLTEXT 1 0 21 " St[s]:=[1$j=1..n]\n" }{MPLTEXT 1 0 5 "od;\n" } {MPLTEXT 1 0 26 "for i from 0 to 2^n-1 do\n" }{MPLTEXT 1 0 57 " ss:=c onvert(i,base,2); ss:=[op(ss),0$j=nops(%)+1..n];\n" }{MPLTEXT 1 0 48 " sss:=convert(ss,vector); k:=multiply(H,sss);\n" }{MPLTEXT 1 0 55 " \+ k:=map(x->x mod 2,k); k:=convert(k,list); s:=St[%];\n" }{MPLTEXT 1 0 56 " if convert(ss,`+`)F4-_F(I'rowdimGF&6#F%>F5-_F(I'coldimGF&F?@$1F5F4OI%FAILG F*?(F1\"\"!\"\"\",&)\"\"#F4FJFJ!\"\"I%trueGF*C%>F6-I(convertGF*6%F1I%b aseGF&FM>F67$-I#opGF*6#F6-I\"$GF*6$FI/F2;,&-I%nopsGF*FZFJFJFJF4>&F.FZ7 #-Ffn6$FJ/F2;FJF5?(F1FIFJ,&)FMF5FJFJFNFOC*>F7FR>F77$-FY6#F7-Ffn6$FI/F2 ;,&-F\\o6#I\"%GF&FJFJFJF5>F8-FS6$F7_F(I'vectorGF&>F3-_F(I)multiplyGF&6 $F%F8>F3-I$mapGF*6$f*6#F9F&6$I)operatorGF&I&arrowGF&F&-I$modGF&6$F9FMF &F&F&F3>F3-FS6$F3I%listGF*>F6&F.Fcp@$2-FS6$F7I\"+GF*-FS6$F6Fer>&F.6#F3 F7F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 43 "St:=table(): si ndromemod2(H,St); print(St);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I&TABLE G%*protectedG6#7*/7%\"\"!\"\"\"F*7)F*F)F)F)F)F)F)/7%F)F)F*7)F)F)F)F)F) F)F*/7%F*F*F)7)F)F)F*F)F)F)F)/7%F)F*F)7)F)F)F)F)F)F*F)/7%F)F)F)7)F)F)F )F)F)F)F)/7%F*F*F*7)F)F)F)F*F)F)F)/7%F*F)F*7)F)F*F)F)F)F)F)/7%F*F)F)7) F)F)F)F)F*F)F)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "c:=vector ([0,1,0,0,1,0,1]); multiply(H,c); map(x->x mod 2,%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6 %-I#miGF$6%Q\"cF'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#moGF$60 Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF=/%*s ymmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ&infix F'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeG Q)infinityF'-I(mfencedGF$6%-I'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I#mnGF $6$Q\"0F'F9-F\\o6#-F_o6$FTF9F[oF[oFboF[oFbo/%%openGQ\"[F'/%&closeGQ\"] F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/I+modulenameG6\"I,Ty pesettingGI(_syslibGF'6%-I'mtableGF$6#-I$mtrGF$6%-I$mtdGF$6#-I#mnGF$6$ Q\"2F'/%,mathvariantGQ'normalF'-F26#-F56$Q\"0F'F8F1/%%openGQ\"[F'/%&cl oseGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I(mfencedG6#/I+modulename G6\"I,TypesettingGI(_syslibGF'6%-I'mtableGF$6#-I$mtrGF$6%-I$mtdGF$6#-I #mnGF$6$Q\"0F'/%,mathvariantGQ'normalF'F1F1/%%openGQ\"[F'/%&closeGQ\"] F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "e:=vector([0,0,0,0,1, 0,0]); v:=evalm(c+e); s:=multiply(H,v);\n" }{MPLTEXT 1 0 32 "s:=conver t(s,list) mod 2; St[s];" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+ modulenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"eF'/%'italicGQ% trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ &falseF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.mo vablelimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF '/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%-I 'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I#mnGF$6$Q\"0F'F9F[oF[oF[o-F\\o6#-F _o6$FTF9F[oF[o/%%openGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6%-I #miGF$6%Q\"vF'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#: =F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF=/%*symm etricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ&infixF'/ %'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)i nfinityF'-I(mfencedGF$6%-I'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I#mnGF$6$ Q\"0F'F9-F\\o6#-F_o6$FTF9F[oF[o-F\\o6#-F_o6$Q\"2F'F9F[oFbo/%%openGQ\"[ F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+module nameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"sF'/%'italicGQ%trueF' /%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&false F'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablel imitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rs paceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%-I'mtabl eGF$6#-I$mtrGF$6%-I$mtdGF$6#-I#mnGF$6$Q\"3F'F9-F\\o6#-F_o6$Q\"0F'F9-F \\o6#-F_o6$Q\"2F'F9/%%openGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"\"\"\"\"!F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "7)\"\"!F #F#F#\"\"\"F#F#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "e:=vecto r([0,0,0,0,1,0,1]); v:=evalm(c+e); s:=multiply(H,v);\n" }{MPLTEXT 1 0 32 "s:=convert(s,list) mod 2; St[s];" }}{PARA 11 "" 1 "" {XPPMATH 20 " -I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"eF '/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'norma lF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(la rgeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/th ickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(m fencedGF$6%-I'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I#mnGF$6$Q\"0F'F9F[oF[ oF[o-F\\o6#-F_o6$FTF9F[oFbo/%%openGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 " " 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslib GF'6%-I#miGF$6%Q\"vF'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#moG F$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF= /%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ&i nfixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxs izeGQ)infinityF'-I(mfencedGF$6%-I'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I# mnGF$6$Q\"0F'F9-F\\o6#-F_o6$FTF9F[oF[o-F\\o6#-F_o6$Q\"2F'F9F[oFfo/%%op enGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I +modulenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"sF'/%'italicGQ %trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceG Q&falseF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.m ovablelimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspace F'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%- I'mtableGF$6#-I$mtrGF$6%-I$mtdGF$6#-I#mnGF$6$Q\"3F'F9-F\\o6#-F_o6$Q\"0 F'F9F[o/%%openGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 " 7%\"\"\"\"\"!F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "7)\"\"!\"\"\"F#F#F#F# F#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "e:=vector([1,1,1,0,0, 0,0]); v:=evalm(c+e); s:=multiply(H,v);\n" }{MPLTEXT 1 0 32 "s:=conver t(s,list) mod 2; St[s];" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+ modulenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"eF'/%'italicGQ% trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ &falseF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.mo vablelimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF '/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%-I 'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I#mnGF$6$FTF9F[oF[o-F\\o6#-F_o6$Q\" 0F'F9FaoFaoFao/%%openGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6%-I #miGF$6%Q\"vF'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#: =F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF=/%*symm etricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ&infixF'/ %'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)i nfinityF'-I(mfencedGF$6%-I'mtableGF$6#-I$mtrGF$6)-I$mtdGF$6#-I#mnGF$6$ FTF9-F\\o6#-F_o6$Q\"2F'F9F[o-F\\o6#-F_o6$Q\"0F'F9F[oFfoF[o/%%openGQ\"[ F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+module nameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q\"sF'/%'italicGQ%trueF' /%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&false F'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablel imitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rs paceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6%-I'mtabl eGF$6#-I$mtrGF$6%-I$mtdGF$6#-I#mnGF$6$Q\"4F'F9-F\\o6#-F_o6$Q\"2F'F9F[o /%%openGQ\"[F'/%&closeGQ\"]F'" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"\"! F#F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "7)\"\"!F#F#F#F#F#F#" }}}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 6 "9.3.17" }{TEXT 207 48 ". P\303\251lda: Reed-M\303\274ller-k\303\263dok." }} {PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "RM51basis:=\{\n" }{MPLTEXT 1 0 68 "[1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],\n" }{MPLTEXT 1 0 68 "[1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\n" }{MPLTEXT 1 0 68 "[1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0 ,0],\n" }{MPLTEXT 1 0 68 "[1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0 ,0,0,1,1,1,1,0,0,0,0],\n" }{MPLTEXT 1 0 68 "[1,1,0,0,1,1,0,0,1,1,0,0,1 ,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0],\n" }{MPLTEXT 1 0 68 "[1,0,1,0 ,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0]\};" }}{PARA 11 "" 1 "" {XPPMATH 20 "<(7B\"\"\"F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$ F$F$F$F$F$F$F$F$F$F$F$F$F$7BF$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$\"\"!F&F&F &F&F&F&F&F&F&F&F&F&F&F&F&7BF$F$F$F$F$F$F$F$F&F&F&F&F&F&F&F&F$F$F$F$F$F $F$F$F&F&F&F&F&F&F&F&7BF$F$F$F$F&F&F&F&F$F$F$F$F&F&F&F&F$F$F$F$F&F&F&F &F$F$F$F$F&F&F&F&7BF$F$F&F&F$F$F&F&F$F$F&F&F$F$F&F&F$F$F&F&F$F$F&F&F$F $F&F&F$F$F&F&7BF$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F&F$F &F$F&F$F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "linenvelop:=pr oc(S) local x,y,SS,SSS; SS:=S;\n" }{MPLTEXT 1 0 15 "while true do\n" } {MPLTEXT 1 0 12 " SSS:=SS;\n" }{MPLTEXT 1 0 33 " for x in SS do for \+ y in SS do\n" }{MPLTEXT 1 0 54 " SSS:=SSS union \{zip((xx,yy)->xx+y y mod 2,x,y)\}\n" }{MPLTEXT 1 0 11 " od; od;\n" }{MPLTEXT 1 0 33 " i f SS=SSS then return(SS) fi;\n" }{MPLTEXT 1 0 12 " SS:=SSS;\n" } {MPLTEXT 1 0 8 "od; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"SG6\" 6&I\"xGF%I\"yGF%I#SSGF%I$SSSGF%F%F%C$>F)F$?(F%\"\"\"F.F%I%trueG%*prote ctedGC&>F*F)?&F'F)F/?&F(F)F/>F*-I&unionGF06$F*<#-I$zipGI(_syslibGF%6%f *6$I#xxGF%I#yyGF%F%6$I)operatorGF%I&arrowGF%F%-I$modGF%6$,&F@F.FAF.\" \"#F%F%F%F'F(@$/F)F*OF)>F)F*F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "linenvelop(RM51basis); nops(%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "<\\o7B\"\"\"F$\"\"!F%F%F%F$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F% F$F$F$F$F%F%F%F%F$F$7BF$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$ F$F%F$F%F%F$F%F$7BF$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F% F%F$F$F%F%F$7BF$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F%F%F%F%F%F$F$F$F$F%F%F%F% F$F$F$F$7BF$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$F%F%F$F$F%F% F$F$7BF$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$ 7BF$F%F%F$F%F$F$F%F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$F$F%F%F$F%F$F$F%7BF$ F%F%F$F$F%F%F$F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F$F%F%F$F$F%F%F$7BF$F%F% F$F%F$F$F%F%F$F$F%F$F%F%F$F$F%F%F$F%F$F$F%F%F$F$F%F$F%F%F$7BF%F$F%F$F% F$F%F$F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$7BF%F%F$F$F$F$F% F%F%F%F$F$F$F$F%F%F$F$F%F%F%F%F$F$F$F$F%F%F%F%F$F$7BF%F$F%F$F$F%F$F%F% F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$7BF%F$F$F%F%F$F$F%F%F$F$ F%F%F$F$F%F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$7BF%F$F$F%F$F%F%F$F%F$F$F%F$ F%F%F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$7BF%F$F$F%F$F%F%F$F$F%F%F$F%F$F$ F%F%F$F$F%F$F%F%F$F$F%F%F$F%F$F$F%7BF%F%F$F$F$F$F%F%F$F$F%F%F%F%F$F$F$ F$F%F%F%F%F$F$F%F%F$F$F$F$F%F%7BF%F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$F$F%F$ F%F%F$F%F$F%F$F%F$F$F%F$F%7BF$F$F$F$F$F$F$F$F%F%F%F%F%F%F%F%F%F%F%F%F% F%F%F%F$F$F$F$F$F$F$F$7BF%F%F%F%F$F$F$F$F$F$F$F$F%F%F%F%F%F%F%F%F$F$F$ F$F$F$F$F$F%F%F%F%7BF%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$F$ F$F%F%F$F$F%F%7BF%F$F%F$F%F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$F$F%F$ F%F$F%F$F%7BF%F%F$F$F$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%F% F%F$F$7BF%F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$F$F%F$F%F$F%F$F%F%F$F% F$7BF$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$7B F$F%F%F$F%F$F$F%F$F%F%F$F%F$F$F%F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$7BF$F% F$F%F%F$F%F$F%F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$7BF$F$F$F$ F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$7BF$F$F$F$F$F$ F$F$F$F$F$F$F$F$F$F$F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%7BF$F$F$F$F$F$F$F$ F%F%F%F%F%F%F%F%F$F$F$F$F$F$F$F$F%F%F%F%F%F%F%F%7BF$F$F$F$F%F%F%F%F$F$ F$F$F%F%F%F%F$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F%7BF$F$F%F%F$F$F%F%F$F$F%F% F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%7BF$F%F$F%F$F%F$F%F$F%F$F%F$F% F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%7BF$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$ F%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%7BF$F%F%F$F$F%F%F$F%F$F$F%F%F$F$F%F$F% F%F$F$F%F%F$F%F$F$F%F%F$F$F%7BF%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%F$F$F%F% F$F$F%F%F%F%F$F$F%F%F$F$7BF$F%F%F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$ F$F%F$F%F%F$F%F$F$F%7BF$F$F%F%F%F%F$F$F$F$F%F%F%F%F$F$F%F%F$F$F$F$F%F% F%F%F$F$F$F$F%F%7BF$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$F%F$F%F$F$F%F$F%F%F$ F%F$F$F%F$F%7BF%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F% F%F%F%F%7BF%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$F$F%F%F$F%F$F$F%F$F%F%F$F%F$ F$F%7BF%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F%F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$ 7BF%F%F$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F%F$F$F$F$F%F%7BF% F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%F%F$F%F$F$F%F$F%7BF%F$F$ F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%7BF%F%F%F%F$ F$F$F$F%F%F%F%F$F$F$F$F$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F%7BF%F%F$F$F%F%F$ F$F%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%7BF%F$F%F$F%F$F%F$F% F$F%F$F%F$F%F$F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%7BF%F%F%F%F%F%F%F%F$F$F$ F$F$F$F$F$F%F%F%F%F%F%F%F%F$F$F$F$F$F$F$F$7BF%F$F$F%F%F$F$F%F$F%F%F$F$ F%F%F$F$F%F%F$F$F%F%F$F%F$F$F%F%F$F$F%7BF%F%F%F%F$F$F$F$F%F%F%F%F$F$F$ F$F%F%F%F%F$F$F$F$F%F%F%F%F$F$F$F$7BF$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F% F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%7BF%F%F$F$F%F%F$F$F%F%F$F$F%F%F$F$F%F%F$ F$F%F%F$F$F%F%F$F$F%F%F$F$7BF%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F% F$F%F$F%F$F%F$F%F$F%F$7BF%F$F$F%F$F%F%F$F$F%F%F$F%F$F$F%F$F%F%F$F%F$F$ F%F%F$F$F%F$F%F%F$7BF$F$F%F%F%F%F$F$F%F%F$F$F$F$F%F%F%F%F$F$F$F$F%F%F$ F$F%F%F%F%F$F$7BF%F$F$F%F%F$F$F%F$F%F%F$F$F%F%F$F%F$F$F%F%F$F$F%F$F%F% F$F$F%F%F$7BF$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$F% F$F%F$7BF$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$F%F$F%F$F%F$F%F$F$F%F$F%F$F%F$ F%7BF%F%F%F%F%F%F%F%F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F$F%F%F%F%F%F%F%F%7B F$F$F$F$F%F%F%F%F%F%F%F%F$F$F$F$F$F$F$F$F%F%F%F%F%F%F%F%F$F$F$F$7BF$F$ F$F$F%F%F%F%F%F%F%F%F$F$F$F$F%F%F%F%F$F$F$F$F$F$F$F$F%F%F%F%7BF$F$F%F% F%F%F$F$F%F%F$F$F$F$F%F%F$F$F%F%F%F%F$F$F%F%F$F$F$F$F%F%7BF$F%F$F%F%F$ F%F$F%F$F%F$F$F%F$F%F$F%F$F%F%F$F%F$F%F$F%F$F$F%F$F%7BF%F%F%F%F$F$F$F$ F$F$F$F$F%F%F%F%F$F$F$F$F%F%F%F%F%F%F%F%F$F$F$F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#k" }}}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 30 "*9.3.18. Hamming-k\303\263dok." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.3.19. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 28 "9.3.20. Polinomk\303\263dok." }}}{SECT 0 {PARA 5 " " 0 "" {TEXT 207 25 "9.3.21. CRC-k\303\263dok." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "CRC1:=modp1 (ConvertIn(x+1,x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*C onvertInG6$,&*$I\"xG6\"\"\"\"F,F,F,F*\"\"#" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 41 "CRC5USB:=modp1(ConvertIn(x^5+x^2+1,x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,(*$)I\"xG6\"\"\"&\" \"\"F.*$)F+\"\"#F.F.F.F.F+F1" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "m:=5: k:=10: L:=[0,1,1,0,1,1,1,1,1,1]; [0$'i'=1..m,op(L)];\n" } {MPLTEXT 1 0 54 "l:=modp1(ConvertIn(%,x),2); modp1(Rem(%,CRC5USB),2); \n" }{MPLTEXT 1 0 42 "modp1(Add(l,%),2); modp1(ConvertOut(%),2);" }} {PARA 11 "" 1 "" {XPPMATH 20 "7,\"\"!\"\"\"F$F#F$F$F$F$F$F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "71\"\"!F#F#F#F#F#\"\"\"F$F#F$F$F$F$F$F$" }} {PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,2*$)I\"xG6\" \"#9\"\"\"F.*$)F+\"#8F.F.*$)F+\"#7F.F.*$)F+\"#6F.F.*$)F+\"#5F.F.*$)F+ \"\"*F.F.*$)F+\"\"(F.F.*$)F+\"\"'F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,**$)I\"xG6\"\"\"%\"\"\"F.*$)F+ \"\"$F.F.*$)F+\"\"#F.F.F.F.F+F4" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&mo dp1G6$-%*ConvertInG6$,:*$)I\"xG6\"\"#9\"\"\"F.*$)F+\"#8F.F.*$)F+\"#7F. F.*$)F+\"#6F.F.*$)F+\"#5F.F.*$)F+\"\"*F.F.*$)F+\"\"(F.F.*$)F+\"\"'F.F. *$)F+\"\"%F.F.*$)F+\"\"$F.F.*$)F+\"\"#F.F.F.F.F+FL" }}{PARA 11 "" 1 "" {XPPMATH 20 "71\"\"\"\"\"!F#F#F#F$F#F#F$F#F#F#F#F#F#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "CRC8:=modp1(ConvertIn(x^8+x^2+x+1,x ),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,**$) I\"xG6\"\"\")\"\"\"F.*$)F+\"\"#F.F.*$F+F.F.F.F.F+F1" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "CRC16IBM:=modp1(ConvertIn(x^16+x^15+x^2+1, x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,**$ )I\"xG6\"\"#;\"\"\"F.*$)F+\"#:F.F.*$)F+\"\"#F.F.F.F.F+F4" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "CRC16CCITT:=modp1(ConvertIn(x^16+x^ 12+x^5+1,x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*Convert InG6$,**$)I\"xG6\"\"#;\"\"\"F.*$)F+\"#7F.F.*$)F+\"\"&F.F.F.F.F+\"\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 93 "CRC32:=modp1(ConvertIn(x^ 32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x+1,x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,@*$)I\"xG6 \"\"#K\"\"\"F.*$)F+\"#EF.F.*$)F+\"#BF.F.*$)F+\"#AF.F.*$)F+\"#;F.F.*$)F +\"#7F.F.*$)F+\"#6F.F.*$)F+\"#5F.F.*$)F+\"\")F.F.*$)F+\"\"(F.F.*$)F+\" \"&F.F.*$)F+\"\"%F.F.*$)F+\"\"#F.F.*$F+F.F.F.F.F+FR" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "CRC64ISO:=modp1(ConvertIn(x^64+x^4+x^3+x+1 ,x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,,* $)I\"xG6\"\"#k\"\"\"F.*$)F+\"\"%F.F.*$)F+\"\"$F.F.*$F+F.F.F.F.F+\"\"#" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 44 "*9.3.22. A CRC-k\303\263dok hibajelz\305\221" } {TEXT 207 2 " k" }{TEXT 207 8 "\303\251" }{TEXT 207 4 "pess" }{TEXT 207 8 "\303\251" }{TEXT 207 3 "ge." }}{PARA 0 "" 0 "" {TEXT 201 0 "" } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "modp1(Factors(CRC1),2); m:= 1; ifactor(2^m-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\"\"\"7#7$-%&mod p1G6$-%*ConvertInG6$,&*$I\"xG6\"F#F#F#F#F.\"\"#F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "modp1(Factors(CRC5USB),2); m :=5; ifactor(2^m-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\"\"\"7#7$-%&m odp1G6$-%*ConvertInG6$,(*$)I\"xG6\"\"\"&F#F#*$)F/\"\"#F#F#F#F#F/F4F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I!G6\"6#\"#J" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "p:=modp1( ConvertIn(x,x),2); modp1(Powmod(p,31,CRC5USB),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,$*$I\"xG6\"\"\"\"F,F*\"\"#" }} {PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,$\"\"\"F)I\"x G6\"\"\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "modp1(Factors( CRC8),2); m:=7; ifactor(2^m-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\" \"\"7$7$-%&modp1G6$-%*ConvertInG6$,&*$I\"xG6\"F#F#F#F#F.\"\"#F#7$-F'6$ -F*6$,0*$)F.\"\"(F#F#*$)F.\"\"'F#F#*$)F.\"\"&F#F#*$)F.\"\"%F#F#*$)F.\" \"$F#F#*$)F.F0F#F#F#F#F.F0F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"(" } }{PARA 11 "" 1 "" {XPPMATH 20 "-I!G6\"6#\"$F\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "modp1(Factors(CRC16IBM),2); m:=15; ifactor(2^m- 1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\"\"\"7$7$-%&modp1G6$-%*Convert InG6$,&*$I\"xG6\"F#F#F#F#F.\"\"#F#7$-F'6$-F*6$,(*$)F.\"#:F#F#F-F#F#F#F .F0F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#:" }}{PARA 11 "" 1 "" {XPPMATH 20 "*(-I!G6\"6#\"\"(\"\"\"-F$6#\"#JF(-F$6#\"$^\"F(" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "modp1(Powmod(p,32767,CRC16IB M),2);\n" }{MPLTEXT 1 0 38 "modp1(Powmod(p,32767/7,CRC16IBM),2);\n" } {MPLTEXT 1 0 39 "modp1(Powmod(p,32767/31,CRC16IBM),2);\n" }{MPLTEXT 1 0 40 "modp1(Powmod(p,32767/151,CRC16IBM),2);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,$\"\"\"F)I\"xG6\"\"\"#" }} {PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,0*$)I\"xG6\" \"#:\"\"\"F.*$)F+\"#7F.F.*$)F+\"#5F.F.*$)F+\"\"*F.F.*$)F+\"\"&F.F.*$)F +\"\"%F.F.F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*C onvertInG6$,0*$)I\"xG6\"\"#:\"\"\"F.*$)F+\"\"*F.F.*$)F+\"\"'F.F.*$)F+ \"\"&F.F.*$)F+\"\"%F.F.*$F+F.F.F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,4*$)I\"xG6\"\"#:\"\"\"F.*$)F+ \"#8F.F.*$)F+\"#6F.F.*$)F+\"\"*F.F.*$)F+\"\"'F.F.*$)F+\"\"&F.F.*$)F+\" \"%F.F.*$)F+\"\"$F.F.*$)F+\"\"#F.F.F+FF" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "modp1(Factors(CRC16CCITT),2); m:=15; ifactor(2^m-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\"\"\"7$7$-%&modp1G6$-%*ConvertInG6 $,&*$I\"xG6\"F#F#F#F#F.\"\"#F#7$-F'6$-F*6$,4*$)F.\"#:F#F#*$)F.\"#9F#F# *$)F.\"#8F#F#*$)F.\"#7F#F#*$)F.\"\"%F#F#*$)F.\"\"$F#F#*$)F.F0F#F#F-F#F #F#F.F0F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#:" }}{PARA 11 "" 1 "" {XPPMATH 20 "*(-I!G6\"6#\"\"(\"\"\"-F$6#\"#JF(-F$6#\"$^\"F(" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "modp1(Powmod(p,32767,CRC16CC ITT),2);\n" }{MPLTEXT 1 0 40 "modp1(Powmod(p,32767/7,CRC16CCITT),2);\n " }{MPLTEXT 1 0 41 "modp1(Powmod(p,32767/31,CRC16CCITT),2);\n" } {MPLTEXT 1 0 40 "modp1(Powmod(p,32767/151,CRC16CCITT),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,$\"\"\"F)I\"xG6\"\"\"# " }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,,*$)I\"xG 6\"\"#8\"\"\"F.*$)F+\"#6F.F.*$)F+\"#5F.F.*$)F+\"\"'F.F.*$F+F.F.F+\"\"# " }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,8*$)I\"xG 6\"\"#:\"\"\"F.*$)F+\"#9F.F.*$)F+\"#8F.F.*$)F+\"#7F.F.*$)F+\"\"*F.F.*$ )F+\"\"(F.F.*$)F+\"\"&F.F.*$)F+\"\"$F.F.*$)F+\"\"#F.F.*$F+F.F.F.F.F+FF " }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,0*$)I\"xG 6\"\"#9\"\"\"F.*$)F+\"#6F.F.*$)F+\"\"(F.F.*$)F+\"\"'F.F.*$)F+\"\"&F.F. *$F+F.F.F.F.F+\"\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "modp 1(Factors(CRC32),2); m:=32; ifactor(2^m-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\"\"\"7#7$-%&modp1G6$-%*ConvertInG6$,@*$)I\"xG6\"\"#KF# F#*$)F/\"#EF#F#*$)F/\"#BF#F#*$)F/\"#AF#F#*$)F/\"#;F#F#*$)F/\"#7F#F#*$) F/\"#6F#F#*$)F/\"#5F#F#*$)F/\"\")F#F#*$)F/\"\"(F#F#*$)F/\"\"&F#F#*$)F/ \"\"%F#F#*$)F/\"\"#F#F#*$F/F#F#F#F#F/FUF#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#K" }}{PARA 11 "" 1 "" {XPPMATH 20 "*,-I!G6\"6#\"\"$\" \"\"-F$6#\"\"&F(-F$6#\"# " 0 "" {MPLTEXT 1 0 34 "modp1(Powmod(p,2^32-1,CRC32),2);\n" } {MPLTEXT 1 0 38 "modp1(Powmod(p,(2^32-1)/3,CRC32),2);\n" }{MPLTEXT 1 0 38 "modp1(Powmod(p,(2^32-1)/5,CRC32),2);\n" }{MPLTEXT 1 0 39 "modp1( Powmod(p,(2^32-1)/17,CRC32),2);\n" }{MPLTEXT 1 0 40 "modp1(Powmod(p,(2 ^32-1)/257,CRC32),2);\n" }{MPLTEXT 1 0 40 "modp1(Powmod(p,(2^32-1)/655 37,CRC32),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertIn G6$,$\"\"\"F)I\"xG6\"\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6 $-%*ConvertInG6$,F*$)I\"xG6\"\"#I\"\"\"F.*$)F+\"#FF.F.*$)F+\"#DF.F.*$) F+\"#BF.F.*$)F+\"#AF.F.*$)F+\"#?F.F.*$)F+\"#=F.F.*$)F+\"#F.F.*$)F+\"#:F .F.*$)F+\"\"&F.F.F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1 G6$-%*ConvertInG6$,8*$)I\"xG6\"\"#E\"\"\"F.*$)F+\"#CF.F.*$)F+\"#@F.F.* $)F+\"#?F.F.*$)F+\"#>F.F.*$)F+\"#=F.F.*$)F+\"#7F.F.*$)F+\"#5F.F.*$)F+ \"\"&F.F.*$)F+\"\"%F.F.F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-% &modp1G6$-%*ConvertInG6$,<*$)I\"xG6\"\"#J\"\"\"F.*$)F+\"#GF.F.*$)F+\"# DF.F.*$)F+\"#CF.F.*$)F+\"#AF.F.*$)F+\"#=F.F.*$)F+\"#8F.F.*$)F+\"#7F.F. *$)F+\"#6F.F.*$)F+\"\"(F.F.*$)F+\"\"&F.F.*$)F+\"\"$F.F.*$)F+\"\"#F.F.F +FR" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,L*$)I \"xG6\"\"#J\"\"\"F.*$)F+\"#IF.F.*$)F+\"#HF.F.*$)F+\"#GF.F.*$)F+\"#FF.F .*$)F+\"#DF.F.*$)F+\"#@F.F.*$)F+\"#?F.F.*$)F+\"#>F.F.*$)F+\"# " 0 "" {MPLTEXT 1 0 50 "modp1(Factors(CRC64ISO),2); m:=64; ifactor(2^m-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$\"\"\"7#7$- %&modp1G6$-%*ConvertInG6$,,*$)I\"xG6\"\"#kF#F#*$)F/\"\"%F#F#*$)F/\"\"$ F#F#*$F/F#F#F#F#F/\"\"#F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#k" }} {PARA 11 "" 1 "" {XPPMATH 20 "*0-I!G6\"6#\"\"$\"\"\"-F$6#\"\"&F(-F$6# \"# " 0 "" {MPLTEXT 1 0 37 "modp1(Powmod(p,2^64-1,CRC64ISO),2); \n" }{MPLTEXT 1 0 41 "modp1(Powmod(p,(2^64-1)/3,CRC64ISO),2);\n" } {MPLTEXT 1 0 41 "modp1(Powmod(p,(2^64-1)/5,CRC64ISO),2);\n" }{MPLTEXT 1 0 42 "modp1(Powmod(p,(2^64-1)/17,CRC64ISO),2);\n" }{MPLTEXT 1 0 43 " modp1(Powmod(p,(2^64-1)/257,CRC64ISO),2);\n" }{MPLTEXT 1 0 45 "modp1(P owmod(p,(2^64-1)/65537,CRC64ISO),2);\n" }{MPLTEXT 1 0 45 "modp1(Powmod (p,(2^64-1)/6700417,CRC64ISO),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%& modp1G6$-%*ConvertInG6$,$\"\"\"F)I\"xG6\"\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,hn*$)I\"xG6\"\"#g\"\"\"F.*$)F+ \"#fF.F.*$)F+\"#cF.F.*$)F+\"#bF.F.*$)F+\"#aF.F.*$)F+\"#^F.F.*$)F+\"#[F .F.*$)F+\"#XF.F.*$)F+\"#WF.F.*$)F+\"#UF.F.*$)F+\"#TF.F.*$)F+\"#RF.F.*$ )F+\"#OF.F.*$)F+\"#NF.F.*$)F+\"#MF.F.*$)F+\"#LF.F.*$)F+\"#KF.F.*$)F+\" #HF.F.*$)F+\"#EF.F.*$)F+\"#DF.F.*$)F+\"#CF.F.*$)F+\"#BF.F.*$)F+\"#>F.F .*$)F+\"#F.F.*$)F+\"#9F.F.*$)F+\"#7F.F.*$)F+\"#6F.F.*$)F+\"#5F.F.*$ )F+\"\")F.F.*$)F+\"\"$F.F.F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,jn*$)I\"xG6\"\"#f\"\"\"F.*$)F+\"#eF.F.*$)F +\"#bF.F.*$)F+\"#aF.F.*$)F+\"#`F.F.*$)F+\"#_F.F.*$)F+\"#]F.F.*$)F+\"# \\F.F.*$)F+\"#[F.F.*$)F+\"#ZF.F.*$)F+\"#XF.F.*$)F+\"#WF.F.*$)F+\"#VF.F .*$)F+\"#PF.F.*$)F+\"#NF.F.*$)F+\"#JF.F.*$)F+\"#IF.F.*$)F+\"#HF.F.*$)F +\"#GF.F.*$)F+\"#DF.F.*$)F+\"#AF.F.*$)F+\"#@F.F.*$)F+\"#?F.F.*$)F+\"#: F.F.*$)F+\"#9F.F.*$)F+\"\"(F.F.*$)F+\"\"'F.F.*$)F+\"\"%F.F.*$)F+\"\"$F .F.*$F+F.F.F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%* ConvertInG6$,jn*$)I\"xG6\"\"#i\"\"\"F.*$)F+\"#gF.F.*$)F+\"#eF.F.*$)F+ \"#dF.F.*$)F+\"#bF.F.*$)F+\"#aF.F.*$)F+\"#_F.F.*$)F+\"#^F.F.*$)F+\"#]F .F.*$)F+\"#\\F.F.*$)F+\"#[F.F.*$)F+\"#ZF.F.*$)F+\"#YF.F.*$)F+\"#VF.F.* $)F+\"#UF.F.*$)F+\"#TF.F.*$)F+\"#SF.F.*$)F+\"#RF.F.*$)F+\"#MF.F.*$)F+ \"#LF.F.*$)F+\"#KF.F.*$)F+\"#HF.F.*$)F+\"#?F.F.*$)F+\"#>F.F.*$)F+\"#;F .F.*$)F+\"#:F.F.*$)F+\"#9F.F.*$)F+\"#7F.F.*$)F+\"\"(F.F.*$)F+\"\"'F.F. F.F.F+\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6 $,bo*$)I\"xG6\"\"#g\"\"\"F.*$)F+\"#fF.F.*$)F+\"#eF.F.*$)F+\"#_F.F.*$)F +\"#^F.F.*$)F+\"#]F.F.*$)F+\"#\\F.F.*$)F+\"#YF.F.*$)F+\"#XF.F.*$)F+\"# WF.F.*$)F+\"#VF.F.*$)F+\"#SF.F.*$)F+\"#QF.F.*$)F+\"#PF.F.*$)F+\"#MF.F. *$)F+\"#LF.F.*$)F+\"#JF.F.*$)F+\"#GF.F.*$)F+\"#FF.F.*$)F+\"#DF.F.*$)F+ \"#CF.F.*$)F+\"#BF.F.*$)F+\"#?F.F.*$)F+\"#=F.F.*$)F+\"#;F.F.*$)F+\"#:F .F.*$)F+\"#8F.F.*$)F+\"#5F.F.*$)F+\"\"*F.F.*$)F+\"\")F.F.*$)F+\"\"(F.F .*$)F+\"\"'F.F.*$)F+\"\"$F.F.*$)F+\"\"#F.F.*$F+F.F.F+F[r" }}{PARA 11 " " 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,T*$)I\"xG6\"\"#b\"\"\"F .*$)F+\"#aF.F.*$)F+\"#`F.F.*$)F+\"#_F.F.*$)F+\"#]F.F.*$)F+\"#[F.F.*$)F +\"#YF.F.*$)F+\"#TF.F.*$)F+\"#QF.F.*$)F+\"#PF.F.*$)F+\"#GF.F.*$)F+\"#E F.F.*$)F+\"#DF.F.*$)F+\"#CF.F.*$)F+\"# " 0 "" {MPLTEXT 1 0 66 "CRCcodeweigth:=proc(k::posint,crcpoly::modp1) local i ,l,L,m,s,w;\n" }{MPLTEXT 1 0 38 "m:=modp1(Degree(crcpoly),2); w:=k+m; \n" }{MPLTEXT 1 0 19 "for i to 2^k-1 do\n" }{MPLTEXT 1 0 70 " L:=conv ert(i,base,2); [0$'i'=1..m,op(L)]; modp1(ConvertIn(%,x),2);\n" } {MPLTEXT 1 0 60 " modp1(Multiply(%,crcpoly),2); L:=modp1(ConvertOut(% ),2);\n" }{MPLTEXT 1 0 43 " s:=convert(%,`+`); if sF0-F+6$-I'DegreeGF&6#F*\"\"#>F2,&F% \"\"\"F0F=?(F-F=F=,&)F:F%F=F=!\"\"I%trueGF(C)>F/-I(convertGF(6%F-I%bas eGF&F:7$-I\"$GF(6$\"\"!/.F-;F=F0-I#opGF(6#F/-F+6$-I*ConvertInG6$F(I(_s yslibGF&6$I\"%GF&I\"xGF&F:-F+6$-I)MultiplyGF&6$FenF*F:>F/-F+6$-I+Conve rtOutGFX6#FenF:>F1-FF6$FenI\"+GF(@$2F1F2>F2F1F2F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "CRCcodeweigth(4,CRC32);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "CRCcodeweigth(8,CRC32);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "CRCcodeweigth(12,CRC32);" }} {PARA 11 "" 1 "" {XPPMATH 20 "\"#7" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "CRCcodeweigth(16,CRC32);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#6" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "CRCcod eweigth(20,CRC32);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#6" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "CRCcodeweigth(4,CRC64ISO);" }} {PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "CRCcodeweigth(8,CRC64ISO);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "CRCco deweigth(12,CRC64ISO);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "CRCcodeweigth(16,CRC64ISO);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "CRCcodeweigth(20,CRC64ISO);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"&" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 12 "*9.3.23. A n" }{TEXT 207 8 "\303\251" }{TEXT 207 10 "gy Golay-k" }{TEXT 207 10 "\303\263d." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "Golay2:=modp1(ConvertIn(x^11+x^10+x^6+x^5+x^4+x ^2+1,x),2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6 $,0*$)I\"xG6\"\"#6\"\"\"F.*$)F+\"#5F.F.*$)F+\"\"'F.F.*$)F+\"\"&F.F.*$) F+\"\"%F.F.*$)F+\"\"#F.F.F.F.F+F=" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 81 "codedistribution:=proc(p::posint,k::posint,genpoly::m odp1,y) local i,j,L,m,s,S;\n" }{MPLTEXT 1 0 36 "m:=modp1(Degree(genpol y),p); S:=0;\n" }{MPLTEXT 1 0 19 "for i to p^k-1 do\n" }{MPLTEXT 1 0 50 " L:=convert(i,base,p); modp1(ConvertIn(%,x),p);\n" }{MPLTEXT 1 0 60 " modp1(Multiply(%,genpoly),p); L:=modp1(ConvertOut(%),p);\n" } {MPLTEXT 1 0 31 " [0$j=1..k+m-nops(L),op(L)];\n" }{MPLTEXT 1 0 49 " \+ s:=map(j->y[j],%); s:=convert(%,`*`); S:=S+s;\n" }{MPLTEXT 1 0 11 "od; S; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&'I\"pG6\"I'posintG%*prot ectedG'I\"kGF&F''I(genpolyGF(I&modp1GF(I\"yGF&6(I\"iGF&I\"jGF&I\"LGF&I \"mGF&I\"sGF&I\"SGF&F&F&C&>F3-F-6$-I'DegreeG6$F(I(_syslibGF&6#F,F%>F5 \"\"!?(F0\"\"\"FB,&)F%F*FBFB!\"\"I%trueGF(C*>F2-I(convertGF(6%F0I%base GF&F%-F-6$-I*ConvertInGF<6$I\"%GF&I\"xGF&F%-F-6$-I)MultiplyGF<6$FRF,F% >F2-F-6$-I+ConvertOutGF<6#FRF%7$-I\"$GF(6$F@/F1;FB,(F*FBF3FB-I%nopsGF( 6#F2FE-I#opGF(Fbo>F4-I$mapGF(6$f*6#F1F&6$I)operatorGF&I&arrowGF&F&&F.F joF&F&6$F.9'FR>F4-FJ6$FRI\"*GF(>F5,&F5FBF4FBF5F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "codedistribution(2,12,Golay2,`y`);" }} {PARA 11 "" 1 "" {XPPMATH 20 ",0*(\"$`#\"\"\")&I\"yG6\"6#\"\"!\"#;F%)& F(6#F%\"\"(F%F%*(\"$1&F%)F'\"#:F%)F.\"\")F%F%*(\"%)G\"F%)F'\"#6F%)F.\" #7F%F%*(F8F%)F'F " 0 "" {MPLTEXT 1 0 31 "alias(al pha=RootOf(x^5+2*x+1));" }}{PARA 11 "" 1 "" {XPPMATH 20 "I&alphaG6\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "beta:=Expand(alpha^22) mo d 3;" }}{PARA 11 "" 1 "" {XPPMATH 20 ",**&\"\"#\"\"\")I&alphaG6\"\"\"$ F%F%*&F$F%)F'F$F%F%F'F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "p:=Expand((x-beta)*(x-beta^3)*(x-beta^4)*(x-beta^5)*(x-beta^9)) mo d 3;" }}{PARA 11 "" 1 "" {XPPMATH 20 ",,*$)I\"xG6\"\"\"&\"\"\"F(*&\"\" #F()F%\"\"$F(F(*$)F%\"\"%F(F(F*F(*$)F%F*F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "Golay3:=modp1(ConvertIn(p,x),3);" }}{PARA 11 "" 1 "" {XPPMATH 20 "-%&modp1G6$-%*ConvertInG6$,,*$)I\"xG6\"\"\"&\"\"\"F.* $)F+\"\"%F.F.*&\"\"#F.)F+\"\"$F.F.*$)F+F3F.F.F3F.F+F5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "codedistribution(3,6,Golay3,`y`);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",D**\"#b\"\"\")&I\"yG6\"6#\"\"!\"\"'F% )&F(6#\"\"#F0F%)&F(6#F%\"\"$F%F%**F$F%F&F%)F2F0F%)F.F4F%F%**\"$5\"F%)F '\"\"&F%F1F%F7F%F%*(\"#6F%F:F%)F2F,F%F%**F9F%)F'F4F%F1F%)F.F;F%F%*(F=F %F&F%)F2F;F%F%*(F=F%F:F%)F.F,F%F%*(F=F%F&F%FAF%F%**F9F%F@F%F7F%FCF%F%* *F$F%F@F%F>F%F-F%F%**F$F%)F'F0F%F>F%F7F%F%**F$F%F@F%FEF%F6F%F%**F$F%FJ F%FEF%F1F%F%*(F=F%F>F%FAF%F%*(F=F%FCF%FEF%F%*$)F2F=F%F%*$)F.F=F%F%" }} }{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 28 "9.3.24. Vandermonde-determin" }{TEXT 207 8 "\303\2 41" }{TEXT 207 3 "ns." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 34 "9.3.25 . Reed-Solomon-k\303\263dok." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "with(PolynomialTools);" }} {PARA 11 "" 1 "" {XPPMATH 20 "73I0CoefficientListG6\"I2CoefficientVect orGF$I-GcdFreeBasisGF$I?GreatestFactorialFactorizationGF$I(HurwitzGF$I 1IsSelfReciprocalGF$I2MinimalPolynomialGF$I0PDEToPolynomialGF$I0Polyno mialToPDEGF$I0ShiftEquivalentGF$I7ShiftlessDecompositionGF$I(ShortenGF $I(ShorterGF$I%SortGF$I&SplitGF$I'SplitsGF$I*TranslateGF$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "lgn:=8; n:=2^lgn-1; M:=Nextprime(Z^ lgn,Z) mod 2; alpha:=Z+1;\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\")" }} {PARA 11 "" 1 "" {XPPMATH 20 "\"$b#" }}{PARA 11 "" 1 "" {XPPMATH 20 ", ,*$)I\"ZG6\"\"\")\"\"\"F(*$)F%\"\"%F(F(*$)F%\"\"$F(F(F%F(F(F(" }} {PARA 11 "" 1 "" {XPPMATH 20 ",&I\"ZG6\"\"\"\"F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "ordermodM:=proc(M,Z,lgn,alpha) local i,beta ; beta:=1;\n" }{MPLTEXT 1 0 21 "for i to 2^lgn-1 do\n" }{MPLTEXT 1 0 35 " beta:=modpol(beta*alpha,M,Z,2);\n" }{MPLTEXT 1 0 31 " if beta=1 then return i fi;\n" }{MPLTEXT 1 0 15 "od; FAIL end;\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 27 "ordermodM(M,Z,lgn,alpha);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6&I\"MG6\"I\"ZGF%I$lgnGF%I&alphaGF%6$I\"iGF%I%beta GF%F%F%C%>F+\"\"\"?(F*F.F.,&)\"\"#F'F.F.!\"\"I%trueG%*protectedGC$>F+- I'modpolGF%6&*&F+F.F(F.F$F&F2@$/F+F.OF*I%FAILGF5F%F%F%" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$b#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 " m:=16; g:=mul((z-alpha^i),i=1..m);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\" #;" }}{PARA 11 "" 1 "" {XPPMATH 20 "*B,(I\"zG6\"\"\"\"I\"ZGF%!\"\"F&F( F&,&F$F&*$),&F'F&F&F&\"\"#F&F(F&,&F$F&*$)F,\"\"$F&F(F&,&F$F&*$)F,\"\"% F&F(F&,&F$F&*$)F,\"\"&F&F(F&,&F$F&*$)F,\"\"'F&F(F&,&F$F&*$)F,\"\"(F&F( F&,&F$F&*$)F,\"\")F&F(F&,&F$F&*$)F,\"\"*F&F(F&,&F$F&*$)F,\"#5F&F(F&,&F $F&*$)F,\"#6F&F(F&,&F$F&*$)F,\"#7F&F(F&,&F$F&*$)F,\"#8F&F(F&,&F$F&*$)F ,\"#9F&F(F&,&F$F&*$)F,\"#:F&F(F&,&F$F&*$)F,\"#;F&F(F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "normalizepolyzZ:=proc(p,M)\n" } {MPLTEXT 1 0 10 "local i;\n" }{MPLTEXT 1 0 37 "CoefficientList(expand( p) mod 2,z);\n" }{MPLTEXT 1 0 28 "map(x->modpol(x,M,Z,2),%);\n" } {MPLTEXT 1 0 45 "add(%[i]*z^(i-1),i=1..nops(%)); sort(%); end;" }} {PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"pG6\"I\"MGF%6#I\"iGF%F%F%C&-_I0Po lynomialToolsG6$%*protectedGI(_syslibGF%I0CoefficientListGF%6$-I$modGF %6$-I'expandGF.6#F$\"\"#I\"zGF%-I$mapGF.6$f*6#I\"xGF%F%6$I)operatorGF% I&arrowGF%F%-I'modpolGF-6&F?F&I\"ZGF%F8F%F%6$F&9%I\"%GF%-I$addGF.6$*&& FIF'\"\"\")F9,&F(FOFO!\"\"FO/F(;FO-I%nopsGF.6#FI-I%sortGF.FWF%F%F%" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "g:=normalizepolyzZ(g,M);" } }{PARA 11 "" 1 "" {XPPMATH 20 ",L*$)I\"zG6\"\"#;\"\"\"F(*&,**$)I\"ZGF& \"\"'F(F(*$)F-\"\"&F(F(*$)F-\"\"%F(F(F(F(F()F%\"#:F(F(*&,*F/F(*$)F-\" \"#F(F(F-F(F(F(F()F%\"#9F(F(*&,(F+F(F/F(F(F(F()F%\"#8F(F(*&,(F2F(*$)F- \"\"$F(F(F(F(F()F%\"#7F(F(*&,*F+F(F/F(FDF(F(F(F()F%\"#6F(F(*&)F%\"\"(F (F3F(F(*&,.F+F(F/F(F2F(FDF(F9F(F-F(F()F%\"#5F(F(*&,(*$)F-FOF(F(F+F(F2F (F()F%\"\"*F(F(*&,*FVF(F2F(F9F(F-F(F()F%\"\")F(F(*&,*F/F(FDF(F9F(F(F(F ()F%F.F(F(F+F(*&,,FVF(F+F(F2F(FDF(F-F(F()F%F1F(F(*&,(F/F(F-F(F(F(F()F% F4F(F(F2F(*&,*F+F(F/F(F-F(F(F(F()F%FFF(F(FDF(*&,(F+F(F9F(F(F(F()F%F;F( F(F9F(*&,*F/F(F2F(FDF(F(F(F(F%F(F(F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "rnd:=rand(2^lgn): k:=n-m; mv:=Vector(k); for i to k d o mv[i]:=rnd(i) od:\n" }{MPLTEXT 1 0 57 "mv[1]; mv:=map(x->convert(x,b ase,2),mv): mv[1]; i:='i':\n" }{MPLTEXT 1 0 55 "mv:=map(x->sum(x[i]*Z^ (i-1),i=1..nops(x)),mv): mv[1];\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$ R#" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,Types ettingGI(_syslibGF'6%-I#miGF$6%Q#mvF'/%'italicGQ%trueF'/%,mathvariantG Q'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorG F=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'acce ntGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsi zeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mactionGF$6$-I(mfencedGF$6%-I'mtabl eGF$6&-I$mtrGF$6#-I$mtdGF$6#-F#6$-F,6%Q+~1~..~239~F'F/F2-I%msubGF$6%-F ,6%Q'VectorF'F/F2-F#6#-F,6%Q'columnF'F/F2/%/subscriptshiftGQ\"0F'-F\\o 6#-F_o6#-F#6$-F,6%Q,Data~Type:~F'F/F2-F,6%Q)anythingF'F/F2-F\\o6#-F_o6 #-F#6$-F,6%Q*Storage:~F'F/F2-F,6%Q,rectangularF'F/F2-F\\o6#-F_o6#-F#6$ -F,6%Q(Order:~F'F/F2-F,6%Q.Fortran_orderF'F/F2/%%openGQ\"[F'/%&closeGQ \"]F'/%+actiontypeGQ-browsertableF'" }}{PARA 11 "" 1 "" {XPPMATH 20 " \"$D#" }}{PARA 11 "" 1 "" {XPPMATH 20 "7*\"\"\"\"\"!F$F$F$F#F#F#" }} {PARA 11 "" 1 "" {XPPMATH 20 ",*\"\"\"F#*$)I\"ZG6\"\"\"&F#F#*$)F&\"\"' F#F#*$)F&\"\"(F#F#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "c:=ad d(mv[i]*z^(i-1),i=1..k)*g;\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "*&,`il\" \"\"F$*&,(*$)I\"ZG6\"\"\"#F$F$*$)F)\"\"&F$F$*$)F)\"\"(F$F$F$)I\"zGF*\" $'=F$F$*&,,F$F$F)F$F'F$*$)F)\"\"%F$F$*$)F)\"\"'F$F$F$)F3\"$(=F$F$*&,*F 7F$F,F$F:F$F/F$F$)F3\"$)=F$F$*&,*F$F$F7F$F,F$F/F$F$)F3\"$*=F$F$*&,(*$) F)\"\"$F$F$F,F$F:F$F$)F3\"$!>F$F$*&,&F'F$F,F$F$)F3\"$\">F$F$*&,,F/F$F: F$FIF$F)F$F$F$F$)F3\"$#>F$F$*&,,F:F$F7F$FIF$F'F$F)F$F$)F3\"$$>F$F$*&,* F$F$F)F$F'F$F/F$F$)F3\"$%>F$F$*&,,F$F$F)F$FIF$F7F$F:F$F$)F3\"$&>F$F$*& ,.F'F$FIF$F7F$F,F$F:F$F/F$F$)F3\"$'>F$F$*&,.F$F$F/F$F:F$F7F$FIF$F)F$F$ )F3\"$(>F$F$*&,&F$F$F/F$F$)F3\"$)>F$F$*&,,F/F$F,F$F7F$F)F$F$F$F$)F3\"# %*F$F$*&,*F,F$F7F$FIF$F$F$F$)F3\"#'*F$F$*&,&F)F$F:F$F$)F3\"#(*F$F$*&,, F$F$F7F$F,F$F:F$F/F$F$)F3\"#)*F$F$*&,*FIF$F7F$F,F$F:F$F$)F3\"#**F$F$*& ,(F/F$F:F$F7F$F$)F3\"$+\"F$F$*&F;F$)F3\"$,\"F$F$*&,(F'F$F:F$F/F$F$)F3 \"$-\"F$F$*&FeoF$)F3\"$.\"F$F$*&,(F,F$F)F$F$F$F$)F3\"$/\"F$F$*&,,F'F$F IF$F7F$F,F$F/F$F$)F3\"$0\"F$F$*&,*F$F$F)F$F7F$F:F$F$)F3\"$1\"F$F$*&,0F $F$F)F$F'F$FIF$F7F$F:F$F/F$F$)F3\"$2\"F$F$*&,0F$F$F:F$F,F$F7F$FIF$F'F$ F)F$F$)F3\"#&*F$F$*&F&F$)F3\"#rF$F$*&,.F$F$F)F$F'F$FIF$F,F$F:F$F$)F3\" #sF$F$*&,(F)F$FIF$F:F$F$)F3\"#tF$F$*&,&F)F$F$F$F$)F3\"#uF$F$*&,,F/F$F: F$F7F$FIF$F)F$F$)F3\"#vF$F$*&,*F$F$F/F$F7F$F'F$F$)F3\"#wF$F$*&,*F,F$F' F$F)F$F$F$F$)F3\"#xF$F$*&F]pF$)F3\"#yF$F$*&,,F'F$FIF$F7F$F:F$F/F$F$)F3 \"#zF$F$*&,*F$F$F,F$F:F$F/F$F$)F3\"#!)F$F$*&,*F)F$FIF$F,F$F:F$F$)F3\"# \")F$F$*&,&F)F$FIF$F$)F3\"##)F$F$*&,*F7F$FIF$F'F$F$F$F$)F3\"#$)F$F$*&, (F$F$F'F$F/F$F$)F3\"#%)F$F$*&,,F$F$F)F$F'F$FIF$F7F$F$)F3\"#&)F$F$*&Fft F$)F3\"#')F$F$*&,,F$F$F:F$F,F$F7F$F)F$F$)F3\"#()F$F$*&,,F$F$F/F$F7F$F' F$F)F$F$)F3\"#))F$F$*&,,F$F$F)F$F'F$FIF$F:F$F$)F3\"#*)F$F$*&,.F$F$F:F$ F7F$FIF$F'F$F)F$F$)F3\"#!*F$F$*&FiuF$)F3\"#\"*F$F$*&,(F)F$F'F$F7F$F$)F 3\"##*F$F$*&,(FIF$F,F$F/F$F$)F3\"#$*F$F$*&,&F,F$F:F$F$)F3\"$*>F$F$*&,* F$F$F)F$FIF$F,F$F$)F3\"$+#F$F$*&FJF$)F3\"$,#F$F$*&F]vF$)F3\"$-#F$F$*&, *F/F$FIF$F'F$F$F$F$)F3\"$.#F$F$*&,*F:F$F,F$FIF$F'F$F$)F3\"$/#F$F$*&,*F )F$F'F$FIF$F:F$F$)F3\"$0#F$F$*&,.F)F$F'F$F7F$F,F$F:F$F/F$F$)F3\"$1#F$F $*&F@F$)F3\"$2#F$F$*&,&FIF$F:F$F$)F3\"$3#F$F$*&,&F'F$F7F$F$)F3\"$4#F$F $*&,*F:F$FIF$F'F$F$F$F$)F3\"$5#F$F$*&,&F7F$F,F$F$)F3\"$6#F$F$*&,0F$F$F /F$F:F$F,F$F7F$FIF$F)F$F$)F3\"$7#F$F$*&F]uF$)F3\"$8#F$F$*&F\\wF$)F3\"$ 9#F$F$*&,(F)F$F'F$FIF$F$)F3\"$:#F$F$*&,,F$F$F,F$F7F$F'F$F)F$F$)F3\"$;# F$F$*&,&F'F$F:F$F$)F3\"$<#F$F$*&,&F7F$F/F$F$)F3\"$=#F$F$*&,(F/F$F7F$F' F$F$)F3\"$>#F$F$*&,(F$F$FIF$F,F$F$)F3\"$?#F$F$*&Fb]lF$)F3\"$@#F$F$*&,( F'F$F,F$F:F$F$)F3\"$A#F$F$*&,,F$F$F7F$FIF$F'F$F:F$F$)F3\"$]\"F$F$*&Fio F$)F3\"$^\"F$F$*&,*F$F$F)F$F'F$FIF$F$)F3\"$_\"F$F$*&,*F'F$FIF$F7F$F/F$ F$)F3\"$`\"F$F$*&,(F)F$F7F$F,F$F$)F3\"$a\"F$F$*&,&F)F$F/F$F$)F3\"$b\"F $F$*&,*F/F$F:F$F,F$FIF$F$)F3\"$c\"F$F$*&,*F'F$FIF$F,F$F/F$F$)F3\"$d\"F $F$*&,(F/F$F:F$F)F$F$)F3\"$e\"F$F$*&,,F$F$F)F$F'F$F,F$F/F$F$)F3\"$f\"F $F$*&,(F)F$F'F$F:F$F$)F3\"$g\"F$F$*&FHF$)F3\"$h\"F$F$*&,(F$F$FIF$F:F$F $)F3\"$i\"F$F$*&Fd[lF$)F3\"$j\"F$F$*&,.F$F$F)F$FIF$F7F$F,F$F/F$F$)F3\" $k\"F$F$*&FdqF$)F3\"$l\"F$F$*&,,FIF$F7F$F,F$F:F$F/F$F$)F3\"$m\"F$F$*&F -F$)F3\"$n\"F$F$*&,,F$F$F'F$FIF$F7F$F/F$F$)F3\"$o\"F$F$*&F0F$)F3\"$p\" F$F$*&,*F)F$F7F$F:F$F/F$F$)F3\"$q\"F$F$*&,&FIF$F/F$F$)F3\"$r\"F$F$*&FH F$)F3\"$s\"F$F$*&,.F/F$F:F$F,F$F7F$FIF$F)F$F$)F3\"$t\"F$F$*&,.F$F$F)F$ F'F$FIF$F7F$F,F$F$)F3\"$u\"F$F$*&,(F)F$FIF$F,F$F$)F3\"$v\"F$F$*&,*FIF$ F7F$F,F$F/F$F$)F3\"$w\"F$F$*&FioF$)F3\"$x\"F$F$*&,.F/F$F,F$F7F$FIF$F'F $F$F$F$)F3\"$y\"F$F$*&,,F$F$F'F$FIF$F,F$F/F$F$)F3\"$z\"F$F$*&,.F:F$F,F $F7F$FIF$F'F$F)F$F$)F3\"$!=F$F$*&FiyF$)F3\"$\"=F$F$*&FSF$)F3\"$#=F$F$* &FJF$)F3\"$$=F$F$*&FepF$)F3\"$%=F$F$*&,*F'F$F7F$F,F$F/F$F$)F3\"$&=F$F$ *&F(F$)F3\"$B#F$F$*&,,F$F$FIF$F7F$F,F$F/F$F$)F3\"$C#F$F$*&F)F$)F3\"$D# F$F$*&,*F$F$F'F$F7F$F:F$F$)F3\"$E#F$F$*&,.F$F$F'F$F7F$F,F$F:F$F/F$F$)F 3\"$F#F$F$*&,,F)F$F'F$F7F$F,F$F/F$F$)F3\"$G#F$F$*&,(F,F$F:F$F/F$F$)F3 \"$H#F$F$*&FjsF$)F3\"$I#F$F$*&FinF$)F3\"$J#F$F$*&,*F,F$FIF$F'F$F$F$F$) F3\"$K#F$F$*&FepF$)F3\"$L#F$F$*&,.F$F$F)F$F'F$F7F$F:F$F/F$F$)F3\"$M#F$ F$*&,(F$F$F,F$F/F$F$)F3\"$N#F$F$*&FepF$)F3\"$O#F$F$*&,*F$F$F/F$F:F$F)F $F$)F3\"$P#F$F$*&Fd[lF$)F3\"$Q#F$F$F,F$*&,.F$F$F'F$FIF$F7F$F:F$F/F$F$) F3\"$3\"F$F$F:F$*&,,F)F$F'F$FIF$F7F$F/F$F$)F3\"$4\"F$F$*&F]qF$)F3\"$5 \"F$F$*&,*F)F$F'F$FIF$F7F$F$)F3\"$6\"F$F$*&,*F$F$F'F$F7F$F,F$F$)F3\"$7 \"F$F$*&FapF$)F3\"$8\"F$F$*&F@F$)F3\"$9\"F$F$*&,,F)F$FIF$F7F$F,F$F/F$F $)F3\"$:\"F$F$*&,,F)F$F'F$F,F$F:F$F/F$F$)F3\"$;\"F$F$*&,&F$F$F:F$F$)F3 \"$<\"F$F$*&,*F$F$F)F$FIF$F/F$F$)F3\"$=\"F$F$*&,(F7F$F,F$F/F$F$)F3\"$> \"F$F$*&F]^lF$)F3\"$?\"F$F$*&,*F$F$FIF$F7F$F:F$F$)F3\"$@\"F$F$*&,&F)F$ F,F$F$)F3\"$A\"F$F$*&Fb\\lF$)F3\"$B\"F$F$*&,*F$F$FIF$F7F$F/F$F$)F3\"$C \"F$F$*&,*F:F$F,F$F)F$F$F$F$)F3\"$D\"F$F$*&,,F$F$F'F$F7F$F,F$F:F$F$)F3 \"$E\"F$F$*&F`wF$)F3\"$F\"F$F$*&FenF$)F3\"$G\"F$F$*&,.F)F$F'F$FIF$F7F$ F,F$F/F$F$)F3\"$H\"F$F$*&F`[lF$)F3\"$I\"F$F$*&,*F/F$F7F$F'F$F)F$F$)F3 \"$J\"F$F$*&FhzF$)F3\"$L\"F$F$*&FbtF$)F3\"$M\"F$F$*&,.F$F$F'F$FIF$F,F$ F:F$F/F$F$)F3\"$K\"F$F$*&,*F$F$F)F$F'F$F:F$F$F3F$F$*&F\\wF$)F3F+F$F$*& ,.F)F$F'F$FIF$F,F$F:F$F/F$F$)F3FKF$F$*&FeoF$)F3F9F$F$*&FhzF$)F3F.F$F$* &,(F'F$F7F$F:F$F$)F3FF$F$*&,,F)F$FIF$F,F $F:F$F/F$F$)F3\"#?F$F$*&,*F$F$F)F$F7F$F,F$F$)F3\"#@F$F$*&,2F$F$F)F$F'F $FIF$F7F$F,F$F:F$F/F$F$)F3\"#AF$F$*&,(FIF$F7F$F/F$F$)F3\"#BF$F$*&FazF$ )F3\"#CF$F$*&FHF$)F3\"#EF$F$*&,(F7F$F,F$F:F$F$)F3\"#FF$F$*&F^]mF$)F3\" #GF$F$*&,&F$F$F7F$F$)F3\"#HF$F$*&,*F)F$FIF$F,F$F/F$F$)F3\"#IF$F$*&F\\w F$)F3\"#JF$F$*&FgglF$)F3\"#KF$F$*&FiyF$)F3\"#LF$F$*&FftF$)F3\"#MF$F$*& F8F$)F3\"#NF$F$*&,*F$F$F'F$F:F$F/F$F$)F3\"#OF$F$*&F`gmF$)F3\"#PF$F$*&, &F7F$F:F$F$)F3\"#QF$F$*&,,F)F$F'F$F7F$F:F$F/F$F$)F3\"#RF$F$*&F`ilF$)F3 \"#SF$F$*&F]blF$)F3\"#TF$F$*&,*F'F$F7F$F:F$F/F$F$)F3\"#UF$F$*&F_clF$)F 3\"#VF$F$*&FHF$)F3\"#WF$F$*&FgilF$)F3\"#XF$F$*&,(F)F$F7F$F:F$F$)F3\"#Y F$F$*&FbcmF$)F3\"#ZF$F$*&F``mF$)F3\"#DF$F$*&FhzF$)F3\"$X\"F$F$F/F$*&F[ _mF$)F3\"#[F$F$*&F`jmF$)F3\"#]F$F$*&F[rF$)F3\"#^F$F$*&,*F$F$F)F$F,F$F/ F$F$)F3\"#_F$F$*&FbemF$)F3\"#`F$F$*&FftF$)F3\"#aF$F$*&F_\\mF$)F3\"#bF$ F$*&,*F)F$F'F$F7F$F:F$F$)F3\"#cF$F$*&,,F$F$F)F$F'F$FIF$F/F$F$)F3\"#dF$ F$*&F[cmF$)F3\"#eF$F$*&F]imF$)F3\"#fF$F$*&FdbmF$)F3\"#gF$F$*&,*F'F$FIF $F7F$F,F$F$)F3\"#hF$F$*&,*F)F$F'F$FIF$F,F$F$)F3\"#iF$F$*&,*F$F$F)F$FIF $F7F$F$)F3\"#jF$F$*&,*F)F$FIF$F:F$F/F$F$)F3\"#kF$F$*&F)F$)F3\"#lF$F$*& ,&F'F$F/F$F$)F3\"#mF$F$*&FbdmF$)F3\"#nF$F$*&F[\\mF$)F3\"#oF$F$*&FeuF$) F3\"#pF$F$*&FiuF$)F3\"#qF$F$*&F]^mF$)F3\"#\\F$F$F$,L*$F^fmF$F$*&,*F:F$ F,F$F7F$F$F$F$F[fmF$F$*&FftF$FgemF$F$*&F[cmF$FcemF$F$*&,(F7F$FIF$F$F$F $F_emF$F$*&,*F:F$F,F$FIF$F$F$F$F[emF$F$*&F_amF$F8F$F$*&FaelF$FhamF$F$* &F]qF$FdamF$F$*&Fb_mF$FaamF$F$*&FehlF$F\\amF$F$F:F$*&F^tF$Fi`mF$F$*&F[ rF$Fg`mF$F$F7F$*&F]^mF$Fe`mF$F$FIF$*&,(F:F$F'F$F$F$F$Fb`mF$F$F'F$*&F]p F$F3F$F$F$F$F$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "c:=normal izepolyzZ(c,M);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",^[m*&,&*$)I\"ZG6\"\" \"&\"\"\"F**$)F'\"\"%F*F*F*)I\"zGF(\"$a#F*F**&F$F*)F/\"$`#F*F**&,(*$)F '\"\"'F*F**$)F'\"\"$F*F*F*F*F*)F/\"$_#F*F**&,(F6F*F%F*F+F*F*)F/\"$^#F* F**&,&F%F*F'F*F*)F/\"$]#F*F**&,&F9F*F'F*F*)F/\"$\\#F*F**&,**$)F'\"\"(F *F*F+F**$)F'\"\"#F*F*F'F*F*)F/\"$[#F*F**&,.FLF*F+F*F9F*FOF*F'F*F*F*F*) F/\"$Z#F*F**&,(FLF*F+F*F9F*F*)F/\"$Y#F*F**&,0FLF*F6F*F%F*F+F*F9F*FOF*F *F*F*)F/\"$X#F*F**&,,F6F*F%F*FOF*F'F*F*F*F*)F/\"$W#F*F**&,&F9F*F*F*F*) F/\"$V#F*F**&,(F9F*FOF*F'F*F*)F/\"$U#F*F**&)F/\"$O#F*F7F*F**&,&F6F*F+F *F*)F/\"$T#F*F**&,&F%F*F*F*F*)F/\"$S#F*F**&,*F6F*F%F*F9F*F*F*F*)F/\"$R #F*F**&,,FLF*F%F*F9F*FOF*F'F*F*)F/\"$Q#F*F**&FbpF*)F/\"$P#F*F**&FGF*)F /\"$N#F*F**&,*F6F*F%F*FOF*F'F*F*)F/\"$M#F*F**&,&F'F*F*F*F*)F/\"$L#F*F* *&)F/\"$K#F*F'F*F**&,*F%F*F9F*F'F*F*F*F*)F/\"$J#F*F**&,(F%F*F'F*F*F*F* )F/\"$I#F*F**&)F/\"$H#F*F'F*F**&,(FLF*F6F*F%F*F*)F/\"$G#F*F**&,,FLF*F6 F*F+F*F9F*FOF*F*)F/\"$F#F*F**&,(F9F*FOF*F*F*F*)F/\"$E#F*F**&,.F6F*F%F* F+F*FOF*F'F*F*F*F*)F/\"$D#F*F**&,*F6F*F+F*F9F*F'F*F*)F/\"$C#F*F**&,&FO F*F*F*F*)F/\"$B#F*F**&,&F6F*F*F*F*)F/\"$A#F*F**&,(FLF*F9F*F*F*F*)F/\"$ @#F*F**&,(F%F*F+F*F9F*F*)F/\"$?#F*F**&,*F%F*F+F*F9F*FOF*F*)F/\"$>#F*F* *&,*F6F*F+F*FOF*F*F*F*)F/\"$=#F*F**&,,FLF*F6F*F+F*F9F*F*F*F*)F/\"$<#F* F**&,,F6F*F%F*F9F*F'F*F*F*F*)F/\"$;#F*F**&F?F*)F/\"$:#F*F**&,(FLF*F6F* F+F*F*)F/\"$9#F*F**&,*FLF*F%F*F9F*FOF*F*)F/\"$8#F*F**&FbuF*)F/\"$7#F*F **&,&FLF*F*F*F*)F/\"$6#F*F**&,(F%F*F+F*F'F*F*)F/\"$5#F*F**&,.FLF*F%F*F 9F*FOF*F'F*F*F*F*)F/\"$4#F*F**&F\\wF*)F/\"$3#F*F**&,(F%F*F9F*F*F*F*)F/ \"$2#F*F**&,(FLF*F+F*F*F*F*)F/\"$1#F*F**&,,FLF*F6F*F9F*FOF*F*F*F*)F/\" $0#F*F**&,0FLF*F6F*F%F*F+F*F9F*F'F*F*F*F*)F/\"$/#F*F**&,,FLF*F%F*F9F*F 'F*F*F*F*)F/\"$.#F*F**&,(FLF*FOF*F'F*F*)F/\"$,#F*F**&F_oF*)F/\"$+#F*F* *&,(FLF*F9F*F'F*F*)F/\"$*>F*F**&,*F6F*F9F*FOF*F*F*F*)F/\"$)>F*F**&,,FL F*F6F*F9F*FOF*F'F*F*)F/\"$(>F*F**&,*F%F*F+F*F9F*F*F*F*)F/\"$'>F*F**&,, FLF*F6F*F+F*FOF*F*F*F*)F/\"$&>F*F**&FbyF*)F/\"$%>F*F**&,&F+F*F*F*F*)F/ \"$$>F*F**&F^uF*)F/\"$#>F*F**&,(FLF*F+F*FOF*F*)F/\"$\">F*F**&,,F6F*F%F *F+F*F9F*FOF*F*)F/\"$!>F*F**&,.FLF*F%F*F+F*F9F*F'F*F*F*F*)F/\"$*=F*F** &F^zF*)F/\"$)=F*F**&,,F6F*F%F*F+F*F9F*F*F*F*)F/\"$(=F*F**&FftF*)F/\"$' =F*F**&,*FLF*F6F*F%F*F*F*F*)F/\"$&=F*F**&F_rF*)F/\"$%=F*F**&,.FLF*F6F* F+F*F9F*FOF*F*F*F*)F/\"$$=F*F**&,,FLF*F6F*F%F*F9F*F*F*F*)F/\"$#=F*F**& FdqF*)F/\"$\"=F*F**&,*F+F*FOF*F'F*F*F*F*)F/\"$!=F*F**&F[yF*)F/\"$z\"F* F**&,.FLF*F6F*F9F*FOF*F'F*F*F*F*)F/\"$y\"F*F**&,,F6F*F+F*F9F*FOF*F'F*F *)F/\"$x\"F*F**&,*FLF*F+F*F9F*FOF*F*)F/\"$w\"F*F**&,(F6F*F%F*F'F*F*)F/ \"$v\"F*F**&FbtF*)F/\"$u\"F*F**&F[oF*)F/\"$t\"F*F**&,*FLF*F6F*F%F*FOF* F*)F/\"$s\"F*F**&,(F6F*F+F*F9F*F*)F/\"$r\"F*F**&F$F*)F/\"$q\"F*F**&,*F LF*F6F*F%F*F9F*F*)F/\"$p\"F*F**&FhvF*)F/\"$o\"F*F**&,*FLF*F%F*F9F*F'F* F*)F/\"$n\"F*F**&,&F9F*FOF*F*)F/\"$m\"F*F**&FbtF*)F/\"$l\"F*F**&F[oF*) F/\"$k\"F*F**&,&FLF*F9F*F*)F/\"$j\"F*F**&,*FLF*F%F*F+F*FOF*F*)F/\"$i\" F*F**&,,FLF*F+F*F9F*FOF*F'F*F*)F/\"$h\"F*F**&F^zF*)F/\"$g\"F*F**&Fc^lF *)F/\"$f\"F*F**&,&FLF*F+F*F*)F/\"$e\"F*F**&FavF*)F/\"$d\"F*F**&,.FLF*F 6F*F+F*F9F*F'F*F*F*F*)F/\"$c\"F*F**&,*F+F*F9F*F'F*F*F*F*)F/\"$b\"F*F** &,(FLF*F%F*F9F*F*)F/\"$a\"F*F**&,*F6F*F%F*F9F*FOF*F*)F/\"$`\"F*F**&,*F LF*F6F*F+F*F'F*F*)F/\"$_\"F*F**&FYF*)F/\"$^\"F*F**&,,F6F*F%F*F+F*F'F*F *F*F*)F/\"$]\"F*F**&F[alF*)F/\"$\\\"F*F**&,.FLF*F6F*F%F*F9F*F'F*F*F*F* )F/\"$[\"F*F**&,(F6F*F%F*F*F*F*)F/\"$Z\"F*F**&FfrF*)F/\"$Y\"F*F**&,*F6 F*F%F*F+F*FOF*F*)F/\"$X\"F*F**&FbpF*)F/\"$W\"F*F**&,.FLF*F6F*F%F*F+F*F OF*F'F*F*)F/\"$V\"F*F**&FKF*)F/\"$U\"F*F**&,(F+F*FOF*F'F*F*)F/\"$T\"F* F**&,*F9F*FOF*F'F*F*F*F*)F/\"$S\"F*F**&,*F%F*F+F*FOF*F*F*F*)F/\"$R\"F* F**&,*F6F*F%F*F+F*F*F*F*)F/\"$Q\"F*F**&,&FOF*F'F*F*)F/\"$P\"F*F**&Ff \\lF*)F/\"$O\"F*F**&,*F+F*F9F*FOF*F*F*F*)F/\"$N\"F*F**&FavF*)F/\"$M\"F *F**&F[yF*)F/\"$L\"F*F**&,(FLF*F%F*F*F*F*)F/\"$K\"F*F**&FgnF*)F/\"$J\" F*F**&Fh[lF*)F/\"$I\"F*F**&FbpF*)F/\"$H\"F*F**&,*F%F*FOF*F'F*F*F*F*)F/ \"$G\"F*F**&F_oF*)F/\"$F\"F*F**&,,F6F*F%F*F+F*F9F*F'F*F*)F/\"$E\"F*F** &,.F6F*F%F*F9F*FOF*F'F*F*F*F*)F/\"$D\"F*F**&FjtF*)F/\"$C\"F*F**&F`wF*) F/\"$B\"F*F**&Fh[lF*)F/\"$A\"F*F**&F_xF*)F/\"$@\"F*F**&F\\hlF*)F/\"$? \"F*F**&FfhlF*)F/\"$>\"F*F**&,,FLF*F%F*F9F*FOF*F*F*F*)F/\"$=\"F*F**&,* FLF*F6F*F+F*FOF*F*)F/\"$<\"F*F**&Ff\\lF*)F/\"$;\"F*F**&,(F+F*F'F*F*F*F *)F/\"$:\"F*F**&,*FLF*F+F*F9F*F*F*F*)F/\"$9\"F*F**&,&F+F*FOF*F*)F/\"$8 \"F*F**&Fh]lF*)F/\"$7\"F*F**&Fh[lF*)F/\"$6\"F*F**&FjoF*)F/\"$5\"F*F**& FizF*)F/\"$4\"F*F**&,.F6F*F%F*F+F*F9F*FOF*F'F*F*)F/\"$3\"F*F**&,&F+F*F 9F*F*)F/\"$2\"F*F**&,*F6F*F%F*F+F*F9F*F*)F/\"$1\"F*F**&,&FLF*F%F*F*)F/ \"$0\"F*F**&F^clF*)F/\"$/\"F*F**&FgwF*)F/\"$.\"F*F**&,*F%F*F+F*F'F*F*F *F*)F/\"$-\"F*F**&)F/\"#)*F*F,F*F**&FbuF*)F/\"$,\"F*F**&,.FLF*F%F*F+F* F9F*FOF*F'F*F*)F/\"$+\"F*F**&,,FLF*F%F*F+F*F9F*FOF*F*)F/\"#**F*F**&)F/ \"#$*F*F7F*F**&,,F6F*F%F*F+F*FOF*F*F*F*)F/\"#(*F*F**&,(F+F*F9F*FOF*F*) F/\"#'*F*F**&,(F6F*F%F*F9F*F*)F/\"#&*F*F**&,0FLF*F6F*F%F*F+F*FOF*F'F*F *F*F*)F/\"#%*F*F**&,(F6F*F%F*FOF*F*)F/\"##*F*F**&,.F6F*F+F*F9F*FOF*F'F *F*F*F*)F/\"#\"*F*F**&F_\\lF*)F/\"#!*F*F**&F[rF*)F/\"#*)F*F**&,(FLF*F6 F*F*F*F*)F/\"#))F*F**&FbamF*)F/\"#()F*F**&F[`mF*)F/\"#')F*F**&,.FLF*F% F*F+F*F9F*FOF*F*F*F*)F/\"#&)F*F**&,.FLF*F6F*F%F*FOF*F'F*F*F*F*)F/\"#%) F*F**&,*F%F*F9F*FOF*F*F*F*)F/\"#$)F*F**&F^cmF*)F/\"##)F*F**&,*F6F*F+F* F'F*F*F*F*)F/\"#\")F*F**&)F/\"#zF*FPF*F**&FcxF*)F/\"#!)F*F**&F^pF*)F/ \"#yF*F**&F]]lF*)F/\"#xF*F**&,.FLF*F6F*F%F*F+F*FOF*F*F*F*)F/\"#wF*F**& ,,FLF*F6F*FOF*F'F*F*F*F*)F/\"#vF*F**&)F/\"#qF*F&F*F**&,,FLF*F%F*F+F*F9 F*F'F*F*)F/\"#tF*F**&FidmF*)F/\"#sF*F**&,&F6F*FOF*F*)F/\"#rF*F**&F^jlF *)F/\"#pF*F**&,*F+F*F9F*FOF*F'F*F*)F/\"#oF*F**&,0FLF*F6F*F%F*F+F*F9F*F OF*F'F*F*)F/\"#nF*F**&,(F%F*F+F*FOF*F*)F/\"#mF*F**&,*FLF*F9F*FOF*F'F*F *)F/\"#lF*F**&Fg^lF*)F/\"#kF*F**&FfhlF*)F/\"#jF*F**&,,F6F*F%F*F+F*FOF* F'F*F*)F/\"#iF*F**&F_\\lF*)F/\"#hF*F**&Fb`mF*)F/\"#gF*F**$)F/\"#fF*F** &,,FLF*F6F*F+F*F9F*F'F*F*)F/\"#eF*F**&FcilF*)F/\"#dF*F**&FjsF*)F/\"#cF *F**&,.F%F*F+F*F9F*FOF*F'F*F*F*F*)F/\"#bF*F**&)F/\"#_F*FPF*F**&,(F%F*F +F*F*F*F*)F/\"#`F*F**&FjtF*)F/\"#^F*F**&,.FLF*F6F*F%F*F9F*FOF*F*F*F*)F /\"#]F*F**&,0FLF*F%F*F+F*F9F*FOF*F'F*F*F*F*)F/\"#\\F*F**&FjtF*)F/\"#[F *F**&F^gmF*)F/\"#ZF*F**&FgblF*)F/\"#YF*F**&,.F6F*F%F*F+F*F9F*F'F*F*F*F *)F/\"#XF*F**&,,F%F*F+F*F9F*FOF*F'F*F*)F/\"#WF*F**&FjsF*)F/\"#VF*F**&F `[lF*)F/\"#UF*F**&F`[lF*)F/\"#TF*F**&,*F6F*F%F*F'F*F*F*F*)F/\"#SF*F**& ,*FLF*F6F*F9F*FOF*F*)F/\"#RF*F**&,&F6F*F9F*F*)F/\"#QF*F**&,.F6F*F%F*F+ F*F9F*FOF*F*F*F*)F/\"#PF*F**&,,F6F*F+F*F9F*F'F*F*F*F*)F/\"#OF*F**&F`el F*)F/\"#NF*F**&,,FLF*F6F*F+F*FOF*F'F*F*)F/\"#MF*F**&,*F6F*F%F*F+F*F'F* F*)F/\"#LF*F**&,*F%F*F9F*FOF*F'F*F*)F/\"#KF*F**&)F/\"#HF*F:F*F**&F]blF *)F/\"#JF*F**&,*FLF*F+F*F9F*F'F*F*)F/\"#IF*F**&,(FLF*F%F*F+F*F*)F/\"#G F*F**&Fj]nF*)F/\"#FF*F**&,*FLF*F%F*F+F*F*F*F*)F/\"#EF*F**&FCF*)F/\"#DF *F**&Fc\\mF*)F/\"#CF*F**&,(FOF*F'F*F*F*F*)F/\"#BF*F**&FUF*)F/\"#AF*F** &,,FLF*F%F*F+F*F'F*F*F*F*)F/\"#@F*F**&,*FLF*F6F*F+F*F*F*F*)F/\"#?F*F** &,,F6F*F%F*F9F*FOF*F'F*F*)F/\"#>F*F**&FdqF*)F/\"#=F*F**&,(FLF*F6F*F9F* F*)F/\"# " 0 "" {MPLTEXT 1 0 36 "cv:=CoefficientVector(c,z); cv[1];\n" } {MPLTEXT 1 0 47 "cvb:=map(x->CoefficientList(x,Z),cv): cvb[1];\n" } {MPLTEXT 1 0 56 "cvd:=map(x->add(x[i]*2^(i-1),i=1..nops(x)),cvb): cvd[ 1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,Type settingGI(_syslibGF'6%-I#miGF$6%Q#cvF'/%'italicGQ%trueF'/%,mathvariant GQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separator GF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'acc entGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(mins izeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mactionGF$6$-I(mfencedGF$6%-I'mtab leGF$6&-I$mtrGF$6#-I$mtdGF$6#-F#6$-F,6%Q+~1~..~255~F'F/F2-I%msubGF$6%- F,6%Q'VectorF'F/F2-F#6#-F,6%Q'columnF'F/F2/%/subscriptshiftGQ\"0F'-F \\o6#-F_o6#-F#6$-F,6%Q,Data~Type:~F'F/F2-F,6%Q)anythingF'F/F2-F\\o6#-F _o6#-F#6$-F,6%Q*Storage:~F'F/F2-F,6%Q,rectangularF'F/F2-F\\o6#-F_o6#-F #6$-F,6%Q(Order:~F'F/F2-F,6%Q.Fortran_orderF'F/F2/%%openGQ\"[F'/%&clos eGQ\"]F'/%+actiontypeGQ-browsertableF'" }}{PARA 11 "" 1 "" {XPPMATH 20 ",.*$)I\"ZG6\"\"\"(\"\"\"F(*$)F%\"\"'F(F(*$)F%\"\"&F(F(*$)F%\"\"$F(F( *$)F%\"\"#F(F(F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "7*\"\"\"\"\"!F#F#F $F#F#F#" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$P#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "vvd:=cvd; vvd[2]; vvd[5];\n" }{MPLTEXT 1 0 56 " vvd[2]:=cvd[2]+7 mod 2^lgn; vvd[5]:=cvd[5]+13 mod 2^lgn;" }}{PARA 11 " " 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslib GF'6%-I#miGF$6%Q$vvdF'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#mo GF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF =/%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ& infixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(max sizeGQ)infinityF'-I(mactionGF$6$-I(mfencedGF$6%-I'mtableGF$6&-I$mtrGF$ 6#-I$mtdGF$6#-F#6$-F,6%Q+~1~..~255~F'F/F2-I%msubGF$6%-F,6%Q'VectorF'F/ F2-F#6#-F,6%Q'columnF'F/F2/%/subscriptshiftGQ\"0F'-F\\o6#-F_o6#-F#6$-F ,6%Q,Data~Type:~F'F/F2-F,6%Q)anythingF'F/F2-F\\o6#-F_o6#-F#6$-F,6%Q*St orage:~F'F/F2-F,6%Q,rectangularF'F/F2-F\\o6#-F_o6#-F#6$-F,6%Q(Order:~F 'F/F2-F,6%Q.Fortran_orderF'F/F2/%%openGQ\"[F'/%&closeGQ\"]F'/%+actiont ypeGQ-browsertableF'" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#R" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#Y" }} {PARA 11 "" 1 "" {XPPMATH 20 "\"$j\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "vvb:=map(x->convert(x,base,2),vvd): vvb[2]; vvb[5];\n " }{MPLTEXT 1 0 61 "vv:=map(x->add(x[i]*Z^(i-1),i=1..nops(x)),vvb): vv [2]; vv[5];" }}{PARA 11 "" 1 "" {XPPMATH 20 "7(\"\"!\"\"\"F$F$F#F$" }} {PARA 11 "" 1 "" {XPPMATH 20 "7*\"\"\"F#\"\"!F$F$F#F$F#" }}{PARA 11 "" 1 "" {XPPMATH 20 ",**$)I\"ZG6\"\"\"&\"\"\"F(*$)F%\"\"$F(F(*$)F%\"\"#F (F(F%F(" }}{PARA 11 "" 1 "" {XPPMATH 20 ",*\"\"\"F#I\"ZG6\"F#*$)F$\"\" &F#F#*$)F$\"\"(F#F#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "v:=a dd(vv[i]*z^(i-1),i=1..n): c:=add(cv[i]*z^(i-1),i=1..n): e:=v-c:\n" } {MPLTEXT 1 0 26 "e:=normalizepolyzZ(e,M);\n" }{MPLTEXT 1 0 44 "ev:=Vec tor(255); ev:=CoefficientVector(e,z);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&*&,**$)I\"ZG6\"\"\"&\"\"\"F**$)F'\"\"%F*F**$)F'\"\"#F*F*F*F*F*)I\"z GF(F-F*F**&,&*$)F'\"\"$F*F*F*F*F*F2F*F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,TypesettingGI(_syslibGF'6%-I#miGF$6%Q #evF'/%'italicGQ%trueF'/%,mathvariantGQ'italicF'-I#moGF$60Q#:=F'/F3Q'n ormalF'/%&fenceGQ&falseF'/%*separatorGF=/%)stretchyGF=/%*symmetricGF=/ %(largeopGF=/%.movablelimitsGF=/%'accentGF=/%%formGQ&infixF'/%'lspaceG Q/thickmathspaceF'/%'rspaceGFO/%(minsizeGQ\"1F'/%(maxsizeGQ)infinityF' -I(mactionGF$6$-I(mfencedGF$6%-I'mtableGF$6&-I$mtrGF$6#-I$mtdGF$6#-F#6 $-F,6%Q+~1~..~255~F'F/F2-I%msubGF$6%-F,6%Q'VectorF'F/F2-F#6#-F,6%Q'col umnF'F/F2/%/subscriptshiftGQ\"0F'-F\\o6#-F_o6#-F#6$-F,6%Q,Data~Type:~F 'F/F2-F,6%Q)anythingF'F/F2-F\\o6#-F_o6#-F#6$-F,6%Q*Storage:~F'F/F2-F,6 %Q,rectangularF'F/F2-F\\o6#-F_o6#-F#6$-F,6%Q(Order:~F'F/F2-F,6%Q.Fortr an_orderF'F/F2/%%openGQ\"[F'/%&closeGQ\"]F'/%+actiontypeGQ-browsertabl eF'" }}{PARA 11 "" 1 "" {XPPMATH 20 "-I%mrowG6#/I+modulenameG6\"I,Type settingGI(_syslibGF'6%-I#miGF$6%Q#evF'/%'italicGQ%trueF'/%,mathvariant GQ'italicF'-I#moGF$60Q#:=F'/F3Q'normalF'/%&fenceGQ&falseF'/%*separator GF=/%)stretchyGF=/%*symmetricGF=/%(largeopGF=/%.movablelimitsGF=/%'acc entGF=/%%formGQ&infixF'/%'lspaceGQ/thickmathspaceF'/%'rspaceGFO/%(mins izeGQ\"1F'/%(maxsizeGQ)infinityF'-I(mfencedGF$6&-F#6#-I'mtableGF$6'-I$ mtrGF$6#-I$mtdGF$6#-I#mnGF$6$Q\"0F'F9-F[o6#-F^o6#-F#6%-F#6#-I%msupGF$6 %-F,6%Q\"ZF'F/F2-Fao6$Q\"3F'F9/%1superscriptshiftGQ\"0F'-F660Q\"+F'F9F ;F>F@FBFDFFFHFJ/FNQ0mediummathspaceF'/FQF\\qFRFU-Fao6$FTF9FjnFjn-F[o6# -F^o6#-F#6)-F#6#-F]p6%F_p-Fao6$Q\"5F'F9FepFhp-F#6#-F]p6%F_p-Fao6$Q\"4F 'F9FepFhp-F#6#-F]p6%F_p-Fao6$Q\"2F'F9FepFhpF^q/%%openGQ\"[F'/%&closeGQ \"]F'/I+msemanticsGF$Q*ColVectorF'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "sindrome:=proc(m,n,alpha,M,Z,sv,vv) local i,j,s,beta, gamma; beta:=1;\n" }{MPLTEXT 1 0 63 "for i to m do beta:=modpol(beta*a lpha,M,Z,2); gamma:=1; s:=0;\n" }{MPLTEXT 1 0 26 " for j from 0 to n- 1 do\n" }{MPLTEXT 1 0 72 " s:=modpol(s+vv[j+1]*gamma,M,Z,2); gamma: =modpol(gamma*beta,M,Z,2);\n" }{MPLTEXT 1 0 17 " od; sv[i]:=s;\n" } {MPLTEXT 1 0 8 "od; end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6)I\"mG6\" I\"nGF%I&alphaGF%I\"MGF%I\"ZGF%I#svGF%I#vvGF%6'I\"iGF%I\"jGF%I\"sGF%I% betaGF%I&gammaG%*protectedGF%F%C$>F0\"\"\"?(F-F5F5F$I%trueGF2C'>F0-I'm odpolG6$F2I(_syslibGF%6&*&F0F5F'F5F(F)\"\"#>F1F5>F/\"\"!?(F.FCF5,&F&F5 F5!\"\"F7C$>F/-F;6&,&F/F5*&&F+6#,&F.F5F5F5F5F1F5F5F(F)F@>F1-F;6&*&F1F5 F0F5F(F)F@>&F*6#F-F/F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "sv:=Vector(m): sindrome(m,n,alpha,M,Z,sv,vv):\n" }{MPLTEXT 1 0 29 "s:=add(sv[i]*z^(i-1),i=1..m);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",H*$)I \"ZG6\"\"\"'\"\"\"F(*$)F%\"\"%F(F(F%F(F(F(*&,(*$)F%\"\"(F(F(*$)F%\"\"$ F(F(F(F(F(I\"zGF&F(F(*&,.F#F(*$)F%\"\"&F(F(F)F(F1F(*$)F%\"\"#F(F(F(F(F ()F4F " 0 "" {MPLTEXT 1 0 56 "L:=(1-alpha^1*z)*(1-alpha^4*z); L:=normali zepolyzZ(L,M);" }}{PARA 11 "" 1 "" {XPPMATH 20 "*&,&\"\"\"F$*&,&I\"ZG6 \"F$F$F$F$I\"zGF(F$!\"\"F$,&F$F$*&)F&\"\"%F$F)F$F*F$" }}{PARA 11 "" 1 "" {XPPMATH 20 ",(*&,**$)I\"ZG6\"\"\"&\"\"\"F**$)F'\"\"%F*F*F'F*F*F*F* )I\"zGF(\"\"#F*F**&,&F+F*F'F*F*F/F*F*F*F*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "beta:=1: for j from 0 to n-1 do\n" }{MPLTEXT 1 0 52 " subs(z=beta,L); beta:=modpol(beta/alpha,M,Z,2); \n" }{MPLTEXT 1 0 42 "if modpol(%%,M,Z,2)=0 then print(j) fi od:" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "L1:=(1-alpha^4*z); L4:=(1-alpha^1*z );" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&\"\"\"F#*&),&I\"ZG6\"F#F#F#\"\"% F#I\"zGF(F#!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&\"\"\"F#*&,&I\"ZG6 \"F#F#F#F#I\"zGF'F#!\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "E:=alpha^1*ev[2]*L1+alpha^4*ev[5]*L4; E:=normalizepolyzZ(E,M);" }} {PARA 11 "" 1 "" {XPPMATH 20 ",&*(,&I\"ZG6\"\"\"\"F'F'F',&*$)F%\"\"$F' F'F'F'F',&F'F'*&)F$\"\"%F'I\"zGF&F'!\"\"F'F'*(F.F',**$)F%\"\"&F'F'*$)F %F/F'F'*$)F%\"\"#F'F'F'F'F',&F'F'*&F$F'F0F'F1F'F'" }}{PARA 11 "" 1 "" {XPPMATH 20 ",,*$)I\"ZG6\"\"\"'\"\"\"F(*$)F%\"\"%F(F(*&,(F#F(*$)F%\"\" &F(F(*$)F%\"\"$F(F(F(I\"zGF&F(F(F%F(F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "modpol(subs(z=alpha^(-1),E)/alpha^1/subs(z=alpha^(-1) ,L1),M,Z,2);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&*$)I\"ZG6\"\"\"$\"\"\" F(F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "modpol(subs(z=alp ha^(-4),E)/alpha^4/subs(z=alpha^(-4),L4),M,Z,2);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",**$)I\"ZG6\"\"\"&\"\"\"F(*$)F%\"\"%F(F(*$)F%\"\"#F(F(F(F (" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 21 "9.3.27. T\303\251tel." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "reedsolomo ndecodezZ:=proc(m::posint,s::polynom,M::polynom)\n" }{MPLTEXT 1 0 43 " local x0,x1,x2,y0,y1,y2,r0,r1,r2,q,i,L,E;\n" }{MPLTEXT 1 0 75 "x0:=1; \+ y0:=0; r0:=z^m; x1:=0; y1:=1; r1:=collect(normalizepolyzZ(s,M),z);\n" }{MPLTEXT 1 0 4 "do\n" }{MPLTEXT 1 0 28 " if degree(r1,z)modpo l(x/L[1],M,Z,2),E);\n" }{MPLTEXT 1 0 40 " E:=add(E[i]*z^(i-1),i=1.. nops(E));\n" }{MPLTEXT 1 0 40 " L:=map(x->modpol(x/L[1],M,Z,2),L); \n" }{MPLTEXT 1 0 40 " L:=add(L[i]*z^(i-1),i=1..nops(L));\n" } {MPLTEXT 1 0 18 " return [L,E]\n" }{MPLTEXT 1 0 7 " fi;\n" } {MPLTEXT 1 0 27 " r2:=r0; x2:=x0; y2:=y0;\n" }{MPLTEXT 1 0 39 " whil e degree(r2,z)>=degree(r1,z) do\n" }{MPLTEXT 1 0 49 " q:=modpol(lco eff(r2,z)/lcoeff(r1,z),M,Z,2);\n" }{MPLTEXT 1 0 41 " q:=q*z^(degree (r2,z)-degree(r1,z));\n" }{MPLTEXT 1 0 56 " r2:=normalizepolyzZ(r2- q*r1,M); r2:=collect(r2,z);\n" }{MPLTEXT 1 0 37 " x2:=normalizepoly zZ(x2-q*x1,M);\n" }{MPLTEXT 1 0 37 " y2:=normalizepolyzZ(y2-q*y1,M) ;\n" }{MPLTEXT 1 0 7 " od;\n" }{MPLTEXT 1 0 51 " r0:=r1; x0:=x1; y0: =y1; r1:=r2; x1:=x2; y1:=y2;\n" }{MPLTEXT 1 0 10 "od; end;\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%'I\"mG6\"I'posintG%*protectedG'I\"sGF&I(po lynomGF('I\"MGF&F+6/I#x0GF&I#x1GF&I#x2GF&I#y0GF&I#y1GF&I#y2GF&I#r0GF&I #r1GF&I#r2GF&I\"qGF&I\"iGF&I\"LGF&I\"EGF&F&F&C)>F/\"\"\">F2\"\"!>F5)I \"zGF&F%>F0F@>F3F>>F6-I(collectG6$F(I(_syslibGF&6$-I0normalizepolyzZGF &6$F*F-FC?(F&F>F>F&I%trueGF(C-@$2-I'degreeGF(6$F6FC,$*&#F>\"\"#F>F%F>F >C)>F:-_I0PolynomialToolsGFII0CoefficientListGF&6$F3FC>F;-FhnFV>F;-I$m apGF(6$f*6#I\"xGF&F&6$I)operatorGF&I&arrowGF&F&-I'modpolGFI6&*&FdoF>&F :6#F>!\"\"F-I\"ZGF&FZF&F&6&F:8/F-9&F;>F;-I$addGF(6$*&&F;6#F9F>)FC,&F9F >F>F^pF>/F9;F>-I%nopsGF(6#F;>F:-F`o6$FboF:>F:-Fep6$*&&F:FipF>FjpF>/F9; F>-F_q6#F:O7$F:F;>F7F5>F1F/>F4F2?(F&F>F>F&1FT-FU6$F7FCC(>F8-Fio6&*&-I' lcoeffGF(FerF>-F\\sFVF^pF-F_pFZ>F8*&F8F>)FC,&FdrF>FTF^pF>>F7-FM6$,&F7F >*&F8F>F6F>F^pF->F7-FHFer>F1-FM6$,&F1F>*&F8F>F0F>F^pF->F4-FM6$,&F4F>*& F8F>F3F>F^pF->F5F6>F/F0>F2F3>F6F7>F0F1>F3F4F&F&F&" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 27 "reedsolomondecodezZ(m,s,M);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7$,(*&,**$)I\"ZG6\"\"\"&\"\"\"F+*$)F(\"\"%F+F+F(F+F+F +F+)I\"zGF)\"\"#F+F+*&,&F,F+F(F+F+F0F+F+F+F+,,*$)F(\"\"'F+F+F,F+*&,(F5 F+F&F+*$)F(\"\"$F+F+F+F0F+F+F(F+F+F+" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }} }}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 22 "*9.3.28. P\303\251lda." }}} {SECT 0 {PARA 5 "" 0 "" {TEXT 207 50 "*9.3.29. K\303\263dr\303\266vid \303\255t\303\251s." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 38 "*9.3.30. K\303\263dok direkt szorzata." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 37 "*9.3.31. Kaszk\303\241d k\303\263dok." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 43 "*9.3.32. Adat\303\241tsz\303\266v\303\251s." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.33. Feladat." }}}{SECT 1 {PARA 5 " " 0 "" {TEXT 207 16 "9.3.34. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 16 "9.3.35. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.36. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3 .37. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.38. Fela dat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.39. Feladat." }}} {SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.40. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.41. Feladat." }}}{SECT 0 {PARA 5 " " 0 "" {TEXT 207 18 "->9.3.42. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.43. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.44. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "- >9.3.45. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 18 "->9.3.46. \+ Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.3.47. Feladat." }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 207 17 "*9.3.48. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 16 "9.3.49. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 16 "9.3.50. Feladat." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT 207 11 "9.3.51. Tov" }{TEXT 207 8 "\303\241" }{TEXT 207 20 "bbi felad atok megold" }{TEXT 207 15 "\303\241sokkal." }}}{SECT 1 {PARA 5 "" 0 " " {TEXT 207 11 "9.3.52. Tov" }{TEXT 207 8 "\303\241" }{TEXT 207 14 "bb i feladatok." }}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}} {EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 16 "10. Algoritmusok" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%# %?G" }}}} {MARK "0 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }