(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 6.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 92205, 2293] NotebookOptionsPosition[ 91794, 2275] NotebookOutlinePosition[ 92135, 2290] CellTagsIndexPosition[ 92092, 2287] WindowFrame->Normal ContainsDynamic->True *) (* Beginning of Notebook Content *) Notebook[{ Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "4", ",", "9"}], "}"}]}], "}"}], ";"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{"This", " ", "file", " ", "is", " ", "commented"}], ",", " ", RowBox[{ RowBox[{"the", " ", "others", " ", "are", " ", "not", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"since", " ", "then"}], ",", " ", RowBox[{ "i", " ", "have", " ", "made", " ", "other", " ", "files", " ", "also", " ", "commented"}]}], ")"}], ".", " ", "It"}], " ", "contains", " ", "most", " ", RowBox[{"(", RowBox[{"indeed", ",", " ", RowBox[{"i", " ", "think", " ", "all"}]}], ")"}], " ", "major", " ", "ideas", " ", "and", " ", "subroutines", " ", "that", " ", "are", " ", "being", " ", "used", " ", "in", " ", "any", " ", "of", " ", "the", " ", "other", " ", RowBox[{"files", ".", " ", "The"}], " ", "step"}], "-", "by", "-", RowBox[{ "step", " ", "method", " ", "described", " ", "here", " ", "seems", " ", "to", " ", "be", " ", "the", " ", "most", " ", "efficient", " ", "that", " ", "i", " ", "could", " ", RowBox[{"find", ".", " ", "It"}], " ", "runs", " ", "very", " ", RowBox[{"fast", ".", " ", "However"}]}]}], ",", " ", RowBox[{ RowBox[{ "most", " ", "of", " ", "the", " ", "other", " ", "files", " ", "were", " ", "written", " ", "earlier", " ", "and", " ", "mostly", " ", "contain", " ", "slower", " ", "algorithms", " ", "because", " ", "i", " ", "chose", " ", "non"}], "-", RowBox[{"optimal", " ", "subroutines", " ", "at", " ", "some", " ", RowBox[{"places", ".", " ", RowBox[{"(", RowBox[{ RowBox[{ "The", " ", "only", " ", "optimal", " ", "ones", " ", "are", " ", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "4", ",", "9"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "8", ",", "16"}], "}"}]}], "}"}]}], ";", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "9"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "4", ",", "16"}], "}"}]}], "}"}], ";", " ", RowBox[{"and", " ", "this", " ", RowBox[{"one", "."}]}]}], ")"}]}], " ", "\[IndentingNewLine]", " ", "However"}]}], ",", " ", RowBox[{ RowBox[{"i", " ", "do", " ", "not", " ", "want", " ", "to", " ", "re"}], "-", RowBox[{"write", " ", "them"}]}], ",", " ", RowBox[{"because", " ", "i", " ", RowBox[{"don", "'"}], "thave", " ", "the", " ", "strength", " ", "anymore"}], ",", " ", RowBox[{ RowBox[{ "so", " ", "i", " ", "left", " ", "them", " ", "in", " ", "their", " ", "original", " ", RowBox[{"form", ".", " ", "It"}], " ", "does", " ", "not", " ", "mean", " ", "they", " ", "are", " ", "not", " ", RowBox[{"correct", ".", " ", "They"}], " ", RowBox[{"are", ".", " ", "But"}], " ", "sometimes", " ", "a", " ", "file", " ", "can", " ", "run", " ", "for", " ", "4"}], "-", RowBox[{"5", " ", "hours"}]}], ",", " ", RowBox[{ "instead", " ", "of", " ", "a", " ", "few", " ", "minutes", " ", "whihch", " ", "would", " ", "be", " ", "the", " ", "running", " ", "time", " ", "with", " ", "the", " ", "present", " ", "optimal", " ", RowBox[{"algorithm", "."}]}]}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{ "First", " ", "we", " ", "select", " ", "the", " ", "part", " ", "of", " ", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "4", ",", "9"}], "}"}]}], "}"}], " ", "which", " ", "is", " ", "hopefully", " ", "producing", " ", "fewer", " ", RowBox[{"tiles", ".", " ", "It"}], " ", "is", " ", "usually", " ", "where", " ", "the", " ", "LCM", " ", "is", " ", "larger", " ", "or", " ", "which", " ", "has", " ", "fewer", " ", "elements"}], ";", " ", RowBox[{ RowBox[{"in", " ", "this", " ", RowBox[{"case", ":", " ", RowBox[{"LCM", RowBox[{"(", RowBox[{"3", ",", "8", ",", "16"}], ")"}]}]}]}], "=", RowBox[{ RowBox[{"48", " ", RowBox[{"(", RowBox[{ RowBox[{"while", " ", "LCM", RowBox[{"(", RowBox[{"2", ",", "4", ",", "9"}], ")"}]}], "=", "36"}], ")"}], " ", "and", " ", "both", " ", "have", " ", "12", " ", RowBox[{"elements", ".", " ", "\[IndentingNewLine]", "Then"}], " ", "apply", " ", "C"}], "-", RowBox[{ "M", " ", "to", " ", "get", " ", "a", " ", "universal", " ", "tiling", " ", "complement", " ", "\"\\"", " ", RowBox[{"below", ":"}]}]}]}]}], " ", "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"Dynamic", "[", RowBox[{"{", RowBox[{"j", ",", "i", ",", "g", ",", " ", "mark"}], "}"}], "]"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"Clear", "[", RowBox[{ "n", ",", "B", ",", "R", ",", "Tile", ",", "A", ",", "U", ",", "mark", ",", "T", ",", "g", ",", "x"}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"L", "=", RowBox[{"Expand", "[", RowBox[{ RowBox[{"Cyclotomic", "[", RowBox[{"2", ",", RowBox[{"x", "^", RowBox[{"(", "3", ")"}]}]}], "]"}], RowBox[{"Cyclotomic", "[", RowBox[{"4", ",", RowBox[{"x", "^", RowBox[{"(", "3", ")"}]}]}], "]"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "48"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"B", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"Length", "[", "L", "]"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "2"}], ",", " ", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "L", "]"}]}], ",", " ", RowBox[{ RowBox[{ RowBox[{"B", "[", RowBox[{"[", "j", "]"}], "]"}], "=", RowBox[{"Mod", "[", RowBox[{ RowBox[{"L", "[", RowBox[{"[", RowBox[{"j", ",", "2"}], "]"}], "]"}], ",", "n"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", RowBox[{"B", "\[Union]", RowBox[{"{", "}"}]}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{ RowBox[{ "The", " ", "point", " ", "is", " ", "that", " ", "B", " ", "tiles", " ", "with", " ", "everything", " ", "that", " ", "is", " ", "divided", " ", "by", " ", "each", " ", "of", " ", "Phi_", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ".", " ", "Next"}], " ", "we", " ", "list", " ", "out", " ", "all", " ", "complements", " ", "of", " ", "B", " ", "mod", " ", "LCM"}], "=", RowBox[{ RowBox[{ "48.", " ", "In", " ", "this", " ", "way", " ", "we", " ", "find", " ", "all", " ", "tiles", " ", "mod", " ", "48", " ", "whihch", " ", "are", " ", "divided", " ", "by", " ", "Phi_", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ".", " ", "Finding"}], " ", "these", " ", "tiles", " ", "mod", " ", "48", " ", "could", " ", "also", " ", "be", " ", "ahieved", " ", "by", " ", "using", " ", "the", " ", "structure", " ", "theory", " ", "of", " ", "Section", " ", "4", " ", "of", " ", "\[IndentingNewLine]", "C"}], "-", RowBox[{ RowBox[{"M", ".", " ", "That"}], " ", "is", " ", "probably", " ", "quicker"}]}]}], ",", " ", RowBox[{ "and", " ", "that", " ", "is", " ", "what", " ", "we", " ", "suggest", " ", "in", " ", "the", " ", RowBox[{"paper", ".", " ", "However"}]}], ",", " ", RowBox[{ "i", " ", "only", " ", "thought", " ", "of", " ", "it", " ", "too", " ", "late"}], ",", " ", RowBox[{"and", " ", RowBox[{"that", "'"}], "s", " ", "why", " ", "i", " ", "applied", " ", "the", " ", "present", " ", RowBox[{"method", ".", " ", "It"}], " ", "gives", " ", "the", " ", "same", " ", "result", " ", "but", " ", "probably", " ", "much", " ", RowBox[{"slower", ".", " ", "Anyway"}]}], ",", " ", RowBox[{ RowBox[{ "i", " ", "did", " ", "not", " ", "have", " ", "the", " ", "patience", " ", "to", " ", "go", " ", "through", " ", "the", " ", "structure", " ", "theory", " ", "of", " ", "\[IndentingNewLine]", "C"}], "-", RowBox[{ "M", " ", "and", " ", "write", " ", "yet", " ", "another", " ", "routine", " ", "to", " ", "make", " ", "things", " ", "run", " ", RowBox[{"faster", ".", " ", "However"}]}]}], ",", " ", RowBox[{ "if", " ", "you", " ", "want", " ", "to", " ", "go", " ", "up", " ", "to", " ", "120"}], ",", " ", "180", ",", " ", "200", ",", " ", RowBox[{ "then", " ", "you", " ", "should", " ", "use", " ", "the", " ", "structure", " ", RowBox[{"theory", ".", " ", "\[IndentingNewLine]", "The"}], " ", "routine", " ", "below", " ", "is", " ", "the", " ", "\"\\"", " ", RowBox[{"rotuine", ".", " ", "It"}], " ", "is", " ", "also", " ", "called", " ", "the", " ", "\"\\"", " ", "in", " ", "the", " ", RowBox[{"paper", ".", " ", "We"}], " ", "need", " ", "to", " ", "give", " ", "n", " ", "and", " ", "B", " ", "as", " ", "inputs", " ", "and", " ", "it", " ", "gives", " ", "all", " ", "tiling", " ", "complements", " ", "of", " ", "B", " ", "in", " ", "Z_n", " ", "as", " ", RowBox[{"output", "."}]}]}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Dynamic", "[", RowBox[{"{", RowBox[{"j", ",", "i", ",", "g", ",", " ", "mark"}], "}"}], "]"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"Clear", "[", RowBox[{ "n", ",", "B", ",", "R", ",", "Tile", ",", "A", ",", "U", ",", "mark", ",", "T", ",", "g", ",", "x"}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "48"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"B", "=", RowBox[{"{", RowBox[{"0", ",", "3", ",", "6", ",", "9"}], "}"}]}], "\[IndentingNewLine]", RowBox[{ RowBox[{"Length", "[", "B", "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"Tile", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "1000000"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"R", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "n"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"A", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}], ",", "n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"U", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"U", "[", RowBox[{"[", "1", "]"}], "]"}], "=", "B"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"mark", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"1", "&"}], ",", RowBox[{ RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}], "+", "1"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"T", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{ RowBox[{"{", "0", "}"}], "&"}], ",", RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"g", "=", "1"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", " ", RowBox[{"i", ">", "0"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Length", "[", RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[Equal]", "n"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"Tile", "[", RowBox[{"[", "g", "]"}], "]"}], "=", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}]}], ";", RowBox[{"g", "=", RowBox[{"g", "+", "1"}]}], ";", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}]}], ";", RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", " ", RowBox[{"j", "\[LessEqual]", "n"}], ",", RowBox[{ RowBox[{"k", "=", "100"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"Not", "[", RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], ",", RowBox[{"Mod", "[", RowBox[{"j", ",", "n"}], "]"}]}], "]"}], "]"}], ",", " ", RowBox[{ RowBox[{"k", "=", "0"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"m", "=", "1"}], ",", " ", RowBox[{"m", "\[LessEqual]", RowBox[{"Length", "[", "B", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Intersection]", " ", RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"j", "-", RowBox[{"B", "[", RowBox[{"[", "m", "]"}], "]"}]}], ")"}], "+", "B"}], ",", "n"}], "]"}]}], "\[Equal]", RowBox[{"{", "}"}]}], ",", " ", RowBox[{ RowBox[{"k", "=", RowBox[{"k", "+", "1"}]}], ";", " ", RowBox[{ RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "j", ",", "m"}], "]"}], "]"}], "=", RowBox[{"Mod", "[", RowBox[{ RowBox[{"j", "-", RowBox[{"B", "[", RowBox[{"[", "m", "]"}], "]"}]}], ",", "n"}], "]"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m", "++"}]}]}], "]"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"R", "[", RowBox[{"[", "j", "]"}], "]"}], "=", "k"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"min", "=", RowBox[{"Min", "[", "R", "]"}]}], ";", " ", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"(", RowBox[{"Not", "[", RowBox[{"min", "\[Equal]", "0"}], "]"}], ")"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"t", "=", RowBox[{"Catch", "[", RowBox[{"Do", "[", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"R", "[", RowBox[{"[", "ii", "]"}], "]"}], "\[Equal]", "min"}], ",", " ", RowBox[{"Throw", "[", "ii", "]"}]}], "]"}], ",", RowBox[{"{", RowBox[{"ii", ",", "n"}], "}"}]}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "\[LessEqual]", RowBox[{"Length", "[", "B", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"b", "=", RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", " ", RowBox[{"b", "<=", RowBox[{"Length", "[", "B", "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"b", "+", "1"}]}], ";", RowBox[{"z", "=", "0"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"Not", "[", RowBox[{ RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "t", ",", "b"}], "]"}], "]"}], "\[Equal]", "200"}], "]"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"U", "[", RowBox[{"[", RowBox[{"i", "+", "1"}], "]"}], "]"}], "=", RowBox[{ RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Union]", RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "t", ",", "b"}], "]"}], "]"}], "+", "B"}], ",", "n"}], "]"}]}]}], ";", " ", RowBox[{ RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "+", "1"}], "]"}], "]"}], "=", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Union]", RowBox[{"{", RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "t", ",", "b"}], "]"}], "]"}], "}"}]}]}], ";", " ", RowBox[{"b", "=", RowBox[{ RowBox[{"Length", "[", "B", "]"}], "+", "1"}]}], ";", RowBox[{"z", "=", "1"}], ";", RowBox[{"i", "=", RowBox[{"i", "+", "1"}]}], ";"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"b", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"z", "==", "0"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}]}], "]"}], ";"}], "\[IndentingNewLine]", ",", " ", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}]}], "]"}], ";"}], "\[IndentingNewLine]", ",", " ", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"Tile", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"Tile", "\[Union]", RowBox[{"{", "}"}]}], ",", "1"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Length", "[", "Tile", "]"}], "\[IndentingNewLine]", "Tile", "\[IndentingNewLine]", " ", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{ RowBox[{"Next", " ", "we", " ", "put", " ", "KK"}], "=", "Tile"}], ",", " ", RowBox[{ "and", " ", "shift", " ", "all", " ", "elements", " ", "by", " ", "0"}], ",", "48", ",", " ", RowBox[{ RowBox[{"or", " ", "96", " ", "in", " ", "all", " ", "possible", " ", RowBox[{"ways", ".", " ", "Thus"}], " ", "we", " ", "generate", " ", "all", " ", "possible", " ", "tiles", " ", "T", " ", "in", " ", "Z_", "144", " ", "with", " ", "prescribed", " ", "SA", " ", "set", " ", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ".", " ", "Then"}], " ", "we", " ", "should", " ", "partition", " ", "the", " ", "set", " ", "of", " ", "these", " ", "tiles", " ", "according", " ", "to", " ", "their", " ", "Fourier", " ", "zero"}], "-", RowBox[{"sets", " ", RowBox[{ RowBox[{"(", RowBox[{ "which", " ", "is", " ", "the", " ", "same", " ", "as", " ", "grouping", " ", "them", " ", "according", " ", "to", " ", "cyclotomic", " ", "divisors"}], ")"}], ".", " ", "However"}]}]}], ",", " ", RowBox[{"calculating", " ", "FT", " ", "is", " ", "slow"}], ",", " ", RowBox[{ "tehrefore", " ", "we", " ", "only", " ", "calculate", " ", "some", " ", "relevant", " ", "values", " ", "of", " ", "it"}], ",", " ", RowBox[{"like", " ", "FT_T", RowBox[{"(", "1", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "2", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "3", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "4", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "6", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "12", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "18", ")"}]}], ",", " ", RowBox[{"FT_T", RowBox[{"(", "24", ")"}], " ", "and", " ", "so", " ", "on"}], ",", " ", RowBox[{ "for", " ", "divisros", " ", "of", " ", "144.", " ", "This", " ", "will", " ", "determine", " ", "the", " ", "cyclotomic", " ", RowBox[{"divisors", ".", " ", "And"}], " ", "we", " ", RowBox[{"don", "'"}], "t", " ", "need", " ", "to", " ", "calculate", " ", "all", " ", "of", " ", RowBox[{"them", ":", " ", RowBox[{ RowBox[{"e", ".", "g", ".", " ", "FT"}], RowBox[{"(", RowBox[{"144", "/", "3"}], ")"}]}]}]}], ",", " ", RowBox[{"FT", RowBox[{"(", RowBox[{"144", "/", "8"}], ")"}]}], ",", " ", RowBox[{"FT", RowBox[{"(", RowBox[{"144", "/", "16"}], ")"}], " ", "certainly", " ", "give", " ", "zero"}], ",", " ", RowBox[{"and", " ", "also", " ", "others", " ", "like", " ", RowBox[{"144", "/", "24"}]}], ",", " ", RowBox[{ RowBox[{ RowBox[{"144", "/", "48"}], " ", "because", " ", "of", " ", "the", " ", "C"}], "-", RowBox[{"M", " ", "condition", " ", RowBox[{"T2", ".", " ", "Other"}], " ", "values", " ", "like", " ", RowBox[{"144", "/", "2"}]}]}], ",", RowBox[{"144", "/", "4"}], ",", RowBox[{ RowBox[{ RowBox[{"144", "/", "9"}], " ", "certainly", " ", "give", " ", "non"}], "-", "zero"}], ",", " ", RowBox[{ "because", " ", "of", " ", "condition", " ", "T1", " ", "on", " ", "the", " ", "tiling", " ", "complements", " ", "of", " ", "any", " ", RowBox[{"T", ".", " ", "So"}]}], ",", " ", RowBox[{ RowBox[{ "only", " ", "a", " ", "few", " ", "values", " ", "need", " ", "to", " ", "be", " ", RowBox[{"calculated", ".", " ", "In"}], " ", "this", " ", "particular", " ", "case", " ", "there", " ", "is", " ", "a", " ", RowBox[{"trick", ":", " ", RowBox[{"we", " ", "only", " ", "calculate", " ", "FT_T", RowBox[{"(", "2", ")"}]}]}]}], "=", RowBox[{"FT_T", RowBox[{"(", RowBox[{"144", "/", "72"}], ")"}]}]}], ",", " ", RowBox[{"becasuse", ":", " ", RowBox[{ RowBox[{"if", " ", "FT_T", RowBox[{"(", "2", ")"}], " ", "is", " ", "non"}], "-", "zero"}]}], ",", " ", RowBox[{ RowBox[{ "then", " ", "for", " ", "any", " ", "tiling", " ", "complement", " ", "S", " ", "of", " ", "T", " ", "FT_S", RowBox[{"(", "2", ")"}]}], "=", "0"}], ",", " ", RowBox[{ RowBox[{"so", " ", "\\", "Phi_"}], "72", " ", "must", " ", "divide", " ", "S", RowBox[{"(", "x", ")"}]}], ",", " ", RowBox[{"so", " ", "then", " ", "S", RowBox[{"(", "x", ")"}], " ", "is", " ", "dvisible", " ", RowBox[{"by", " ", "\\", "Phi_"}], "9"}], ",", "18", ",", "36", ",", RowBox[{"72", " ", RowBox[{"(", RowBox[{ "18", " ", "and", " ", "36", " ", "by", " ", "condition", " ", "T2"}], ")"}], " ", "so", " ", "the", " ", "only", " ", "way", " ", "to", " ", "avoid", " ", "periodicity", " ", "of", " ", "S", " ", "is", " ", RowBox[{"if", " ", "\\", "Phi_"}], "144", " ", "does", " ", "not", " ", "divide", " ", RowBox[{"it", ".", " ", "But"}], " ", RowBox[{"then", " ", "\\", "Phi_"}], "144", " ", "must", " ", "divide", " ", "T"}], ",", RowBox[{"and", " ", "therefore", " ", "Phi_", "16"}], ",", "48", ",", RowBox[{"144", " ", "divide", " ", "T"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"so", " ", "then", " ", "T", " ", "is", " ", RowBox[{"periodic", ".", " ", "The"}], " ", "conclusion", " ", "is", " ", "that", " ", "the", " ", "only", " ", "chance", " ", "for", " ", "non"}], "-", RowBox[{"periodicity", " ", "is", " ", "if", " ", "FT_T", RowBox[{"(", "2", ")"}]}]}], "=", "0"}]}], " ", "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Dynamic", "[", RowBox[{"{", RowBox[{"h", ",", "p", ",", "k", ",", "j", ",", "m"}], "}"}], "]"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "144"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"w2", "=", RowBox[{"Exp", "[", RowBox[{"I", " ", "2", " ", RowBox[{"Pi", " ", "/", "72"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"KK", "=", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ "0", ",", "1", ",", "2", ",", "12", ",", "13", ",", "14", ",", "24", ",", "25", ",", "26", ",", "36", ",", "37", ",", "38"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "1", ",", "5", ",", "12", ",", "13", ",", "17", ",", "24", ",", "25", ",", "29", ",", "36", ",", "37", ",", "41"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "1", ",", "8", ",", "12", ",", "13", ",", "20", ",", "24", ",", "25", ",", "32", ",", "36", ",", "37", ",", "44"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "1", ",", "11", ",", "12", ",", "13", ",", "23", ",", "24", ",", "25", ",", "35", ",", "36", ",", "37", ",", "47"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "2", ",", "4", ",", "12", ",", "14", ",", "16", ",", "24", ",", "26", ",", "28", ",", "36", ",", "38", ",", "40"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "2", ",", "7", ",", "12", ",", "14", ",", "19", ",", "24", ",", "26", ",", "31", ",", "36", ",", "38", ",", "43"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "2", ",", "10", ",", "12", ",", "14", ",", "22", ",", "24", ",", "26", ",", "34", ",", "36", ",", "38", ",", "46"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "4", ",", "5", ",", "12", ",", "16", ",", "17", ",", "24", ",", "28", ",", "29", ",", "36", ",", "40", ",", "41"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "4", ",", "8", ",", "12", ",", "16", ",", "20", ",", "24", ",", "28", ",", "32", ",", "36", ",", "40", ",", "44"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "4", ",", "11", ",", "12", ",", "16", ",", "23", ",", "24", ",", "28", ",", "35", ",", "36", ",", "40", ",", "47"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "5", ",", "7", ",", "12", ",", "17", ",", "19", ",", "24", ",", "29", ",", "31", ",", "36", ",", "41", ",", "43"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "5", ",", "10", ",", "12", ",", "17", ",", "22", ",", "24", ",", "29", ",", "34", ",", "36", ",", "41", ",", "46"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "7", ",", "8", ",", "12", ",", "19", ",", "20", ",", "24", ",", "31", ",", "32", ",", "36", ",", "43", ",", "44"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "7", ",", "11", ",", "12", ",", "19", ",", "23", ",", "24", ",", "31", ",", "35", ",", "36", ",", "43", ",", "47"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "8", ",", "10", ",", "12", ",", "20", ",", "22", ",", "24", ",", "32", ",", "34", ",", "36", ",", "44", ",", "46"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "10", ",", "11", ",", "12", ",", "22", ",", "23", ",", "24", ",", "34", ",", "35", ",", "36", ",", "46", ",", "47"}], "}"}]}], "}"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"Tilea", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "200000"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"h", "=", "1"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"p", "=", "1"}], ",", RowBox[{"p", "\[LessEqual]", RowBox[{"Length", "[", "KK", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"k", "=", "0"}], ",", RowBox[{"k", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "0"}], ",", " ", RowBox[{"j", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m", "=", "0"}], ",", RowBox[{"m", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m2", "=", "0"}], ",", RowBox[{"m2", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m3", "=", "0"}], ",", RowBox[{"m3", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m4", "=", "0"}], ",", RowBox[{"m4", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m5", "=", "0"}], ",", RowBox[{"m5", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m6", "=", "0"}], ",", RowBox[{"m6", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m7", "=", "0"}], ",", RowBox[{"m7", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m8", "=", "0"}], ",", RowBox[{"m8", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m9", "=", "0"}], ",", RowBox[{"m9", "\[LessEqual]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"Tilea", "[", RowBox[{"[", "h", "]"}], "]"}], "=", RowBox[{ RowBox[{"{", RowBox[{"0", ",", RowBox[{ RowBox[{"48", "k"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "2"}], "]"}], "]"}]}], ",", RowBox[{ RowBox[{"48", "j"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "3"}], "]"}], "]"}]}], ",", RowBox[{ RowBox[{"48", "m"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "4"}], "]"}], "]"}]}], ",", RowBox[{ RowBox[{"48", "m2"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "5"}], "]"}], "]"}]}], ",", RowBox[{ RowBox[{"48", "m3"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "6"}], "]"}], "]"}]}], ",", " ", RowBox[{ RowBox[{"48", "m4"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "7"}], "]"}], "]"}]}], ",", RowBox[{ RowBox[{"48", "m5"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "8"}], "]"}], "]"}]}], ",", " ", RowBox[{ RowBox[{"48", "m6"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "9"}], "]"}], "]"}]}], ",", RowBox[{ RowBox[{"48", "m7"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "10"}], "]"}], "]"}]}], ",", " ", RowBox[{ RowBox[{"48", "m8"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "11"}], "]"}], "]"}]}], ",", " ", RowBox[{ RowBox[{"48", "m9"}], "+", RowBox[{"KK", "[", RowBox[{"[", RowBox[{"p", ",", "12"}], "]"}], "]"}]}]}], "}"}], "\[Union]", RowBox[{"{", "}"}]}]}], ";", RowBox[{"P", "=", RowBox[{"Tilea", "[", RowBox[{"[", "h", "]"}], "]"}]}], ";", " ", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"Not", "[", RowBox[{ RowBox[{"Chop", "[", RowBox[{"N", "[", RowBox[{"1", "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "2", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "3", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "4", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "5", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "6", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "7", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "8", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "9", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "10", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "11", "]"}], "]"}]}], "+", RowBox[{"w2", "^", RowBox[{"P", "[", RowBox[{"[", "12", "]"}], "]"}]}]}], "]"}], "]"}], "\[Equal]", "0"}], "]"}], ",", " ", RowBox[{ RowBox[{"Tilea", "[", RowBox[{"[", "h", "]"}], "]"}], "=", "0"}], ",", RowBox[{"h", "=", RowBox[{"h", "+", "1"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m9", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m8", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m7", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m6", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m5", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m4", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m3", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m2", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"k", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"p", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"Tilea", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"Tilea", "\[Union]", RowBox[{"{", "0", "}"}]}], ",", "1"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Length", "[", "Tilea", "]"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{ RowBox[{ RowBox[{ "Now", " ", "we", " ", "apply", " ", "the", " ", "subroutine", " ", "below", " ", "to", " ", "select", " ", "those", " ", "tiles", " ", "which", " ", "are", " ", "non"}], "-", "periodic"}], ";", " ", "also"}], ",", " ", RowBox[{ "it", " ", "leaves", " ", "alive", " ", "only", " ", "one", " ", "representtative", " ", "of", " ", "rotated", " ", "copies", " ", "of", " ", "the", " ", "same", " ", RowBox[{"tile", "."}]}]}], " ", "\[IndentingNewLine]", "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", " ", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "Tilea", "]"}]}], ",", " ", RowBox[{ RowBox[{"P", "=", RowBox[{"Tilea", "[", RowBox[{"[", "j", "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "2"}], ",", " ", RowBox[{"i", "<=", RowBox[{"Length", "[", "P", "]"}]}], ",", " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{"Tilea", ",", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{"P", "-", RowBox[{"P", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", "n"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}]}], "]"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"Tilea", "[", RowBox[{"[", "j", "]"}], "]"}], "=", "0"}], ";", RowBox[{"i", "=", RowBox[{ RowBox[{"Length", "[", "P", "]"}], "+", "1"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"i", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\n", " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"Tilea", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"Tilea", "\[Union]", RowBox[{"{", "}"}]}], ",", "1"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Length", "[", "Tilea", "]"}], "\[IndentingNewLine]", "Tilea", "\[IndentingNewLine]", " ", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "4", ",", "9"}], "}"}]}], "}"}], ";"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{ "In", " ", "this", " ", "way", " ", "18000", " ", "tiles", " ", "T", " ", "remain", " ", "that", " ", "are", " ", "still", " ", "possible", " ", "candidates"}], ",", " ", RowBox[{ RowBox[{"because", " ", "we", " ", "found", " ", "that", " ", "FT_T", RowBox[{"(", "2", ")"}]}], "=", "0"}], ",", " ", RowBox[{ RowBox[{"and", " ", "they", " ", "are", " ", "non"}], "-", RowBox[{ RowBox[{"periodic", ".", " ", "Now"}], " ", "we", " ", "partition", " ", "this", " ", "set", " ", "of", " ", RowBox[{"T", "'"}], "s", " ", "according", " ", "to", " ", "their", " ", "Fourier"}], "-", RowBox[{"zero", " ", RowBox[{"set", ".", " ", "More"}], " ", "precisely"}]}], ",", " ", RowBox[{ RowBox[{ "we", " ", "just", " ", "keep", " ", "one", " ", "representative", " ", "for", " ", "each", " ", "occuring", " ", "zero"}], "-", RowBox[{ RowBox[{"set", ".", " ", "MT"}], " ", "contains", " ", "this", " ", "selection"}]}]}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Dynamic", "[", RowBox[{"{", RowBox[{"j", ",", "v", ",", "vvv", ",", "vvvv"}], "}"}], "]"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"T2", "=", "Tilea"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"Clear", "[", "H", "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Length", "[", "T2", "]"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "144"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"H", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"Length", "[", "T2", "]"}], ",", "n"}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"MF", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "100"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"MT", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "100"}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", " ", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "T2", "]"}]}], ",", " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"k", "=", "1"}], ",", " ", RowBox[{"k", "\[LessEqual]", "n"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"T2", "[", RowBox[{"[", "j", "]"}], "]"}], ",", RowBox[{"Mod", "[", RowBox[{"k", ",", "n"}], "]"}]}], "]"}], ",", RowBox[{ RowBox[{"H", "[", RowBox[{"[", RowBox[{"j", ",", "k"}], "]"}], "]"}], "=", "1"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"k", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"MF", "[", RowBox[{"[", "1", "]"}], "]"}], "=", RowBox[{"H", "[", RowBox[{"[", "1", "]"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"MT", "[", RowBox[{"[", "1", "]"}], "]"}], "=", RowBox[{"T2", "[", RowBox[{"[", "1", "]"}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"cont", "=", "1"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"v", "=", "1"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "2"}], ",", " ", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "T2", "]"}]}], ",", " ", RowBox[{ RowBox[{"cont", "=", "1"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"c", "=", "1"}], ",", RowBox[{"c", "\[LessEqual]", "v"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"k", "=", "1"}], ",", " ", RowBox[{"k", "\[LessEqual]", "n"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"Not", "[", RowBox[{ RowBox[{ RowBox[{"Chop", "[", RowBox[{"Fourier", "[", RowBox[{"MF", "[", RowBox[{"[", "c", "]"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "k", "]"}], "]"}], "==", RowBox[{ RowBox[{"Chop", "[", RowBox[{"Fourier", "[", RowBox[{"H", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "k", "]"}], "]"}]}], "]"}], ")"}], "\[And]", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Chop", "[", RowBox[{"Fourier", "[", RowBox[{"MF", "[", RowBox[{"[", "c", "]"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "k", "]"}], "]"}], "\[Equal]", "0"}], "\[Or]", RowBox[{ RowBox[{ RowBox[{"Chop", "[", RowBox[{"Fourier", "[", RowBox[{"H", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "k", "]"}], "]"}], "\[Equal]", "0"}]}], ")"}]}], ",", " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"k", "=", RowBox[{"n", "+", "1"}]}], ";", RowBox[{"cont", "=", RowBox[{"cont", "+", "1"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"k", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"cont", "\[LessEqual]", "c"}], ",", " ", RowBox[{"c", "=", RowBox[{"v", "+", "1"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"c", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"cont", "\[Equal]", RowBox[{"v", "+", "1"}]}], ",", " ", RowBox[{ RowBox[{ RowBox[{"MF", "[", RowBox[{"[", RowBox[{"v", "+", "1"}], "]"}], "]"}], "=", RowBox[{"H", "[", RowBox[{"[", "j", "]"}], "]"}]}], ";", RowBox[{ RowBox[{"MT", "[", RowBox[{"[", RowBox[{"v", "+", "1"}], "]"}], "]"}], "=", RowBox[{"T2", "[", RowBox[{"[", "j", "]"}], "]"}]}], ";", " ", RowBox[{"v", "=", RowBox[{"v", "+", "1"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], " ", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"MT", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"MT", "\[Union]", RowBox[{"{", "}"}]}], ",", "1"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"MF", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"MF", "\[Union]", RowBox[{"{", "}"}]}], ",", "1"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Length", "[", "MF", "]"}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "MT", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"3", ",", "8", ",", "16"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "4", ",", "9"}], "}"}]}], "}"}], ";"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{"Next", ",", " ", RowBox[{ RowBox[{"we", " ", "see", " ", "what", " ", "those", " ", "Fourier"}], "-", RowBox[{"zero", " ", "sets", " ", "are"}]}], ",", " ", RowBox[{ RowBox[{"i", ".", "e", ".", "which"}], " ", "cyclotomic", " ", "factors", " ", "they", " ", RowBox[{"have", "."}]}]}], " ", "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "144"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"J", "=", "MF"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"F1", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"1", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"Length", "[", "J", "]"}], ",", "n"}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "<=", RowBox[{"Length", "[", "J", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", "n"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Chop", "[", RowBox[{"Fourier", "[", RowBox[{"J", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "j", "]"}], "]"}], "\[Equal]", "0"}], ",", " ", RowBox[{ RowBox[{"F1", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "=", "0"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"i", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"F1", ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "144"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"FF1", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"Length", "[", "F1", "]"}], ",", "n"}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "F1", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", "n"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"F1", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "\[Equal]", "0"}], ",", " ", RowBox[{ RowBox[{"FF1", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "=", "j"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"i", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "FF1", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"FF1", "[", RowBox[{"[", "j", "]"}], "]"}], "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{ RowBox[{"FF1", "[", RowBox[{"[", "j", "]"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}], ",", "1"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", RowBox[{"FF1", ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"FF", "=", RowBox[{"FF1", "-", "1"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"m", "=", "1"}], ",", RowBox[{"m", "\[LessEqual]", RowBox[{"Length", "[", "FF1", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"FF1", "[", RowBox[{"[", "m", "]"}], "]"}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"FF", "[", RowBox[{"[", RowBox[{"m", ",", "j"}], "]"}], "]"}], "=", RowBox[{"GCD", "[", RowBox[{ RowBox[{"FF", "[", RowBox[{"[", RowBox[{"m", ",", "j"}], "]"}], "]"}], ",", "n"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", RowBox[{"FF", ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "FF", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"FF", "[", RowBox[{"[", "j", "]"}], "]"}], "=", RowBox[{ RowBox[{"FF", "[", RowBox[{"[", "j", "]"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}]}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "FF", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"FT", "=", RowBox[{"n", "/", "FF"}]}], "\[IndentingNewLine]", RowBox[{ RowBox[{"CFT", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"Length", "[", "FT", "]"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "FT", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"CFT", "[", RowBox[{"[", "j", "]"}], "]"}], "=", RowBox[{"Complement", "[", RowBox[{ RowBox[{"Divisors", "[", "n", "]"}], ",", RowBox[{"FT", "[", RowBox[{"[", "j", "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "CFT", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{ RowBox[{ "We", " ", "see", " ", "that", " ", "the", " ", "remaining", " ", "3", " ", "zero"}], "-", RowBox[{ "sets", " ", "are", " ", "indeed", " ", "candidates", " ", "for", " ", "non"}], "-", RowBox[{"periodic", " ", RowBox[{"tilings", ".", " ", "Therefore"}], " ", "we", " ", "need", " ", "to", " ", "grab", " ", "a", " ", "representative", " ", "for", " ", "them", " ", RowBox[{"(", RowBox[{ RowBox[{"we", " ", "have", " ", "them", " ", "at", " ", "hand"}], ",", " ", RowBox[{"above", " ", "in", " ", "MT"}]}], ")"}], " ", "and", " ", "list", " ", "out", " ", "all", " ", "complements", " ", "for", " ", "each", " ", "set", " ", "J", " ", "in", " ", "MT"}]}], ",", " ", RowBox[{ RowBox[{ RowBox[{ "and", " ", "see", " ", "whether", " ", "any", " ", "complement", " ", "is", " ", "non"}], "-", RowBox[{ RowBox[{"periodic", ".", " ", "This"}], " ", "is", " ", "done", " ", "in", " ", "an", " ", "intelligent", " ", RowBox[{"way", ".", " ", "First"}], " ", "we", " ", "see", " ", "what", " ", "the", " ", "GCD", " ", "of", " ", "J", " ", RowBox[{"is", ".", " ", "For"}], " ", "example", " ", "in", " ", "J"}]}], "=", RowBox[{ RowBox[{"J", "[", RowBox[{"[", "2", "]"}], "]"}], "=", RowBox[{ RowBox[{"{", RowBox[{ "0", ",", "16", ",", "24", ",", "36", ",", "50", ",", "60", ",", "74", ",", "86", ",", "100", ",", "110", ",", "124", ",", "136"}], "}"}], " ", "below", " ", "the", " ", "GCD", " ", "is", " ", "2.", " ", "Therefore", " ", "we", " ", "consider", " ", RowBox[{ RowBox[{"J", "[", RowBox[{"[", "2", "]"}], "]"}], "/", "2"}], " ", "in", " ", "Z_", "72", " ", "and", " ", "list", " ", "out", " ", "all", " ", "complements", " ", "S", " ", "of", " ", RowBox[{ RowBox[{"J", "[", RowBox[{"[", "2", "]"}], "]"}], "/", "2"}]}]}]}], ",", " ", RowBox[{ "and", " ", "see", " ", "what", " ", "the", " ", "maximal", " ", "period", " ", "of", " ", "each", " ", "S", " ", "is", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"if", " ", "it", " ", "is", " ", "72"}], ",", " ", RowBox[{ RowBox[{"then", " ", "S", " ", "is", " ", "non"}], "-", "periodic"}], ",", " ", RowBox[{ "and", " ", "we", " ", "take", " ", "note", " ", "of", " ", "that"}]}], ")"}], ".", " ", "Clearly"}]}], ",", " ", RowBox[{ "if", " ", "all", " ", "S", " ", "have", " ", "the", " ", "same", " ", "maximal", " ", "period", " ", RowBox[{"(", RowBox[{"notequal", " ", "72"}], ")"}]}], ",", " ", RowBox[{ RowBox[{ "then", " ", "we", " ", "have", " ", "no", " ", "chance", " ", "of", " ", "producing", " ", "a", " ", "non"}], "-", RowBox[{ "periodic", " ", "tiling", " ", "of", " ", "Z_", "144", " ", "with", " ", RowBox[{"J", ".", " ", "If"}], " ", "some", " ", "of", " ", "the", " ", "maxperiods", " ", "differ"}]}], ",", " ", RowBox[{"we", " ", "take", " ", "note", " ", "of", " ", "that"}], ",", " ", RowBox[{ RowBox[{ "as", " ", "it", " ", "gives", " ", "a", " ", "chance", " ", "of", " ", "producing", " ", "non"}], "-", RowBox[{"periodic", " ", "tiles", " ", "with", " ", RowBox[{"J", ".", " ", "It"}], " ", "does", " ", "not", " ", "happen", " ", "in", " ", "this", " ", "particular", " ", RowBox[{"case", ".", " ", "\[IndentingNewLine]", "Therefore"}], " ", "we", " ", "arrive", " ", "at", " ", "the", " ", "conclusion", " ", "that", " ", "there", " ", "is", " ", "no", " ", "non"}], "-", RowBox[{ "periodic", " ", "tiling", " ", "for", " ", "this", " ", "partition", " ", "of", " ", RowBox[{"SA", "'"}], "s"}]}], ",", " ", RowBox[{"so", " ", "we", " ", "are", " ", RowBox[{"done", "."}]}]}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Dynamic", "[", RowBox[{"{", RowBox[{ "jj", ",", "j", ",", "i", ",", "g", ",", " ", "mark", ",", " ", "rr"}], "}"}], "]"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"Clear", "[", RowBox[{ "n", ",", "J", ",", "B", ",", "R", ",", "Tile", ",", "A", ",", "U", ",", "mark", ",", "T", ",", "g", ",", "x"}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"n", "=", "144"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"J", "=", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ "0", ",", "14", ",", "24", ",", "36", ",", "49", ",", "60", ",", "73", ",", "85", ",", "98", ",", "109", ",", "122", ",", "134"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "16", ",", "24", ",", "36", ",", "50", ",", "60", ",", "74", ",", "86", ",", "100", ",", "110", ",", "124", ",", "136"}], "}"}], ",", RowBox[{"{", RowBox[{ "0", ",", "20", ",", "24", ",", "36", ",", "52", ",", "60", ",", "76", ",", "88", ",", "104", ",", "112", ",", "128", ",", "140"}], "}"}]}], "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"rr", "=", "1"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"gcd", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"Length", "[", "J", "]"}], ",", RowBox[{"Length", "[", RowBox[{"J", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"kk", "=", "1"}], ",", RowBox[{"kk", "\[LessEqual]", RowBox[{"Length", "[", "J", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"mm", "=", "2"}], ",", RowBox[{"mm", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"J", "[", RowBox[{"[", "kk", "]"}], "]"}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"gcd", "[", RowBox[{"[", RowBox[{"kk", ",", "mm"}], "]"}], "]"}], "=", RowBox[{"GCD", "[", RowBox[{ RowBox[{"gcd", "[", RowBox[{"[", RowBox[{"kk", ",", RowBox[{"mm", "-", "1"}]}], "]"}], "]"}], ",", RowBox[{"J", "[", RowBox[{"[", RowBox[{"kk", ",", "mm"}], "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"mm", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"kk", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"kk", "=", "1"}], ",", RowBox[{"kk", "\[LessEqual]", RowBox[{"Length", "[", "J", "]"}]}], ",", " ", RowBox[{ RowBox[{ RowBox[{"gcd", "[", RowBox[{"[", RowBox[{"kk", ",", RowBox[{"Length", "[", RowBox[{"J", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "]"}], "]"}], "=", RowBox[{"GCD", "[", RowBox[{ RowBox[{"gcd", "[", RowBox[{"[", RowBox[{"kk", ",", RowBox[{"Length", "[", RowBox[{"J", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "]"}], "]"}], ",", "n"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"kk", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"maxperiod", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"Length", "[", "J", "]"}], ",", "10000"}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"jj", "=", "1"}], ",", " ", RowBox[{"jj", "\[LessEqual]", RowBox[{"Length", "[", "J", "]"}]}], ",", RowBox[{ RowBox[{"Clear", "[", RowBox[{ "B", ",", "R", ",", "Tile", ",", "A", ",", "U", ",", "mark", ",", "T", ",", "g", ",", "x"}], "]"}], ";", RowBox[{"n", "=", "144"}], ";", RowBox[{"n", "=", RowBox[{"n", "/", RowBox[{"gcd", "[", RowBox[{"[", RowBox[{"jj", ",", " ", RowBox[{"Length", "[", RowBox[{"J", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "]"}], "]"}]}]}], ";", RowBox[{"B", "=", RowBox[{ RowBox[{"J", "[", RowBox[{"[", "jj", "]"}], "]"}], "/", RowBox[{"gcd", "[", RowBox[{"[", RowBox[{"jj", ",", RowBox[{"Length", "[", RowBox[{"J", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "]"}], "]"}]}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Tile", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "100000"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"R", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", "n"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"A", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}], ",", "n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"U", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"0", "&"}], ",", RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"U", "[", RowBox[{"[", "1", "]"}], "]"}], "=", "B"}], ";", "\[IndentingNewLine]", RowBox[{"mark", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"1", "&"}], ",", RowBox[{ RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}], "+", "1"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"T", "=", RowBox[{"Array", "[", RowBox[{ RowBox[{ RowBox[{"{", "0", "}"}], "&"}], ",", RowBox[{"n", "/", RowBox[{"Length", "[", "B", "]"}]}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"g", "=", "1"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", " ", RowBox[{"i", ">", "0"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Length", "[", RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[Equal]", "n"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"Tile", "[", RowBox[{"[", "g", "]"}], "]"}], "=", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}]}], ";", RowBox[{ RowBox[{"maxperiod", "[", RowBox[{"[", RowBox[{"jj", ",", "g"}], "]"}], "]"}], "=", "99"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"ff", "=", RowBox[{ RowBox[{"Length", "[", RowBox[{"Divisors", "[", "n", "]"}], "]"}], "-", "1"}]}], ",", " ", RowBox[{"ff", ">", "0"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Divisors", "[", "n", "]"}], "[", RowBox[{"[", "ff", "]"}], "]"}], ")"}], "+", RowBox[{"Tile", "[", RowBox[{"[", "g", "]"}], "]"}]}], ")"}], ",", "n"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}], "==", RowBox[{"Tile", "[", RowBox[{"[", "g", "]"}], "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{"Tile", "[", RowBox[{"[", "g", "]"}], "]"}], "=", "0"}], ";", RowBox[{ RowBox[{"maxperiod", "[", RowBox[{"[", RowBox[{"jj", ",", "g"}], "]"}], "]"}], "=", RowBox[{ RowBox[{"Divisors", "[", "n", "]"}], "[", RowBox[{"[", "ff", "]"}], "]"}]}], ";", RowBox[{"ff", "=", "0"}], ";"}]}], "\[IndentingNewLine]", " ", "]"}], ";", "\[IndentingNewLine]", RowBox[{"ff", "=", RowBox[{"ff", "-", "1"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", " ", RowBox[{"g", "=", RowBox[{"g", "+", "1"}]}], ";", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}]}], ";", RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", " ", RowBox[{"j", "\[LessEqual]", "n"}], ",", RowBox[{ RowBox[{"k", "=", "100"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"Not", "[", RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], ",", RowBox[{"Mod", "[", RowBox[{"j", ",", "n"}], "]"}]}], "]"}], "]"}], ",", " ", RowBox[{ RowBox[{"k", "=", "0"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"m", "=", "1"}], ",", " ", RowBox[{"m", "\[LessEqual]", RowBox[{"Length", "[", "B", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Intersection]", " ", RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"j", "-", RowBox[{"B", "[", RowBox[{"[", "m", "]"}], "]"}]}], ")"}], "+", "B"}], ",", "n"}], "]"}]}], "\[Equal]", RowBox[{"{", "}"}]}], ",", " ", RowBox[{ RowBox[{"k", "=", RowBox[{"k", "+", "1"}]}], ";", " ", RowBox[{ RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "j", ",", "m"}], "]"}], "]"}], "=", RowBox[{"Mod", "[", RowBox[{ RowBox[{"j", "-", RowBox[{"B", "[", RowBox[{"[", "m", "]"}], "]"}]}], ",", "n"}], "]"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"m", "++"}]}]}], "]"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"R", "[", RowBox[{"[", "j", "]"}], "]"}], "=", "k"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"min", "=", RowBox[{"Min", "[", "R", "]"}]}], ";", " ", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"(", RowBox[{"Not", "[", RowBox[{"min", "\[Equal]", "0"}], "]"}], ")"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"t", "=", RowBox[{"Catch", "[", RowBox[{"Do", "[", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"R", "[", RowBox[{"[", "ii", "]"}], "]"}], "\[Equal]", "min"}], ",", " ", RowBox[{"Throw", "[", "ii", "]"}]}], "]"}], ",", RowBox[{"{", RowBox[{"ii", ",", "n"}], "}"}]}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "\[LessEqual]", RowBox[{"Length", "[", "B", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"b", "=", RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", " ", RowBox[{"b", "<=", RowBox[{"Length", "[", "B", "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"b", "+", "1"}]}], ";", RowBox[{"z", "=", "0"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"Not", "[", RowBox[{ RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "t", ",", "b"}], "]"}], "]"}], "\[Equal]", "200"}], "]"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"U", "[", RowBox[{"[", RowBox[{"i", "+", "1"}], "]"}], "]"}], "=", RowBox[{ RowBox[{"U", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Union]", RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "t", ",", "b"}], "]"}], "]"}], "+", "B"}], ",", "n"}], "]"}]}]}], ";", " ", RowBox[{ RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "+", "1"}], "]"}], "]"}], "=", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Union]", RowBox[{"{", RowBox[{"A", "[", RowBox[{"[", RowBox[{"i", ",", "t", ",", "b"}], "]"}], "]"}], "}"}]}]}], ";", " ", RowBox[{"b", "=", RowBox[{ RowBox[{"Length", "[", "B", "]"}], "+", "1"}]}], ";", RowBox[{"z", "=", "1"}], ";", RowBox[{"i", "=", RowBox[{"i", "+", "1"}]}], ";"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"b", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"z", "==", "0"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}]}], "]"}], ";"}], "\[IndentingNewLine]", ",", " ", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}]}], "]"}], ";"}], "\[IndentingNewLine]", ",", " ", RowBox[{ RowBox[{ RowBox[{"mark", "[", RowBox[{"[", "i", "]"}], "]"}], "=", "1"}], ";", RowBox[{ RowBox[{"A", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"Array", "[", RowBox[{ RowBox[{"200", "&"}], ",", RowBox[{"{", RowBox[{"n", ",", RowBox[{"Length", "[", "B", "]"}]}], "}"}]}], "]"}]}], ";", RowBox[{ RowBox[{"T", "[", RowBox[{"[", "i", "]"}], "]"}], "=", RowBox[{"T", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}]}], ";", RowBox[{"i", "=", RowBox[{"i", "-", "1"}]}]}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Tile", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"Tile", "\[Union]", RowBox[{"{", "0", "}"}]}], ",", "1"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"Length", "[", "Tile", "]"}], "\[IndentingNewLine]", "Tile"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", " ", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "Tile", "]"}]}], ",", " ", RowBox[{ RowBox[{"P", "=", RowBox[{"Tile", "[", RowBox[{"[", "j", "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "2"}], ",", " ", RowBox[{"i", "<=", RowBox[{"Length", "[", "P", "]"}]}], ",", " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{"Tile", ",", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{"P", "-", RowBox[{"P", "[", RowBox[{"[", "i", "]"}], "]"}]}], ",", "n"}], "]"}], "\[Union]", RowBox[{"{", "}"}]}]}], "]"}], ",", " ", RowBox[{ RowBox[{ RowBox[{"Tile", "[", RowBox[{"[", "j", "]"}], "]"}], "=", "0"}], ";", RowBox[{"i", "=", RowBox[{ RowBox[{"Length", "[", "P", "]"}], "+", "1"}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"i", "++"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";", " ", "\[IndentingNewLine]", RowBox[{"Tile", "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"Tile", "\[Union]", RowBox[{"{", "0", "}"}]}], ",", "1"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"Not", "[", RowBox[{ RowBox[{"Length", "[", "Tile", "]"}], "\[Equal]", "0"}], "]"}], ",", " ", RowBox[{"rr", "=", RowBox[{"rr", "+", "1"}]}]}], "]"}], ";", "\[IndentingNewLine]", "Tile", ";", "\[IndentingNewLine]", RowBox[{"jj", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "rr", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "maxperiod", "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{"maxperiod", "[", RowBox[{"[", "j", "]"}], "]"}], "=", RowBox[{"Drop", "[", RowBox[{ RowBox[{ RowBox[{"maxperiod", "[", RowBox[{"[", "j", "]"}], "]"}], "\[Union]", RowBox[{"{", "0", "}"}]}], ",", "1"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"j", "++"}]}]}], "]"}], ";"}], "\[IndentingNewLine]", "maxperiod", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]"}]}]], "Input", CellChangeTimes->{ 3.432196440375*^9, 3.432196498953125*^9, {3.432196541921875*^9, 3.43219668125*^9}, {3.432198106265625*^9, 3.432198448796875*^9}, { 3.432198488140625*^9, 3.432198574296875*^9}, {3.43219862125*^9, 3.43219869603125*^9}, {3.43219880003125*^9, 3.432199226203125*^9}, { 3.43219934334375*^9, 3.43219983984375*^9}, {3.432199888109375*^9, 3.432200298984375*^9}, {3.4322003466875*^9, 3.432200401953125*^9}, { 3.432200521484375*^9, 3.432200740875*^9}, {3.43220100909375*^9, 3.432201163796875*^9}, {3.432201263125*^9, 3.432201422546875*^9}, { 3.432208897046875*^9, 3.432209237078125*^9}, {3.432459520171875*^9, 3.432459542375*^9}, {3.432459609140625*^9, 3.43245990178125*^9}, { 3.43245993421875*^9, 3.432459971265625*^9}, {3.43246002259375*^9, 3.432460295*^9}, {3.43246034178125*^9, 3.432460469796875*^9}, { 3.432460511625*^9, 3.432460519328125*^9}, {3.43246058340625*^9, 3.43246073471875*^9}, {3.43246079090625*^9, 3.43246080971875*^9}, { 3.4324608938125*^9, 3.432460953203125*^9}, {3.432461075515625*^9, 3.43246107928125*^9}, 3.432461121828125*^9, {3.433608600484375*^9, 3.43360863240625*^9}, {3.433608672046875*^9, 3.4336087385625*^9}, { 3.433608807640625*^9, 3.4336088090625*^9}, 3.433615169703125*^9, { 3.433653228265625*^9, 3.433653229296875*^9}, {3.433653266140625*^9, 3.433653289171875*^9}, {3.433653680390625*^9, 3.433653690046875*^9}, { 3.43365373096875*^9, 3.433653736390625*^9}}], Cell[BoxData[ DynamicBox[ ToBoxes[{$CellContext`jj, $CellContext`j, $CellContext`i, $CellContext`g, \ $CellContext`mark, $CellContext`rr}, StandardForm], ImageSizeCache->{180.5, {2., 8.}}]], "Output", CellChangeTimes->{3.43220117575*^9, 3.433653696640625*^9}], Cell[BoxData["1"], "Output", CellChangeTimes->{3.43220117575*^9, 3.433653709*^9}], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", "48", "}"}], ",", RowBox[{"{", "24", "}"}], ",", RowBox[{"{", "12", "}"}]}], "}"}]], "Output", CellChangeTimes->{3.43220117575*^9, 3.433653709015625*^9}] }, Open ]] }, WindowSize->{937, 567}, WindowMargins->{{91, Automatic}, {41, Automatic}}, FrontEndVersion->"6.0 for Microsoft Windows (32-bit) (June 19, 2007)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[590, 23, 90614, 2231, 7572, "Input"], Cell[91207, 2256, 265, 5, 30, "Output"], Cell[91475, 2263, 82, 1, 30, "Output"], Cell[91560, 2266, 218, 6, 30, "Output"] }, Open ]] } ] *) (* End of internal cache information *)