{VERSION 6 0 "IBM INTEL LINUX" "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 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 1 0 0 0 0 0 0 0 }{PSTYLE "Normal " -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 11 12 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Title" 0 18 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 1 0 0 0 0 0 0 0 }3 0 0 -1 12 12 0 0 0 0 0 0 19 0 }} {SECT 0 {PARA 18 "" 0 "" {TEXT -1 34 "Cubical Count of 3x3 Magic Squar es" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 150 "We calculate the number of \+ strongly magic squares with all entries < k (Mc[k]) and check it again st the coefficients of the generating function (Mgf)." }}{PARA 0 "" 0 "" {TEXT -1 292 "Minimum and maximum value of k in all calculations. \+ The maximum reflects the fact that the quasipolynomial has degree 3 (t hus 4 coefficients) and the period is known from geometry to be at mos t 12. Thus there are (at most) 48 unknown coefficients. Testing up t o 60 is more than sufficient." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "mi nk:=1: maxk:=60:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 46 "Step size (th is could be 1 or a trial period)." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "step:=1:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 61 "The generating funct ion of magic squares, computed elsewhere." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "Mgf := 8*x^10*(2*x^2+1)/(x^6-1)/(x^4-1)/(x-1)^2;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%$MgfG,$*.\"\")\"\"\"%\"xG\"#5,&*&\" \"#F()F)F-F(F(F(F(F(,&*$)F)\"\"'F(F(F(!\"\"F3,&*$)F)\"\"%F(F(F(F3F3,&F )F(F(F3!\"#F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "Mgfseries: =series(Mgf,x=0,maxk+step); " }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%*Mgf seriesG+eq%\"xG\"\")\"#5\"#;\"#6\"#S\"#7\"#k\"#8\"#'*\"#9\"$G\"\"#:\"$ %=F)\"$S#\"#<\"$?$\"#=\"$+%\"#>\"$/&\"#?\"$3'\"#@\"$W(\"#A\"$!))\"#B\" %c5\"#C\"%K7\"#D\"%S9\"#E\"%[;\"#F\"%/>\"#G\"%g@\"#H\"%kC\"#I\"%oF\"#J \"%?J\"#K\"%sM\"#L\"%!)Q\"#M\"%)G%\"#N\"%gZ\"#O\"%K_\"#P\"%gd\"#Q\"%)G '\"#R\"%))oF+\"%)[(\"#T\"%g\")\"#U\"%K))\"#V\"%w&*\"#W\"&?.\"\"#X\"&W6 \"\"#Y\"&o>\"\"#Z\"&!)G\"\"#[\"&#z8\"#\\\"&%y9\"#]\"&wd\"\"#^\"&ko\"\" #_\"&_z\"\"#`\"&O\">\"#a\"&?.#\"#b\"&+;#\"#c\"&!)G#\"#d\"&kU#\"#e\"&[c #\"#f\"&Wr#\"#g-%\"OG6#\"\"\"\"#h" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 256 23 "Count the magic squares" }}{PARA 0 "" 0 "" {TEXT -1 309 "This \+ is the raw data calculated using the standard 8-fold symmetry to reduc e the computation. We assume x[1] is the largest corner and x[3] is t he next largest (as in SLS). The magic sum will be s = 3c.\nNote that the tests of equality are redundant insurance that can be omitted (as shown here) for speedup." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 434 "for k from mink to maxk by step do \n ma[k]:=0: \n for c from 1 to k-1 do\n s:=3*c: \n x[5]:=c: \n btop:=min(c/2,k-c)-1: \n for b from 1 to c /2 do\n atop:=min(k-c-b,c-b)-1: \n for a from b+1 to atop do \n \+ if( a-b<>b ) then \n x[1]:=c+a: \n x[2]:=c-a-b: \n \+ x[3]:=c+b: \n x[7]:=c-b: \n x[8]:=c+a+b: \n \+ x[9]:=c-a: \n x[4]:=c+b-a: \n x[6]:=c+a-b:\n eq := x[7]=x[1] or x[7]=x[4];" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 197 "# \+ eq:= eq or (x[5]=x[2]) or (x[5]=x[4]) or (x[6]=x[3]) or (x[6]=x[ 4]) or (x[6]=x[5]) or (x[8]=x[2]) or (x[8]=x[5]) or (x[8]=x[7]) or (x[ 9]=x[3]) or (x[9]=x[6]) or (x[9]=x[7]) or (x[9]=x[8]):" }}{PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 415 "# eq:= eq or (x[4]=x[3]) or (x[5]=x[1] ) or (x[5]=x[3]) or (x[6]=x[1]) or (x[6]=x[2]) or (x[7]=x[1]) or (x[7] =x[2]) or (x[7]=x[3]) or (x[7]=x[4]) or (x[7]=x[5]) or (x[7]=x[6]) or \+ (x[8]=x[1]) or (x[8]=x[3]) or (x[8]=x[4]) or (x[8]=x[6]) or (x[9]=x[1] ) or (x[9]=x[2]) or (x[9]=x[4]) or (x[9]=x[5]):\n if not eq the n \n ma[k]:=ma[k]+1: #print(s,c,b,a,x); \n else prin t(eq,a,b); \n fi:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "# \+ else print(\"Bad square\", x); " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 193 " fi: \n od:\n od:\n od: \n Ma[k]:=8*ma[k]: \n M[k]:=coeff(Mg fseries,x^k): \n if( Ma[k]=M[k] ) then \n print(k,Ma[k],\"Consisten t\"):\n else \n print(k,Ma[k],M[k],\"Inconsistent\"): \n fi: \nod: " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 " " {XPPMATH 20 "6%\"\"\"\"\"!Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"\"#\"\"!Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"\"$\"\"!Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\" \"%\"\"!Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"\"&\"\"!Q +Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"\"'\"\"!Q+Consiste nt6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"\"(\"\"!Q+Consistent6\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6%\"\")\"\"!Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"\"*\"\"!Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#5\"\")Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#6\"#;Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#7 \"#SQ+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#8\"#kQ+Consi stent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#9\"#'*Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#:\"$G\"Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#;\"$%=Q+Consistent6\"" }}{PARA 11 "" 1 " " {XPPMATH 20 "6%\"#<\"$S#Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#=\"$?$Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#>\"$+%Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#? \"$/&Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#@\"$3'Q+Con sistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#A\"$W(Q+Consistent6\" " }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#B\"$!))Q+Consistent6\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6%\"#C\"%c5Q+Consistent6\"" }}{PARA 11 " " 1 "" {XPPMATH 20 "6%\"#D\"%K7Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#E\"%S9Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#F\"%[;Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#G \"%/>Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#H\"%g@Q+Con sistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#I\"%kCQ+Consistent6\" " }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#J\"%oFQ+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#K\"%?JQ+Consistent6\"" }}{PARA 11 "" 1 " " {XPPMATH 20 "6%\"#L\"%sMQ+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#M\"%!)QQ+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#N\"%)G%Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"# O\"%gZQ+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#P\"%K_Q+Co nsistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#Q\"%gdQ+Consistent6 \"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#R\"%)G'Q+Consistent6\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6%\"#S\"%))oQ+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#T\"%)[(Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#U\"%g\")Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#V\"%K))Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#W\"%w&*Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"# X\"&?.\"Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#Y\"&W6\" Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#Z\"&o>\"Q+Consis tent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#[\"&!)G\"Q+Consistent6\" " }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#\\\"&#z8Q+Consistent6\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6%\"#]\"&%y9Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#^\"&wd\"Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#_\"&ko\"Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#`\"&_z\"Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#a\"&O\">Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#b\"&?.#Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#c\"&+;#Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"# d\"&!)G#Q+Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#e\"&kU#Q +Consistent6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#f\"&[c#Q+Consiste nt6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#g\"&Wr#Q+Consistent6\"" }} }{EXCHG }}{MARK "5 1 0" 205 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 } {PAGENUMBERS 0 1 2 33 1 1 }