{VERSION 6 0 "IBM INTEL NT" "6.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 256 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 257 "" 1 18 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 258 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 259 "" 1 14 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 260 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 261 "" 1 14 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 262 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 263 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 264 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 265 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 266 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 267 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 268 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 269 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 270 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 271 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 272 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 273 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 274 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 275 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 276 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 277 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 278 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 279 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 280 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 281 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 282 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 283 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 284 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 285 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 286 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 287 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 288 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 289 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 290 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 291 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 292 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 293 "" 1 14 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 294 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 295 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 296 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 297 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 298 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 299 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 300 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 301 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 302 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 303 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 304 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 305 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 306 "" 1 14 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 307 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 308 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 309 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 310 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 311 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 312 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 313 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 314 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 315 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 316 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 317 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 318 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 319 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 320 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 321 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 322 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 323 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Tim es" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 } {PSTYLE "Text Output" -1 6 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 2 2 2 2 2 1 2 1 3 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Out put" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Normal" -1 256 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Output" -1 257 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 3 0 0 0 0 1 0 1 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 256 "" 0 "" {TEXT -1 0 "" }{TEXT 256 0 "" }{TEXT 257 57 "Chapter 19: Primality Testing Using The Rabin-Miller Test" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 148 "M aple can quickly be used to test when a number is composite or very \" probably\" prime using the Rabin-Miller test. First, we unassign all v ariables:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 258 0 "" }{TEXT 259 0 "" } }{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 260 0 "" }{TEXT 261 10 "Example \+ 1:" }}{PARA 0 "" 0 "" {TEXT -1 92 "Suppose we want to determine if 172 9 is composite. We first store this number as a variable:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "n := 1729;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"nG\"%H<" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 107 "A \+ Maple procedure is a prearranged collection of command that Maple exec utes together. The next procedure, " }{TEXT 262 4 "div2" }{TEXT -1 136 ", is designed to determine to number of factors of 2 that a numbe r has. By hitting return, this procedure will be read into the session ." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "div2 := proc(num)" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 " local k, nd2;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 23 " k := 0; nd2 := num; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 25 " while nd2 mod 2 = 0 do" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 15 " k := k+1;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 19 " nd2 := nd2/2;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 6 " od:" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 130 " lprint(cat(\"Power 2 factorizat ion of \", convert(num, string), \"= \", convert(ifactor(2^k), string) , \"*\", convert(nd2, string)));" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 5 " k;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 3 "If " }{TEXT 263 1 "n" }{TEXT -1 101 " is the prime nu mber candidate, the Rabin-Miller test requires getting the number of f actors of 2 in " }{TEXT 268 1 "n" }{TEXT -1 20 " - 1, that is, write" }}{PARA 0 "" 0 "" {TEXT 265 1 "n" }{TEXT -1 7 " - 1 = " }{XPPEDIT 18 0 "2^k;" "6#)\"\"#%\"kG" }{TEXT 266 1 "q" }{TEXT -1 8 ", where " } {TEXT 267 1 "k" }{TEXT -1 32 " is an non-negative integer and " } {TEXT 264 1 "q" }{TEXT -1 43 " is an odd number. This command will pri nt " }{TEXT 269 2 "n " }{TEXT -1 64 "- 1's factorization and will outp ut the number of factors of 2, " }{TEXT 270 1 "k" }{TEXT -1 23 ", that occur. We store " }{TEXT 271 1 "k" }{TEXT -1 30 " by entering the nex t command." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "k := div2(n-1 );" }}{PARA 6 "" 1 "" {TEXT -1 43 "\"Power 2 factorization of 1728= `` (2)^6*27\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"kG\"\"'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 70 "The next command takes the previous resul t and stores the odd integer " }{TEXT 272 1 "q" }{TEXT -1 1 "." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "q := (n -1)/2^k;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"qG\"#F" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 25 "Given an integer witness " }{TEXT 277 1 "a" }{TEXT -1 66 ", the Rabin Miller Test requires computing the following sequence:" }} {PARA 256 "" 0 "" {XPPEDIT 18 0 "a^q;" "6#)%\"aG%\"qG" }{TEXT -1 2 ", \+ " }{XPPEDIT 18 0 "a^(2*q);" "6#)%\"aG*&\"\"#\"\"\"%\"qGF'" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "a^(4*q);" "6#)%\"aG*&\"\"%\"\"\"%\"qGF'" } {TEXT -1 7 ", ..., " }{XPPEDIT 18 0 "a^(2^(k-1)*q);" "6#)%\"aG*&)\"\"# ,&%\"kG\"\"\"F*!\"\"F*%\"qGF*" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 66 "The next Maple gives the symbolic representation of this \+ sequence." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "[seq( a^(ifact or(2^(i-1))*q), i = 1..k)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7(*$)% \"aG\"#F\"\"\")F&,$*&F'F(-%!G6#\"\"#F(F()F&,$*&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 "" {TEXT -1 72 "For a number to be composite, the \+ Rabin-Miller test says that a witness " }{TEXT 279 1 "a" }{TEXT -1 32 " must satisfy the the following:" }}{PARA 0 "" 0 "" {TEXT -1 3 "1. " }{XPPEDIT 18 0 "a^q;" "6#)%\"aG%\"qG" }{TEXT -1 27 " is not congruent \+ to 1 mod " }{TEXT 273 1 "n" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 3 "2. " }{XPPEDIT 18 0 "a^(2^i*q);" "6#)%\"aG*&)\"\"#%\"iG\"\"\"%\" qGF)" }{TEXT -1 28 " is not congruent to -1 mod " }{TEXT 275 1 "n" } {TEXT -1 9 " for all " }{TEXT 276 1 "i" }{TEXT -1 14 " = 0, 1, ..., " }{TEXT 274 1 "k" }{TEXT -1 3 "-1." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 29 "Suppose, we want to check if " }{TEXT 278 1 "a" }{TEXT -1 56 " = 2 is a Rabin-Miller witness. This command s hows that " }{XPPEDIT 18 0 "a^q;" "6#)%\"aG%\"qG" }{TEXT -1 5 " mod " }{TEXT 280 2 "n " }{TEXT -1 29 "satisfies the first criterea." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "subs(a = 2, a)&^ q mod n;" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$X'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 6 "Since " }{XPPEDIT 18 0 "a^q;" "6#)%\"aG%\"qG" }{TEXT -1 5 " mod " }{TEXT 281 2 "n " }{TEXT -1 26 "is not congruent to 1 mod " } {TEXT 282 3 "n, " }{TEXT -1 37 "we proceed to criterea 2. We use the \+ " }{TEXT 283 5 "mods " }{TEXT -1 42 "command to do the modular arithme tic. The " }{TEXT 284 4 "mods" }{TEXT -1 108 " does symmetric represen tation modular arithmetic, that is, integer remainders are computed us ing a modulus " }{TEXT 322 1 "m" }{TEXT -1 28 " are found in the inter val [" }{TEXT 285 1 "-" }{TEXT -1 1 "(" }{TEXT 289 2 "m-" }{TEXT -1 4 "1)/2" }{TEXT 287 3 ", m" }{TEXT -1 19 "/2] instead of [0.." }{TEXT 286 1 "m" }{TEXT -1 110 "-1] as is done in standard modular arithmetic . This will allow the -1 remainder representation to be used for " } {TEXT 288 1 "m" }{TEXT -1 87 "-1. To see that none of the powers of th e witness candidate is not congruent to -1 mod " }{TEXT 290 3 "n, " } {TEXT -1 5 "enter" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 67 "rmill \+ := [ seq( mods(subs(a = 2, a)&^(2^(i-1)*q), n), i = 1..k) ] ;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%&rmillG7(\"$X'!$k'\"\"\"F(F(F(" }}} {EXCHG {PARA 257 "" 1 "" {TEXT -1 6 "Thus, " }{TEXT 291 1 "a" }{TEXT -1 28 " = 2 will be a witness that " }{TEXT 294 1 "n" }{TEXT -1 51 " = 1729 is composite. We can verify this using the " }{TEXT 295 7 "ifact or" }{TEXT -1 9 " command." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "ifactor(1729);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#*(-%!G6#\"\"(\" \"\"-F%6#\"#8F(-F%6#\"#>F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 292 0 "" }{TEXT 293 10 "Example 2 :" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 41 "Supp ose now that we want to test whether " }{TEXT 296 1 "n" }{TEXT -1 50 " = 172947529 is composite. We store this value of " }{TEXT 297 1 "n" } {TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "n := 17294 7529;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"nG\"*Hv%H<" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "The next command stores " }{TEXT 298 2 "k " }{TEXT -1 4 "and " }{TEXT 299 1 "q" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "k := div2(n-1); q := (n-1)/2^k;" }} {PARA 6 "" 1 "" {TEXT -1 54 "\"Power 2 factorization of 172947528= ``( 2)^3*21618441\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"kG\"\"$" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"qG\")T%=;#" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 58 "This is a symbolic representation of the witness seq uence." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "[seq( a^(ifactor( 2^(i-1))*q), i = 1..k)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%*$)%\"aG \")T%=;#\"\"\")F&,$*&F'F(-%!G6#\"\"#F(F()F&,$*&F'F()F,F/F(F(" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 19 "Not all choices for" }{TEXT 300 2 " a" }{TEXT -1 100 " represent a Rabin-Miller witness. The next two co mmands demonstrate this for the witness candidate " }{TEXT 301 1 "a" } {TEXT -1 5 " = 3." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "subs(a = 3, a)&^ q mod n;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"*Gv%H<" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "rmill := [seq( mods(subs(a = 3, a)&^(2^(i-1)*q), n), i = 1..k) ] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&rmillG7%!\"\"\"\"\"F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 59 "Since there is a congruence to -1 in the witness sequence, " }{TEXT 302 1 "a" }{TEXT -1 33 " = 3 is not a Rabin Witness that " }{TEXT 323 1 "n" }{TEXT -1 63 " is composite. However, the next two commands demo nstrate that " }{TEXT 303 1 "a" }{TEXT -1 8 " = 2 is." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "subs(a = 2, a)&^ q mod n;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\")1Q1S" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "rmill := [seq( mods(subs(a = 2, a)&^(2^(i-1)*q), n), \+ i = 1..k) ] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&rmillG7%\")1Q1S\"( lqD#\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 6 "Thus, " }{TEXT 304 1 "n" }{TEXT -1 52 " = 172947529 is composite as the next command show s." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "ifactor(n);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#*(-%!G6#\"$2$\"\"\"-F%6#\"$8'F(-F%6#\"$>*F( " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 305 0 "" }{TEXT 306 10 "Example 3:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "We next consider \+ the integer " }{TEXT 316 1 "n" }{TEXT -1 56 " = 5967986236329763296324 24696281. We store this number." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "n := 596798623632976329632424696281;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"nG\"?\"G'pCCjHj(HjB')z'f" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 35 "We first find the number of 2's in " }{TEXT 307 1 "n" } {TEXT -1 29 "-1's factorization and store " }{TEXT 308 1 "q" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "k := div2(n-1); \+ q := (n-1)/2^k;" }}{PARA 6 "" 1 "" {TEXT -1 96 "\"Power 2 factorizatio n of 596798623632976329632424696280= ``(2)^3*7459982795412204120405308 7035\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"kG\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"qG\">Nq3`S?T?7az#)*fu" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 60 "This is the symbolic representation of the witness seq uence." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "[seq( a^(ifactor( 2^(i-1))*q), i = 1..k)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%*$)%\"aG \">Nq3`S?T?7az#)*fu\"\"\")F&,$*&F'F(-%!G6#\"\"#F(F()F&,$*&F'F()F,F/F(F (" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 36 "The next set of commands sho ws that " }{TEXT 309 1 "a" }{TEXT -1 68 " = 2, 3, 4, and 5 fail to be \+ Rabin-Miller witnesses for this number." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 310 1 "a" }{TEXT -1 5 " = 2:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "subs(a = 2, a)&^ q mod n; " }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"?()3***Gf/z*p,QXFaP" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "rmill := [seq( mods(subs(a = 2, a)& ^(2^(i-1)*q), n), i = 1..k) ] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%& rmillG7%!?%R0Z8t\"RlFJ)p6P@#!\"\"\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 311 1 "a" }{TEXT -1 5 " = 3:" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "subs(a = 3, a)&^ q mod n; \+ " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\">-4n>)Huq!fStF\"yY" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "rmill := [seq( mods(subs(a = 3, a)& ^(2^(i-1)*q), n), i = 1..k) ] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%& rmillG7%\">-4n>)Huq!fStF\"yY\"?%R0Z8t\"RlFJ)p6P@#!\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 312 1 "a" } {TEXT -1 5 " = 4:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "subs(a = 4, a)&^ q mod n;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"?!G'pCCjHj(Hj B')z'f" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "rmill := [seq( mo ds(subs(a = 4, a)&^(2^(i-1)*q), n), i = 1..k) ] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&rmillG7%!\"\"\"\"\"F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 313 1 "a" }{TEXT -1 5 " = 5:" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "subs(a = 5, a)&^ q mod n;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"?%R0Z8t\"RlFJ)p6P@#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "rmill := [seq( mods(subs(a = 5, a)& ^(2^(i-1)*q), n), i = 1..k) ] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%& rmillG7%\"?%R0Z8t\"RlFJ)p6P@#!\"\"\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 71 "We might start to assert \+ that this number might be prime. In fact, for " }{TEXT 314 1 "t" } {TEXT -1 90 " failed Rabin-Witness candidates, the probability that n \+ is prime is given by the formula:" }}{PARA 256 "" 0 "" {TEXT -1 2 "1- " }{XPPEDIT 18 0 ".75^t;" "6#)-%&FloatG6$\"#v!\"#%\"tG" }{TEXT -1 1 ". " }}{PARA 0 "" 0 "" {TEXT -1 23 "Thus, for the above 4 (" }{TEXT 315 1 "a" }{TEXT -1 87 " = 2..5) failed witness candidates, we have shown \+ that the probability that the number " }}{PARA 0 "" 0 "" {TEXT -1 1 " \+ " }{TEXT 317 1 "n" }{TEXT -1 45 " = 596798623632976329632424696281 is \+ prime is" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "1 - .75^4;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\")v$f$o!\")" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 249 "Thus, there is a about a 68.4 % chance this number is prime. We can increase our chances by testing more witnesses. The nex t command shows approximately how many failed witness candidates are n eeded to show n is a prime for a probability of 99.999%." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "solve(1 - .75^t = .99999, t);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+!Rh>+%!\")" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 82 "Thus, we need 41 non-witness candidates to assure th is probability. Using a Maple " }{TEXT 318 3 "for" }{TEXT -1 21 " loop along with the " }{TEXT 319 3 "seq" }{TEXT -1 47 " command, we can qu ickly test these witnesses. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "for j from 2 to 42 do" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 99 " l print(cat(\"a = \", convert(j, string), \"=> a^q = \", convert(subs(a \+ = j, a)&^ q mod n, string)));" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 103 "l print(cat(\"a^(2^i*q) = \", convert([seq( mods(subs(a = j, a)&^(2^(i-1 )*q), n), i = 1..k) ], string))); " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "print(\" \");" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "od:" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 2=> a^q = 375427453801699790459289990887\" " }}{PARA 6 "" 1 "" {TEXT -1 54 "\"a^(2^i*q) = [-221371169831276539173 134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }} {PARA 6 "" 1 "" {TEXT -1 45 "\"a = 3=> a^q = 4678127734059070742981967 0902\"" }}{PARA 6 "" 1 "" {TEXT -1 81 "\"a^(2^i*q) = [4678127734059070 7429819670902, 221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 4=> a^ q = 596798623632976329632424696280\"" }}{PARA 6 "" 1 "" {TEXT -1 24 " \"a^(2^i*q) = [-1, 1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\" " }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 5=> a^q = 221371169831276539173 134705394\"" }}{PARA 6 "" 1 "" {TEXT -1 53 "\"a^(2^i*q) = [22137116983 1276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6 \"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 6=> a^q = 3455276089085096413 42190300287\"" }}{PARA 6 "" 1 "" {TEXT -1 84 "\"a^(2^i*q) = [-25127101 4724466688290234395994, -221371169831276539173134705394, -1]\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 7=> a^q = 345527608908509641342190300287\"" }}{PARA 6 "" 1 " " {TEXT -1 84 "\"a^(2^i*q) = [-251271014724466688290234395994, -221371 169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\" ~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 8=> a^q = 22137116983127653 9173134705394\"" }}{PARA 6 "" 1 "" {TEXT -1 53 "\"a^(2^i*q) = [2213711 69831276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q \"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 9=> a^q = 221371169831276 539173134705394\"" }}{PARA 6 "" 1 "" {TEXT -1 53 "\"a^(2^i*q) = [22137 1169831276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 18 "\"a = 10=> a^q = 1\"" }} {PARA 6 "" 1 "" {TEXT -1 23 "\"a^(2^i*q) = [1, 1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 11=> a^q = 46781277340590707429819670902\"" }}{PARA 6 "" 1 "" {TEXT -1 81 "\"a^(2^i*q) = [46781277340590707429819670902, 22137116983127653917313 4705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 " " 1 "" {TEXT -1 47 "\"a = 12=> a^q = 550017346292385622202605025379\" " }}{PARA 6 "" 1 "" {TEXT -1 82 "\"a^(2^i*q) = [-467812773405907074298 19670902, 221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 13=> a^q \+ = 550017346292385622202605025379\"" }}{PARA 6 "" 1 "" {TEXT -1 82 "\"a ^(2^i*q) = [-46781277340590707429819670902, 22137116983127653917313470 5394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 14=> a^q = 550017346292385622202605025379\"" } }{PARA 6 "" 1 "" {TEXT -1 82 "\"a^(2^i*q) = [-467812773405907074298196 70902, 221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 15=> a^q \+ = 251271014724466688290234395994\"" }}{PARA 6 "" 1 "" {TEXT -1 83 "\"a ^(2^i*q) = [251271014724466688290234395994, -2213711698312765391731347 05394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 18 "\"a = 16=> a^q = 1\"" }}{PARA 6 "" 1 "" {TEXT -1 23 "\"a^(2^i*q) = [1, 1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\" " }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 17=> a^q = 55001734629238562220 2605025379\"" }}{PARA 6 "" 1 "" {TEXT -1 82 "\"a^(2^i*q) = [-467812773 40590707429819670902, 221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 18 "\"a \+ = 18=> a^q = 1\"" }}{PARA 6 "" 1 "" {TEXT -1 23 "\"a^(2^i*q) = [1, 1, \+ 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 19=> a^q = 550017346292385622202605025379\"" }} {PARA 6 "" 1 "" {TEXT -1 82 "\"a^(2^i*q) = [-4678127734059070742981967 0902, 221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 20=> a^q \+ = 375427453801699790459289990887\"" }}{PARA 6 "" 1 "" {TEXT -1 54 "\"a ^(2^i*q) = [-221371169831276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 18 "\"a = 21=> a^q = 1\"" }}{PARA 6 "" 1 "" {TEXT -1 23 "\"a^(2^i*q) = [1, 1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 22=> a^q = 345527608908509641342190300287\"" }}{PARA 6 "" 1 "" {TEXT -1 84 "\"a^(2^i*q) = [-251271014724466688290234395994, -22137 1169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q \"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 23=> a^q = 55001734629238 5622202605025379\"" }}{PARA 6 "" 1 "" {TEXT -1 82 "\"a^(2^i*q) = [-467 81277340590707429819670902, 221371169831276539173134705394, -1]\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 24=> a^q = 251271014724466688290234395994\"" }}{PARA 6 "" 1 "" {TEXT -1 83 "\"a^(2^i*q) = [251271014724466688290234395994, -221371 169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\" ~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 25=> a^q = 5967986236329763 29632424696280\"" }}{PARA 6 "" 1 "" {TEXT -1 24 "\"a^(2^i*q) = [-1, 1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 26=> a^q = 251271014724466688290234395994\"" }} {PARA 6 "" 1 "" {TEXT -1 83 "\"a^(2^i*q) = [25127101472446668829023439 5994, -221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 27=> a^q \+ = 251271014724466688290234395994\"" }}{PARA 6 "" 1 "" {TEXT -1 83 "\"a ^(2^i*q) = [251271014724466688290234395994, -2213711698312765391731347 05394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 28=> a^q = 251271014724466688290234395994\"" } }{PARA 6 "" 1 "" {TEXT -1 83 "\"a^(2^i*q) = [2512710147244666882902343 95994, -221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 29=> a^q \+ = 550017346292385622202605025379\"" }}{PARA 6 "" 1 "" {TEXT -1 82 "\"a ^(2^i*q) = [-46781277340590707429819670902, 22137116983127653917313470 5394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 30=> a^q = 46781277340590707429819670902\"" }} {PARA 6 "" 1 "" {TEXT -1 81 "\"a^(2^i*q) = [46781277340590707429819670 902, 221371169831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 31=> a^q \+ = 596798623632976329632424696280\"" }}{PARA 6 "" 1 "" {TEXT -1 24 "\"a ^(2^i*q) = [-1, 1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }} {PARA 6 "" 1 "" {TEXT -1 47 "\"a = 32=> a^q = 375427453801699790459289 990887\"" }}{PARA 6 "" 1 "" {TEXT -1 54 "\"a^(2^i*q) = [-2213711698312 76539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\" " }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 33=> a^q = 22137116983127653917 3134705394\"" }}{PARA 6 "" 1 "" {TEXT -1 53 "\"a^(2^i*q) = [2213711698 31276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~ 6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 34=> a^q = 25127101472446668 8290234395994\"" }}{PARA 6 "" 1 "" {TEXT -1 83 "\"a^(2^i*q) = [2512710 14724466688290234395994, -221371169831276539173134705394, -1]\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 35=> a^q = 46781277340590707429819670902\"" }}{PARA 6 "" 1 " " {TEXT -1 81 "\"a^(2^i*q) = [46781277340590707429819670902, 221371169 831276539173134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6 \"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 36=> a^q = 375427453801699790 459289990887\"" }}{PARA 6 "" 1 "" {TEXT -1 54 "\"a^(2^i*q) = [-2213711 69831276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q \"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 37=> a^q = 37542745380169 9790459289990887\"" }}{PARA 6 "" 1 "" {TEXT -1 54 "\"a^(2^i*q) = [-221 371169831276539173134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 38=> a^q = 2512710147 24466688290234395994\"" }}{PARA 6 "" 1 "" {TEXT -1 83 "\"a^(2^i*q) = [ 251271014724466688290234395994, -221371169831276539173134705394, -1]\" " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 39=> a^q = 375427453801699790459289990887\"" }}{PARA 6 " " 1 "" {TEXT -1 54 "\"a^(2^i*q) = [-221371169831276539173134705394, -1 , 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 40=> a^q = 596798623632976329632424696280\"" }} {PARA 6 "" 1 "" {TEXT -1 24 "\"a^(2^i*q) = [-1, 1, 1]\"" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 46 "\"a = 41 => a^q = 46781277340590707429819670902\"" }}{PARA 6 "" 1 "" {TEXT -1 81 "\"a^(2^i*q) = [46781277340590707429819670902, 22137116983127653917 3134705394, -1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}{PARA 6 "" 1 "" {TEXT -1 47 "\"a = 42=> a^q = 375427453801699790459289990887 \"" }}{PARA 6 "" 1 "" {TEXT -1 54 "\"a^(2^i*q) = [-2213711698312765391 73134705394, -1, 1]\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#Q\"~6\"" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 6 "Thus, " }{TEXT 320 1 "n" }{TEXT -1 91 " = 596798623632976329632424696281 is almost certainly prime. This \+ is agrees with the Maple " }{TEXT 321 7 "isprime" }{TEXT -1 9 " comman d." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "isprime(5967986236329 76329632424696281);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{MARK "0 0 2" 10 } {VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }