(* Content-type: application/vnd.wolfram.mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 9.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 157, 7] NotebookDataLength[ 94058, 2751] NotebookOptionsPosition[ 87566, 2548] NotebookOutlinePosition[ 88052, 2567] CellTagsIndexPosition[ 88009, 2564] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[TextData[{ "http://www.mcs.csueastbay.edu/~kbalasub/reprints/136.pdf\n\ http://www.math.umn.edu/~tlawson/old/18.704/symmetric1.pdf\n\ http://www.polyomino.f2s.com/david/haskell/charactersSn.html\n\ http://en.wikipedia.org/wiki/Symmetric_polynomial\n", StyleBox["http://www.personal.rhul.ac.uk/usah/080/QITNotes_files/Irreps_v06.\ pdf\n", FontVariations->{"CompatibilityType"->0}], "http://mathcircle.berkeley.edu/BMC3/SymPol.pdf\n\ http://faculty.math.tsinghua.edu.cn/~jzhou/SymmetricF.pdf\n\ Littlewood-Richardson program: ", StyleBox["Copyright 1996 by Daniel Bump (bump@math.stanford.edu)", FontFamily->"Courier New", FontSize->10], "\nhttp://math.stackexchange.com/questions/114151\nhttp:// \ math.stackexchange.com/questions/395842\nhttp : // \ math.stackexchange.com/questions/83214\n", StyleBox["special thanks to Marc van Leeuwen for several patient \ explanations, both by email and on Math StackExchange.", FontSlant->"Italic"] }], "Text", CellChangeTimes->{{3.577533907818513*^9, 3.5775339094591804`*^9}, 3.5779648110843143`*^9, {3.577964883421452*^9, 3.5779649475391197`*^9}, { 3.577965576535096*^9, 3.577965628862089*^9}, {3.5779657832209177`*^9, 3.577965784902014*^9}, {3.577965921363819*^9, 3.5779659607240705`*^9}, { 3.578050407713518*^9, 3.5780504131768303`*^9}, {3.5780504478808155`*^9, 3.578050448857871*^9}, {3.5780505104883966`*^9, 3.5780505461364355`*^9}}], Cell[CellGroupData[{ Cell["inits", "Subsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell["variables in use before:", "Text", CellChangeTimes->{{3.5776901733919764`*^9, 3.577690190783269*^9}}], Cell["\<\ DeleteCases[Names[\"@*\"], str_ /; StringMatchQ[str, \"$*\"] || StringMatchQ[ToString[FullForm[str]], \"*Formal*\"]]\ \>", "Input", InitializationCell->True, CellChangeTimes->{3.5781164773149967`*^9}], Cell[TextData[{ "variables in use after installing ToolBox.nb : (all other cells are \ initialisation cells, ", StyleBox["execute this one", FontColor->RGBColor[1, 0, 0]], " to have it as last instruction)" }], "Text", CellChangeTimes->{{3.5776901733919764`*^9, 3.577690190783269*^9}, { 3.577690265879903*^9, 3.5776903438203955`*^9}, {3.5776903760716343`*^9, 3.5776904091666546`*^9}}], Cell[BoxData[ RowBox[{"DeleteCases", "[", RowBox[{ RowBox[{"Names", "[", "\"\<@*\>\"", "]"}], ",", " ", RowBox[{"str_", " ", "/;", " ", RowBox[{ RowBox[{"StringMatchQ", "[", RowBox[{"str", ",", " ", "\"\<$*\>\""}], "]"}], " ", "||", " ", "\n", " ", RowBox[{"StringMatchQ", "[", RowBox[{ RowBox[{"ToString", "[", RowBox[{"FullForm", "[", "str", "]"}], "]"}], ",", " ", "\"\<*Formal*\>\""}], "]"}]}]}]}], "]"}]], "Input", CellChangeTimes->{{3.578116420703086*^9, 3.5781164576422405`*^9}}, FontColor->RGBColor[1, 0, 0]], Cell[BoxData[ RowBox[{ RowBox[{"<<", "Combinatorica`"}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{ 3.576060951948417*^9, {3.576061233026494*^9, 3.5760612401219*^9}, 3.577419690677643*^9}, LineBreakWithin->False], Cell[CellGroupData[{ Cell["General", "Subsubsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"BinomialTransform", "[", RowBox[{ RowBox[{"{", "}"}], ",", "___"}], "]"}], "=", RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"BinomialTransform", "[", RowBox[{"seq_List", ",", RowBox[{"way_:", "1"}]}], "]"}], ":=", RowBox[{"Table", "[", RowBox[{ RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"way", "^", RowBox[{"(", RowBox[{"i", "-", "1", "-", "k"}], ")"}]}], "*", RowBox[{"Binomial", "[", RowBox[{ RowBox[{"i", "-", "1"}], ",", "k"}], "]"}], "*", RowBox[{"seq", "[", RowBox[{"[", RowBox[{"k", "+", "1"}], "]"}], "]"}]}], ",", RowBox[{"{", RowBox[{"k", ",", "0", ",", RowBox[{"i", "-", "1"}]}], "}"}]}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", RowBox[{"Length", "[", "seq", "]"}]}], "}"}]}], "]"}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"BinomialInvTransform", "[", RowBox[{ RowBox[{"{", "}"}], ",", "___"}], "]"}], "=", RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"BinomialInvTransform", "[", RowBox[{"seq_List", ",", RowBox[{"way_:", "1"}]}], "]"}], ":=", RowBox[{ StyleBox["BinomialTransform", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"seq", ",", RowBox[{"-", "way"}]}], "]"}]}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[TextData[{ "toPolCoeff[arg_] := Block[{le = Length[arg], r, k}, arg . \ Inverse[Table[k!*StirlingS2[r, k], {r, 0, le - 1}, {k, 0, le - 1}]]]; \n\ toPolCoeff2[arg_] := Block[{le = Length[arg], x, z}, CoefficientList[", StyleBox["toPolCoeff", FontColor->RGBColor[0, 0, 1]], "[arg] . x^Range[0, -1 + le] /. x -> z - 1, z]]; \nfromPolCoeff[arg_] := \ Block[{le = Length[arg], r, k}, Table[If[r === k === 0, 1, r^k], {r, 0, le - \ 1}, {k, 0, le - 1}] . arg]; " }], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[" the variable q should be localised", "Text", FontColor->GrayLevel[0.5]], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{ RowBox[{ RowBox[{"qbinomial", "[", RowBox[{"n_Integer", ",", "m_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{"Together", "[", RowBox[{"Product", "[", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"1", "-", RowBox[{"q", "^", RowBox[{"(", RowBox[{"n", "-", "j"}], ")"}]}]}], ")"}], "/", RowBox[{"(", RowBox[{"1", "-", RowBox[{"q", "^", RowBox[{"(", RowBox[{"j", "+", "1"}], ")"}]}]}], ")"}]}], ",", RowBox[{"{", RowBox[{"j", ",", "0", ",", RowBox[{"m", "-", "1"}]}], "}"}]}], "]"}], "]"}], "]"}]}], ";"}], " ", "*)"}]], "Input", PageWidth->WindowWidth, Evaluatable->False, LineBreakWithin->False], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{ RowBox[{ RowBox[{"integerpartitions", "[", RowBox[{"n_", ",", "m_"}], "]"}], ":=", RowBox[{"Coefficient", "[", RowBox[{ RowBox[{ StyleBox["qbinomial", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{ RowBox[{"n", "+", "1", "+", "m"}], ",", "m"}], "]"}], ",", RowBox[{"q", "^", "n"}]}], "]"}]}], ";"}], "*)"}]], "Input", PageWidth->WindowWidth, Evaluatable->False, LineBreakWithin->False], Cell["\<\ (* from Combinatorica.m Package Version: 2.0.0 Copyright 2000-2003 by Sriram \ V. Pemmaraju and Steven S. Skiena *) NumberOfPartitions2[n_Integer?Positive, 0] := 0 ; NumberOfPartitions2[0, k_Integer] := 1 ; NumberOfPartitions2[n_Integer?Positive, 1] := 1; NumberOfPartitions2[n_Integer?Positive, k_Integer?Positive] := \ NumberOfPartitions[n] /; (k >= n); NumberOfPartitions2[n_Integer, k_Integer] := Block[{$RecursionLimit = Infinity}, NumberOfPartitions2[n, k] = NumberOfPartitions2[n, k-1] + \ NumberOfPartitions2[n-k, k] ];\ \>", "Input", InitializationCell->True], Cell[TextData[{ "(* integerpartitions[n_,m_]:=", StyleBox["NumberOfPartitions2", FontColor->RGBColor[0, 0, 1]], "[n,m]; *)" }], "Input", Evaluatable->False, CellChangeTimes->{{3.5776832141282773`*^9, 3.577683218222263*^9}}, FontColor->GrayLevel[0.5]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"rankpartition", "[", RowBox[{ RowBox[{"(", "p_", ")"}], "?", "PartitionQ"}], "]"}], ":=", RowBox[{ RowBox[{"PartitionsP", "[", RowBox[{"Tr", "[", "p", "]"}], "]"}], "-", RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ StyleBox["NumberOfPartitions2", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{ RowBox[{"Tr", "[", "#1", "]"}], ",", RowBox[{ RowBox[{"First", "[", "#1", "]"}], "-", "1"}]}], "]"}], "&"}], ")"}], "[", RowBox[{"Drop", "[", RowBox[{"p", ",", "k"}], "]"}], "]"}], ",", RowBox[{"{", RowBox[{"k", ",", "0", ",", RowBox[{ RowBox[{"Length", "[", "p", "]"}], "-", "1"}]}], "}"}]}], "]"}]}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{3.5776831923457727`*^9}, LineBreakWithin->False], Cell["\<\ unrankpartition[n_Integer,k_Integer]:=Block[{ove,res,qq,zz,mem}, ove=PartitionsP[n]-k; res={}; While[n-Tr[res]>0, \tqq=0;zz=0;While[(mem= NumberOfPartitions2[n-Tr[res],qq+1])<= \ ove,zz=mem;qq++]; AppendTo[res,qq+1];ove=ove-zz]; res]/; (k<=PartitionsP[n]&& k>0);\ \>", "Input", InitializationCell->True, CellChangeTimes->{3.577683194736535*^9}], Cell[BoxData[ RowBox[{ RowBox[{"aspartitions", "[", "n_", "]"}], ":=", RowBox[{"Reverse", "/@", RowBox[{"Sort", "[", RowBox[{"Sort", "/@", RowBox[{"Partitions", "[", "n", "]"}]}], "]"}]}]}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{"asorder", "[", "n_", "]"}], ":=", RowBox[{"rankpartition", "/@", RowBox[{"Reverse", "/@", RowBox[{"Sort", "[", RowBox[{"Sort", "/@", RowBox[{"Partitions", "[", "n", "]"}]}], "]"}]}]}]}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{"Clear", "[", "lesspartitions", "]"}]], "Input", CellChangeTimes->{{3.5778850099314766`*^9, 3.577885017546912*^9}}], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{ RowBox[{"lesspartitions", "[", RowBox[{"\[Lambda]_", "?", "PartitionQ"}], "]"}], ":=", RowBox[{"Select", "[", RowBox[{ RowBox[{"Partitions", "[", RowBox[{"Tr", "@", "\[Lambda]"}], "]"}], ",", RowBox[{ RowBox[{"Not", "[", RowBox[{"And", "@@", RowBox[{"Thread", "[", RowBox[{ RowBox[{"Rest", "[", RowBox[{"FoldList", "[", RowBox[{"Plus", ",", "0", ",", RowBox[{"PadRight", "[", RowBox[{"#", ",", RowBox[{"Tr", "@", "\[Lambda]"}]}], "]"}]}], "]"}], "]"}], "\[GreaterEqual]", RowBox[{"Rest", "[", RowBox[{"FoldList", "[", RowBox[{"Plus", ",", "0", ",", RowBox[{"PadRight", "[", RowBox[{"\[Lambda]", ",", RowBox[{"Tr", "@", "\[Lambda]"}]}], "]"}]}], "]"}], "]"}]}], "]"}]}], "]"}], "&"}]}], "]"}]}], " ", "*)"}]], "Input", PageWidth->WindowWidth, Evaluatable->False, CellChangeTimes->{{3.5778850289395638`*^9, 3.577885035154919*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{"lesspartitions", "[", RowBox[{"\[Lambda]_", "?", "PartitionQ"}], "]"}], ":=", RowBox[{"Drop", "[", RowBox[{ RowBox[{"Partitions", "[", RowBox[{"Tr", "@", "\[Lambda]"}], "]"}], ",", RowBox[{"rankpartition", "[", "\[Lambda]", "]"}]}], "]"}]}]], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.5778848984430995`*^9, 3.5778849201473413`*^9}, { 3.577884965138914*^9, 3.577884978715691*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"trim", "[", RowBox[{"\[Lambda]_", "?", "PartitionQ"}], "]"}], ":=", RowBox[{ RowBox[{ RowBox[{"DeleteCases", "[", RowBox[{ RowBox[{"MapAt", "[", RowBox[{ RowBox[{ RowBox[{"#", "-", "1"}], "&"}], ",", "\[Lambda]", ",", "#"}], "]"}], ",", "0"}], "]"}], "&"}], "/@", RowBox[{"Position", "[", RowBox[{ RowBox[{"\[Lambda]", " ", "-", RowBox[{"Append", "[", RowBox[{ RowBox[{"Rest", "[", "\[Lambda]", "]"}], ",", "0"}], "]"}]}], ",", RowBox[{"_", "?", "Positive"}]}], "]"}]}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5770877612388086`*^9, 3.5770879045560064`*^9}, { 3.577088321448851*^9, 3.5770883352016373`*^9}, 3.577088451016262*^9, 3.5776846407814674`*^9}, Background->RGBColor[0.87, 0.94, 1]] }, Closed]], Cell[CellGroupData[{ Cell["Kostka", "Subsubsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"multi", "[", RowBox[{"n_", ",", "v_", ",", "q_", ",", "le_"}], "]"}], ":=", RowBox[{"Take", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Multinomial", "@@", RowBox[{"Append", "[", RowBox[{ RowBox[{"Length", "/@", RowBox[{"Split", "[", RowBox[{"Sort", "[", "#1", "]"}], "]"}]}], ",", RowBox[{"v", "-", "#2"}]}], "]"}]}], " ", "#3"}], ")"}], "&"}], "@@@", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{"#", ",", RowBox[{"Length", "[", "#", "]"}], ",", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Length", "[", "#", "]"}], ">", "v"}], "||", RowBox[{ RowBox[{"Length", "[", "#", "]"}], "<", "le"}]}], ",", "0", ",", "1"}], "]"}]}], "}"}], "&"}], "/@", RowBox[{"Partitions", "[", "n", "]"}]}], ")"}]}], ",", RowBox[{"{", RowBox[{"q", ",", RowBox[{"-", "1"}]}], "}"}]}], "]"}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"multipol", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", RowBox[{ StyleBox["multi", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{ RowBox[{"Tr", "[", "par", "]"}], ",", "v", ",", RowBox[{ StyleBox["rankpartition", FontColor->RGBColor[0, 0, 1]], "[", "par", "]"}], ",", RowBox[{"Length", "[", "par", "]"}]}], "]"}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"recur", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_Integer", ",", RowBox[{"h_:", RowBox[{"{", "}"}]}]}], "]"}], ":=", RowBox[{"0", "/;", RowBox[{"v", "<", RowBox[{"Length", "[", "par", "]"}]}]}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"recur", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_Integer", ",", RowBox[{"h_:", RowBox[{"{", "}"}]}]}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{"segs", ",", "deco", ",", "trabase", ",", "np"}], "}"}], ",", RowBox[{ RowBox[{"np", "=", RowBox[{"Tr", "[", "par", "]"}]}], ";", RowBox[{"segs", "=", RowBox[{"Length", "/@", RowBox[{"Split", "[", RowBox[{"TransposePartition", "[", "par", "]"}], "]"}]}]}], ";", "\n", RowBox[{"deco", "=", RowBox[{ RowBox[{ RowBox[{"Table", "[", RowBox[{ RowBox[{"Max", "[", RowBox[{"0", ",", RowBox[{"Min", "[", RowBox[{ RowBox[{"i", "-", "j", "+", "1"}], ",", "1"}], "]"}]}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", "0", ",", "#"}], "}"}], ",", RowBox[{"{", RowBox[{"j", ",", "#"}], "}"}]}], "]"}], "&"}], "/@", "segs"}]}], ";", RowBox[{"trabase", "=", RowBox[{ RowBox[{"TransposePartition", "[", "par", "]"}], "-", "1"}]}], ";", "\n", RowBox[{"Tr", "[", RowBox[{ RowBox[{"Flatten", "[", RowBox[{"Outer", "[", RowBox[{ RowBox[{ RowBox[{"w", "[", RowBox[{"TransposePartition", "[", RowBox[{"DeleteCases", "[", RowBox[{ RowBox[{"trabase", "+", RowBox[{"Flatten", "[", RowBox[{"{", "##", "}"}], "]"}]}], ",", "0"}], "]"}], "]"}], "]"}], "&"}], ",", RowBox[{"Sequence", "@@", "deco"}], ",", "1"}], "]"}], "]"}], "/.", RowBox[{ RowBox[{"w", "[", "q_List", "]"}], "\[Rule]", RowBox[{"temp", "[", RowBox[{"q", ",", RowBox[{"v", "-", "1"}], ",", RowBox[{"DeleteCases", "[", RowBox[{ RowBox[{"Sort", "[", RowBox[{"Append", "[", RowBox[{"h", ",", RowBox[{"np", "-", RowBox[{"Tr", "[", "q", "]"}], "-", RowBox[{"Tr", "[", "h", "]"}]}]}], "]"}], "]"}], ",", "0"}], "]"}]}], "]"}]}]}], "]"}]}]}], "]"}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"intermed0", "[", RowBox[{"par_List", ",", "v_Integer", ",", "h_List"}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", "}"}], ",", RowBox[{ RowBox[{ RowBox[{ RowBox[{"w", "[", RowBox[{"Reverse", "[", RowBox[{"Sort", "[", RowBox[{"Append", "[", RowBox[{"#", ",", RowBox[{"Tr", "[", "h", "]"}]}], "]"}], "]"}], "]"}], "]"}], "&"}], "/@", "\n", RowBox[{"Take", "[", RowBox[{ RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "par", "]"}], "]"}], ",", RowBox[{"-", RowBox[{"(", RowBox[{ RowBox[{"PartitionsP", "[", RowBox[{"Tr", "[", "par", "]"}], "]"}], "+", "1", "-", RowBox[{ StyleBox["rankpartition", FontColor->RGBColor[0, 0, 1]], "[", "par", "]"}]}], ")"}]}]}], "]"}]}], ".", RowBox[{"MapThread", "[", RowBox[{ RowBox[{ RowBox[{"Times", "[", RowBox[{"#1", ",", "#2"}], "]"}], "&"}], ",", RowBox[{"{", RowBox[{ RowBox[{ StyleBox["multipol", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"par", ",", "v"}], "]"}], ",", RowBox[{ StyleBox["kostka1", FontColor->RGBColor[0, 0, 1]], "[", "par", "]"}]}], "}"}]}], "]"}]}]}], "]"}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "kostka1", "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"kostka1", "[", RowBox[{"{", RowBox[{"1", ".."}], "}"}], "]"}], ":=", RowBox[{"{", "1", "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"kostka1", "[", RowBox[{"{", "k_Integer", "}"}], "]"}], ":=", RowBox[{"1", "+", RowBox[{"0", "*", RowBox[{"Range", "[", RowBox[{"PartitionsP", "[", "k", "]"}], "]"}]}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"kostka1", "[", RowBox[{"par_", "?", "PartitionQ"}], "]"}], ":=", RowBox[{ RowBox[{ StyleBox["kostka1", FontColor->RGBColor[0, 0, 1]], "[", "par", "]"}], "=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"parlen", "=", RowBox[{"Tr", "[", "par", "]"}]}], ",", RowBox[{"v", "=", RowBox[{"Tr", "[", "par", "]"}]}], ",", "it", ",", "vec"}], "}"}], ",", RowBox[{ RowBox[{"it", "=", RowBox[{ RowBox[{ StyleBox["recur", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"par", ",", "v"}], "]"}], "//.", RowBox[{ RowBox[{"temp", "[", RowBox[{"a_", ",", "b_", ",", "c_"}], "]"}], "\[RuleDelayed]", RowBox[{ RowBox[{ StyleBox["recur", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"a", ",", "b", ",", "c"}], "]"}], "/;", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Tr", "[", "a", "]"}], "\[Equal]", "parlen"}], "&&", RowBox[{"b", ">", "1"}]}], "||", RowBox[{"b", "<", RowBox[{"Length", "[", "a", "]"}]}]}], ")"}]}]}]}]}], ";", "\[IndentingNewLine]", RowBox[{"vec", "=", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"(", RowBox[{"it", "/.", RowBox[{"temp", "\[Rule]", StyleBox["intermed0", FontColor->RGBColor[0, 0, 1]]}]}], ")"}], "/.", RowBox[{ RowBox[{"w", "[", "p_List", "]"}], "\[Rule]", RowBox[{"w", "[", RowBox[{ StyleBox["rankpartition", FontColor->RGBColor[0, 0, 1]], "[", "p", "]"}], "]"}]}]}], ")"}], "+", RowBox[{"Apply", "[", RowBox[{"Plus", ",", RowBox[{"w", "/@", RowBox[{"Range", "[", RowBox[{ RowBox[{ StyleBox["rankpartition", FontColor->RGBColor[0, 0, 1]], "[", "par", "]"}], ",", RowBox[{"PartitionsP", "[", RowBox[{"Tr", "[", "par", "]"}], "]"}]}], "]"}]}]}], "]"}]}]}], ";", "\[IndentingNewLine]", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"(", RowBox[{"List", "@@", "vec"}], ")"}], "/.", RowBox[{ RowBox[{"w", "[", "_", "]"}], "\[Rule]", "1"}]}], ")"}], "-", "1"}], ")"}], "/", RowBox[{"(", RowBox[{ RowBox[{ StyleBox["multipol", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"par", ",", RowBox[{"Tr", "[", "par", "]"}]}], "]"}], "/.", RowBox[{"0", "\[Rule]", "1"}]}], ")"}]}]}]}], " ", "]"}]}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[TextData[{ "kostka[par_?PartitionQ]:= PadLeft[", StyleBox["kostka1", FontColor->RGBColor[0, 0, 1]], "[par],PartitionsP[Tr[par]]];" }], "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell["Hook lengths and Contents", "Subsubsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{"hooklength", "[", RowBox[{ RowBox[{"(", "\[Lambda]_", ")"}], "?", "PartitionQ"}], "]"}], " ", ":=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{"Count", "[", RowBox[{"\[Lambda]", ",", RowBox[{"q_", "/;", RowBox[{"q", "\[GreaterEqual]", "j"}]}]}], "]"}], " ", "+", "1", "-", "i", "+", RowBox[{"\[Lambda]", "[", RowBox[{"[", "i", "]"}], "]"}], "-", "j"}], ",", RowBox[{"{", RowBox[{"i", ",", RowBox[{"Length", "[", "\[Lambda]", "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{"j", ",", RowBox[{"\[Lambda]", "[", RowBox[{"[", "i", "]"}], "]"}]}], "}"}]}], "]"}]}]], "Input", InitializationCell->True], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"hooklength", "[", RowBox[{"{", "}"}], "]"}], " ", ":=", " ", RowBox[{"{", RowBox[{"{", "}"}], "}"}]}], ";"}], " "}], "\n", RowBox[{ RowBox[{ RowBox[{ RowBox[{"hooklength", "[", RowBox[{ RowBox[{"(", "p_", ")"}], "?", "PartitionQ"}], "]"}], " ", ":=", " ", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{"ferr", " ", "=", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"PadLeft", "[", RowBox[{ RowBox[{"1", " ", "+", " ", RowBox[{"0", "*", RowBox[{"Range", "[", "#1", "]"}]}]}], ",", " ", RowBox[{"Max", "[", "p", "]"}]}], "]"}], " ", "&"}], " ", ")"}], " ", "/@", " ", "p"}]}], "}"}], ",", " ", "\n", " ", RowBox[{"Reverse", "/@", RowBox[{"(", " ", RowBox[{ RowBox[{"DeleteCases", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Rest", "[", RowBox[{"FoldList", "[", RowBox[{"Plus", ",", " ", "0", ",", " ", "#1"}], "]"}], "]"}], " ", "&"}], " ", ")"}], " ", "/@", " ", "ferr"}], " ", "+", " ", "\n", " ", RowBox[{"Reverse", " ", "/@", " ", RowBox[{"Reverse", "[", RowBox[{"Transpose", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Rest", "[", RowBox[{"FoldList", "[", RowBox[{"Plus", ",", " ", "0", ",", " ", "#1"}], "]"}], "]"}], " ", "&"}], " ", ")"}], " ", "/@", " ", RowBox[{"Reverse", "[", RowBox[{"Reverse", " ", "/@", " ", RowBox[{"Transpose", "[", "ferr", "]"}]}], "]"}]}], "]"}], "]"}]}]}], ",", " ", "0", ",", " ", RowBox[{"-", "1"}]}], "]"}], " ", "-", " ", "1"}], ")"}]}]}], "]"}]}], ";"}], " "}]}], "Input", PageWidth->WindowWidth, Evaluatable->False, CellChangeTimes->{ 3.576060941314809*^9, {3.5760610816448355`*^9, 3.576061104468141*^9}, 3.576061185307765*^9}, LineBreakWithin->False, FontSlant->"Italic", FontColor->GrayLevel[0.5]], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"content", "[", RowBox[{"{", "}"}], "]"}], ":=", RowBox[{"{", RowBox[{"{", "}"}], "}"}]}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"content", "[", RowBox[{ RowBox[{"(", "p_", ")"}], "?", "PartitionQ"}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"le", "=", RowBox[{"Max", "[", "p", "]"}]}], ",", RowBox[{"ferr", "=", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"PadLeft", "[", RowBox[{ RowBox[{"1", "+", RowBox[{"0", "*", RowBox[{"Range", "[", "#1", "]"}]}]}], ",", RowBox[{"Max", "[", "p", "]"}]}], "]"}], "&"}], ")"}], "/@", "p"}]}]}], "}"}], ",", RowBox[{ RowBox[{"DeleteCases", "[", RowBox[{ RowBox[{ RowBox[{"MapIndexed", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"-", "le"}], "+", RowBox[{"Range", "[", RowBox[{"le", ",", "1", ",", RowBox[{"-", "1"}]}], "]"}], "-", "#1", "-", RowBox[{"Tr", "[", "#2", "]"}]}], "&"}], ",", RowBox[{"0", "*", "ferr"}]}], "]"}], "*", "ferr"}], ",", "0", ",", RowBox[{"-", "1"}]}], "]"}], "+", "le"}]}], "]"}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[TextData[{ "stanley[(p_)?PartitionQ, t_Integer] := Times @@ ((t + Flatten[ ", StyleBox["content", FontColor->RGBColor[0, 0, 1]], "[p]])/ Flatten[ ", StyleBox["hooklength", FontColor->RGBColor[0, 0, 1]], "[p]]); " }], "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{"allcontents", "[", "li_List", "]"}], " ", ":=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"Count", "[", RowBox[{ RowBox[{"Sort", "[", RowBox[{"Flatten", "[", "li", "]"}], "]"}], ",", " ", "k"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"k", ",", " ", RowBox[{"Max", "[", RowBox[{"Flatten", "[", "li", "]"}], "]"}]}], "}"}]}], "]"}]}]], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{3.578202762364052*^9}, LineBreakWithin->False], Cell["\<\ hookvector[(par_)?PartitionQ] := Block[{res = {0}, le = Tr[par]}, \ Table[AppendTo[res, stanley[par, v] - Coefficient[Series[x^Range[0, v - 1] . \ res/(1 - x)^(le + 1), {x, 0, v}], x^v]], {v, le}]; Rest[res]]; \ \>", "Input"] }, Closed]], Cell[CellGroupData[{ Cell["SSYT", "Subsubsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell["\<\ majorsweak[left_List, right_List] := Block[{le1 = Length[left], le2 = Length[right]}, If[le2 > le1 || Min[Sign[left - PadRight[right, le1]]] < 0, False, \ True]]; \ \>", "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell["\<\ majorsstrong[left_List, right_List] := !(First[right] > First[left] || \ Min[Sign[PadRight[left, Length[right]] - right]] < 1); \ \>", "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[TextData[{ "solspace[par_List,v_Integer]:=Block[{tra=TransposePartition[par],it}, \ it=MapIndexed[ Function[{q,i}, \ Union[PadRight[#,q]&/@Partitions[q*(v+1-Tr@i),(v+1-Tr@i) ]] ], par ]; \n\ MapIndexed[ Cases[ #1 ,q_List/; ", StyleBox["majorsweak", FontColor->RGBColor[0, 0, 1]], "[ q ,(1-Tr[#2])+Take[tra,Part[par,Tr@#2]] ] ]& ,it]];" }], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.5776838306090565`*^9, 3.5776838336246624`*^9}}, LineBreakWithin->False], Cell[TextData[{ "SSYT[par_List,v_Integer]:=Block[{sspace},sspace=", StyleBox["solspace", FontColor->RGBColor[0, 0, 1]], "[par,v];\n\ v+1-If[Length[par]===1,List/@Flatten[sspace,1],Backtrack[sspace,(If[Length[#]<\ 2,True, ", StyleBox["majorsstrong", FontColor->RGBColor[0, 0, 1]], "[#[[-2]],#[[-1]]]])&,True&,All]]];" }], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.5774197187133493`*^9, 3.577419720636602*^9}}, LineBreakWithin->False], Cell["\<\ tableauxForm[yt_List] := (TableForm[#1, TableSpacing -> {0, 0}] & ) /@ yt /. \ q:{__Integer} :> StringJoin @@ ToString /@ q; \ \>", "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False] }, Closed]], Cell[CellGroupData[{ Cell["Symmetric Polynomials", "Subsubsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell["\<\ par2pow[p1_?PartitionQ]:=Subscript[p,Tr[p1]]^rankpartition[p1]\ \>", "Input", InitializationCell->True], Cell["\<\ pow2par[li_]:=li /. Plus\[Rule]List/. Subscript[p,a_]^(b_)\[RuleDelayed] \ X[Part[Partitions[a],b]]\ \>", "Input", InitializationCell->True], Cell[TextData[{ "expr2pow[expr_] := Block[{a,q,e,w,u1,u2,u3}, u1 = \ Expand[q*Together[Expand[expr/. Subscript[a_,b_]->a[b]]] + q*a] /. \n \ Plus -> List; u2 = u1 /. Times -> w /. q -> Sequence[] /. \ w[(i_Integer|i_Rational), r__] :> \n i*w[r] /. x[_]^(e_:1) -> e; u3 = \ Plus @@ u2 /. w[arg__] :> Reverse[Sort[w[arg]]] /. \n w[a] -> 0/. a->0; \ u3 /. w[q__] :> Subscript[p,Tr@{q}]^", StyleBox["rankpartition", FontColor->RGBColor[0, 0, 1]], "[{q}]]; " }], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.577684129124377*^9, 3.577684131983862*^9}, { 3.5776859090037947`*^9, 3.5776859121132293`*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"threadSP", "[", " ", RowBox[{"expr_", ",", "uu_"}], " ", "]"}], ":=", RowBox[{"Expand", "[", RowBox[{"expr", " ", "/.", " ", RowBox[{ RowBox[{"uu", "[", RowBox[{"arg_List", ",", "v_"}], "]"}], " ", ":>", RowBox[{"Apply", "[", RowBox[{"Times", ",", RowBox[{"Thread", "[", RowBox[{"uu", "[", RowBox[{"arg", ",", "v"}], "]"}], "]"}]}], "]"}]}]}], " ", "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577777238493718*^9, 3.5777772901486454`*^9}, { 3.577779355310545*^9, 3.577779355498049*^9}, {3.577781519361405*^9, 3.577781590565897*^9}, {3.5777816610047493`*^9, 3.5777817691787014`*^9}}], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"unthreadSP", "[", " ", RowBox[{"expr_", ",", " ", "uu_"}], "]"}], " ", ":=", " ", RowBox[{ RowBox[{ RowBox[{"Expand", "[", "expr", "]"}], "/.", " ", RowBox[{ RowBox[{ RowBox[{"uu", "[", RowBox[{"a_Integer", ",", "v_"}], "]"}], "^", RowBox[{"(", RowBox[{"i_:", "1"}], ")"}]}], ":>", " ", RowBox[{"uu", "[", RowBox[{ RowBox[{"Table", "[", RowBox[{"a", ",", RowBox[{"{", "i", "}"}]}], "]"}], ",", "v"}], "]"}]}]}], " ", "//.", " ", RowBox[{"(*", RowBox[{ RowBox[{ RowBox[{ RowBox[{"uu", "[", RowBox[{"a_List", ",", "v_"}], "]"}], "^", RowBox[{"(", RowBox[{"i_:", "1"}], ")"}]}], ":>", " ", RowBox[{"uu", "[", RowBox[{ RowBox[{"Reverse", "@", RowBox[{"Sort", "@", RowBox[{"Flatten", "[", RowBox[{"Table", "[", RowBox[{"a", ",", RowBox[{"{", "i", "}"}]}], "]"}], "]"}]}]}], ",", "v"}], "]"}]}], "//."}], " ", "*)"}], RowBox[{ RowBox[{ RowBox[{"uu", "[", RowBox[{"a_", ",", "v_"}], "]"}], " ", RowBox[{"uu", "[", RowBox[{"b_", ",", "v_"}], "]"}]}], "\[RuleDelayed]", RowBox[{"uu", "[", RowBox[{ RowBox[{"Reverse", "@", RowBox[{"Sort", "[", RowBox[{"Join", "[", RowBox[{"a", ",", "b"}], "]"}], "]"}]}], ",", "v"}], "]"}]}]}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577781779694528*^9, 3.5777819729338493`*^9}, { 3.5777820049815445`*^9, 3.577782112515757*^9}, {3.5777822942246966`*^9, 3.577782295099725*^9}, {3.577866941010993*^9, 3.5778669454592476`*^9}, { 3.5778669764510202`*^9, 3.57786699619615*^9}, {3.5778670517153254`*^9, 3.5778670782988453`*^9}, {3.5778678131498766`*^9, 3.5778678187011943`*^9}}], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{ RowBox[{"<<", "Algebra`SymmetricPolynomials`"}], ";"}], " ", "*)"}]], "Input", PageWidth->WindowWidth, CellChangeTimes->{{3.5776840684200344`*^9, 3.577684081951198*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{"Clear", "[", RowBox[{"mm", ",", "ss", ",", "ee", ",", "hh", ",", "pp"}], "]"}]], "Input", CellChangeTimes->{{3.57786400704618*^9, 3.5778640216070127`*^9}}], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"li_List", ",", "v_Integer"}], "]"}], ":=", RowBox[{"0", " ", "/;", " ", RowBox[{ RowBox[{ RowBox[{"Length", "[", "li", "]"}], ">", "v"}], " ", "||", " ", RowBox[{ RowBox[{"Max", "[", "li", "]"}], "\[LessEqual]", "0"}]}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"ss", "[", RowBox[{"li_List", ",", "v_Integer"}], "]"}], ":=", RowBox[{"0", " ", "/;", " ", RowBox[{ RowBox[{ RowBox[{"Length", "[", "li", "]"}], ">", "v"}], "||", " ", RowBox[{ RowBox[{"Max", "[", "li", "]"}], "\[LessEqual]", "0"}]}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"ee", "[", RowBox[{"0", ",", "_"}], "]"}], ":=", "1"}], ";", RowBox[{ RowBox[{"ee", "[", RowBox[{"n_", ",", "_"}], "]"}], ":=", RowBox[{"0", "/;", RowBox[{"n", "<", "0"}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"hh", "[", RowBox[{"0", ",", "_"}], "]"}], ":=", "1"}], ";", RowBox[{ RowBox[{"hh", "[", RowBox[{"n_", ",", "_"}], "]"}], ":=", RowBox[{"0", "/;", RowBox[{"n", "<", "0"}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"pp", "[", RowBox[{"0", ",", "v_"}], "]"}], ":=", "v"}], ";", RowBox[{ RowBox[{"pp", "[", RowBox[{"n_", ",", "_"}], "]"}], ":=", RowBox[{"0", "/;", RowBox[{"n", "<", "0"}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"(*", " ", RowBox[{ RowBox[{ RowBox[{"not", " ", RowBox[{"pp", "[", RowBox[{"list_", ",", "v_Integer"}], "]"}]}], ":=", RowBox[{"0", " ", "/;", " ", RowBox[{ RowBox[{"Length", "[", "list", "]"}], ">", "v"}]}]}], ";", " ", RowBox[{"or", " ", "s2p", " ", RowBox[{"doesn", "'"}], "t", " ", "work"}], ";", " ", RowBox[{"to", " ", "be", " ", "investigated"}]}], " ", "*)"}]}]}], "Input", InitializationCell->True, CellChangeTimes->{{3.577789487580264*^9, 3.577789562796126*^9}, { 3.5778079099558616`*^9, 3.57780791605121*^9}, {3.5778080601074495`*^9, 3.5778080973945827`*^9}, {3.5778636242182837`*^9, 3.577863689234002*^9}, { 3.577863725593082*^9, 3.5778637671134567`*^9}, {3.5778638032485237`*^9, 3.5778638095538845`*^9}, {3.577863943960572*^9, 3.5778639773204803`*^9}, { 3.5778641116161613`*^9, 3.5778641341194487`*^9}, {3.577964559054899*^9, 3.5779646047825146`*^9}, 3.5779646363023176`*^9}], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "m", "]"}], ";", RowBox[{ RowBox[{"m", "[", RowBox[{"li_List", ",", "_"}], "]"}], ":=", RowBox[{"0", "/;", " ", RowBox[{ RowBox[{"Max", "[", "li", "]"}], "\[LessEqual]", "0"}]}]}], ";"}], "\n", RowBox[{ RowBox[{"m", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_"}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"le", "=", RowBox[{"Length", "[", "par", "]"}]}], ",", "it"}], " ", "}"}], ",", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"le", ">", "v"}], ",", RowBox[{"Return", "[", "0", "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"it", "=", RowBox[{"Permutations", "[", RowBox[{"PadRight", "[", RowBox[{"par", ",", "v"}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"Tr", "[", " ", RowBox[{"Apply", "[", RowBox[{"Times", ",", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Table", "[", RowBox[{ RowBox[{"Subscript", "[", RowBox[{"x", ",", "j"}], "]"}], ",", RowBox[{"{", RowBox[{"j", ",", "v"}], "}"}]}], "]"}], "^", "#"}], " ", "&"}], " ", "/@", " ", "it"}], ",", RowBox[{"{", "1", "}"}]}], "]"}], "]"}]}]}], "]"}]}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.57786406893572*^9, 3.5778640991194468`*^9}, { 3.577864156406723*^9, 3.577864159430896*^9}, {3.5779646859511576`*^9, 3.5779646866461973`*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"pow2m", "[", RowBox[{"expr_", ",", RowBox[{"v_:", "0"}]}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", "par", "}"}], ",", " ", RowBox[{"expr", "/.", " ", RowBox[{ RowBox[{"(", RowBox[{ SubscriptBox["p", "n_"], "^", RowBox[{"(", RowBox[{"e_:", "1"}], ")"}]}], ")"}], " ", "\[RuleDelayed]", " ", RowBox[{ RowBox[{"mm", "[", RowBox[{ RowBox[{"par", "=", RowBox[{"unrankpartition", "[", RowBox[{"n", ",", "e"}], "]"}]}], ",", RowBox[{"If", "[", RowBox[{ RowBox[{"v", "===", "0"}], ",", "n", ",", "v"}], "]"}]}], "]"}], "/", RowBox[{"Apply", "[", RowBox[{"Multinomial", ",", RowBox[{"Length", "/@", RowBox[{"Split", "[", RowBox[{"PadRight", "[", RowBox[{"par", ",", RowBox[{"If", "[", RowBox[{ RowBox[{"v", "===", "0"}], ",", "n", ",", "v"}], "]"}]}], "]"}], "]"}]}]}], "]"}]}]}]}]}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5776850286003575`*^9, 3.577685052273142*^9}, { 3.5776851067596087`*^9, 3.577685416822054*^9}, {3.57768580167616*^9, 3.5776858083789845`*^9}, {3.577690080279026*^9, 3.5776900808415475`*^9}, { 3.577690680252554*^9, 3.5776907429332333`*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "m2e", "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"m2e", "[", RowBox[{ RowBox[{"\[Lambda]_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{"ko", "=", RowBox[{"kostka", "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Lambda]", "]"}], "]"}]}]}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"Part", "[", RowBox[{ RowBox[{"Inverse", "[", RowBox[{ RowBox[{"Transpose", "[", RowBox[{"Map", "[", " ", RowBox[{ RowBox[{ RowBox[{"kostka", "[", RowBox[{"TransposePartition", "[", "#", "]"}], "]"}], "&"}], ",", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Lambda]", "]"}], "]"}]}], "]"}], "]"}], ".", "ko"}], " ", "]"}], ",", RowBox[{"rankpartition", "[", "\[Lambda]", "]"}]}], "]"}], " ", ".", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"ee", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Lambda]", "]"}], "]"}]}], ")"}]}]}], "]"}]}], ";"}]}], "Input", InitializationCell->True, CellChangeTimes->{{3.5780484266822095`*^9, 3.5780485027995634`*^9}, { 3.5780485853502846`*^9, 3.5780485907185917`*^9}, {3.578048674974411*^9, 3.5780487223981237`*^9}, {3.578048797373412*^9, 3.5780488904047327`*^9}, { 3.5780496775597553`*^9, 3.5780498016228514`*^9}, 3.578049835422785*^9, { 3.578049947038169*^9, 3.5780499567337236`*^9}, {3.578050001022257*^9, 3.5780500521731825`*^9}, 3.578050351483302*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"Clear", "[", RowBox[{"monomProd2Sum0", ",", "monomProd2Sum1", ",", "monomProd2Sum"}], "]"}], ";"}], " "}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5779611068094425`*^9, 3.5779611143348727`*^9}, { 3.5779618483378553`*^9, 3.5779618496509304`*^9}, 3.577963569741314*^9, { 3.5779643739913144`*^9, 3.5779643844459124`*^9}, {3.5779644200629497`*^9, 3.5779644296074953`*^9}}], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"monomProd2Sum0", "[", RowBox[{ RowBox[{"mm", "[", RowBox[{"\[Lambda]_", ",", " ", "v_Integer"}], "]"}], ",", " ", RowBox[{"mm", "[", RowBox[{"\[Mu]_", ",", " ", "v_"}], "]"}]}], "]"}], " ", ":=", " ", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{ "\[Alpha]", ",", " ", "\[Beta]", ",", " ", "dim\[Beta]", ",", " ", "it"}], "}"}], ",", " ", "\n", " ", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{"\[Alpha]", ",", " ", "\[Beta]"}], "}"}], " ", "=", " ", RowBox[{"Last", " ", "/@", " ", RowBox[{"Sort", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"Length", "[", RowBox[{"Union", "[", "#1", "]"}], "]"}], ",", " ", "#1"}], "}"}], " ", "&"}], " ", ")"}], " ", "/@", " ", RowBox[{"{", RowBox[{"\[Lambda]", ",", " ", "\[Mu]"}], "}"}]}], "]"}]}]}], ";", " ", "\n", " ", RowBox[{"dim\[Beta]", " ", "=", " ", RowBox[{"Multinomial", " ", "@@", " ", RowBox[{"Length", " ", "/@", " ", RowBox[{"Split", "[", RowBox[{"PadRight", "[", RowBox[{"\[Beta]", ",", " ", "v"}], "]"}], "]"}]}]}]}], ";", " ", "\n", " ", RowBox[{"it", " ", "=", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"PadRight", "[", RowBox[{"\[Beta]", ",", " ", "v"}], "]"}], " ", "+", " ", "#1"}], " ", "&"}], " ", ")"}], " ", "/@", " ", RowBox[{"Permutations", "[", RowBox[{"PadRight", "[", RowBox[{"\[Alpha]", ",", " ", "v"}], "]"}], "]"}]}]}], ";", " ", "\n", " ", RowBox[{"Expand", "[", RowBox[{"Tr", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{"dim\[Beta]", "/", RowBox[{"Multinomial", " ", "@@", " ", RowBox[{"Length", " ", "/@", " ", RowBox[{"Split", "[", "#1", "]"}]}]}]}], ")"}], "*", RowBox[{"mm", "[", RowBox[{ RowBox[{"DeleteCases", "[", RowBox[{"#1", ",", " ", "0"}], "]"}], ",", " ", "v"}], "]"}]}], " ", "&"}], " ", ")"}], "[", "\n", " ", RowBox[{"Reverse", "[", RowBox[{"Sort", "[", "#1", "]"}], "]"}], "]"}], " ", "&"}], " ", ")"}], " ", "/@", " ", "it"}], "]"}], "]"}]}]}], "]"}]}], ";"}], " "}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5779602549137163`*^9, 3.577960329732996*^9}, { 3.577960385139165*^9, 3.5779605258602138`*^9}, {3.577960565011453*^9, 3.5779606616999836`*^9}, {3.5779606945628633`*^9, 3.577960705162469*^9}, { 3.577960949001416*^9, 3.5779609666654263`*^9}, {3.57796113736819*^9, 3.5779611475117702`*^9}, {3.5779611811356936`*^9, 3.5779612812474194`*^9}, {3.5779613893346014`*^9, 3.5779613952539406`*^9}, {3.5779616599320793`*^9, 3.577961665636405*^9}, { 3.5779618656668463`*^9, 3.577961869555069*^9}, 3.5779619638024597`*^9, 3.5779622868719378`*^9, {3.5779623171686707`*^9, 3.5779623898318267`*^9}, { 3.5779642582026916`*^9, 3.577964262265924*^9}, 3.577964384449912*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"monomProd2Sum1", "[", "expr_", "]"}], " ", ":=", " ", RowBox[{"Expand", "[", RowBox[{ RowBox[{"Expand", "[", "expr", "]"}], " ", "/.", " ", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"\[Lambda]_", ",", " ", "v_Integer"}], "]"}], "^", RowBox[{"(", RowBox[{"e_", " ", "/;", " ", RowBox[{"e", " ", ">", " ", "1"}]}], ")"}]}], " ", ":>", " ", "\n", " ", RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"\[Lambda]", ",", " ", "v"}], "]"}], "^", RowBox[{"(", RowBox[{"e", " ", "-", " ", "2"}], ")"}]}], "*", RowBox[{"monomProd2Sum0", "[", RowBox[{ RowBox[{"mm", "[", RowBox[{"\[Lambda]", ",", " ", "v"}], "]"}], ",", " ", RowBox[{"mm", "[", RowBox[{"\[Lambda]", ",", " ", "v"}], "]"}]}], "]"}]}]}], ",", " ", RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"\[Lambda]_", ",", " ", "v_Integer"}], "]"}], "*", RowBox[{"mm", "[", RowBox[{"\[Mu]_", ",", " ", "v_"}], "]"}]}], " ", ":>", " ", "\n", " ", RowBox[{"monomProd2Sum0", "[", RowBox[{ RowBox[{"mm", "[", RowBox[{"\[Lambda]", ",", " ", "v"}], "]"}], ",", " ", RowBox[{"mm", "[", RowBox[{"\[Mu]", ",", " ", "v"}], "]"}]}], "]"}]}]}], "}"}]}], "]"}]}], ";"}], " "}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5779607205683503`*^9, 3.577960821649132*^9}, { 3.5779608923761773`*^9, 3.5779608960573883`*^9}, {3.577960990943815*^9, 3.5779610083758125`*^9}, {3.57796134437403*^9, 3.577961348861287*^9}, { 3.5779614102687993`*^9, 3.5779614341411643`*^9}, {3.577961513332694*^9, 3.5779615214521585`*^9}, {3.5779615544120436`*^9, 3.577961557972247*^9}, { 3.5779616844194794`*^9, 3.577961686050573*^9}, {3.5779624341973643`*^9, 3.5779624646051035`*^9}, {3.5779624948528337`*^9, 3.577962533837064*^9}, 3.5779625781896005`*^9, {3.5779626137246327`*^9, 3.577962646036481*^9}, { 3.577962676628231*^9, 3.577962729012227*^9}, {3.5779628195884075`*^9, 3.5779628233796244`*^9}, {3.577962882851026*^9, 3.5779628878913145`*^9}, { 3.57796323014489*^9, 3.577963266360962*^9}, 3.5779633484966593`*^9, 3.5779635442468557`*^9, 3.577963581894009*^9, 3.577964267659232*^9, { 3.5779643641367507`*^9, 3.577964384461913*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"monomProd2Sum", "[", "expr_", "]"}], " ", ":=", " ", RowBox[{"FixedPoint", "[", RowBox[{"monomProd2Sum1", ",", " ", "expr"}], "]"}]}], ";"}], " "}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5779609237829733`*^9, 3.5779609249920425`*^9}, { 3.577961013424101*^9, 3.57796104190273*^9}, {3.577961459548618*^9, 3.5779614634598417`*^9}, {3.577961809497634*^9, 3.5779618104586887`*^9}, { 3.577962767827447*^9, 3.577962782523288*^9}, {3.5779629146578455`*^9, 3.577962931457806*^9}, {3.5779633002559004`*^9, 3.5779633066312647`*^9}, { 3.5779635039425507`*^9, 3.5779635070217266`*^9}, {3.5779635938696938`*^9, 3.5779636355650787`*^9}, {3.5779643602485285`*^9, 3.5779643844699135`*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "p", "]"}], ";", RowBox[{ RowBox[{"p", "[", RowBox[{ RowBox[{"{", "0", "}"}], ",", "0"}], "]"}], ":=", "1"}], ";", RowBox[{ RowBox[{"p", "[", RowBox[{ RowBox[{"{", "0", "}"}], ",", "_"}], "]"}], ":=", "0"}], ";", RowBox[{ RowBox[{"p", "[", RowBox[{"0", ",", "v_"}], "]"}], ":=", "v"}], ";", RowBox[{ RowBox[{"p", "[", RowBox[{"n_", ",", "_"}], "]"}], ":=", RowBox[{"0", "/;", RowBox[{"n", "<", "0"}]}]}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"p", "[", RowBox[{"n_Integer", ",", "v_"}], "]"}], ":=", RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"Subscript", "[", RowBox[{"x", ",", "j"}], "]"}], "^", "n"}], ",", RowBox[{"{", RowBox[{"j", ",", "v"}], "}"}]}], "]"}]}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"p", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_"}], "]"}], ":=", RowBox[{"Times", "@@", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"p", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", " ", "par"}], ")"}]}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.577526403920706*^9, 3.577526429546034*^9}, { 3.577526494968746*^9, 3.577526498859421*^9}, {3.5778643582942705`*^9, 3.5778643713250155`*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"p2e", "[", RowBox[{"n_Integer", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"If", "[", " ", RowBox[{ RowBox[{"c", " ", "\[Equal]", "n"}], ",", RowBox[{ RowBox[{"(", RowBox[{"n", "+", "1", "-", "r"}], ")"}], RowBox[{"ee", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], " ", ",", "v"}], "]"}]}], ",", RowBox[{"ee", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], " ", ",", "v"}], "]"}]}], "]"}], "/.", " ", RowBox[{ RowBox[{"ee", "[", RowBox[{"0", ",", " ", "v"}], " ", "]"}], " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{ RowBox[{ RowBox[{"ee", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", "n"}], "}"}]}], "]"}], "]"}], " ", "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577529125550564*^9, 3.5775291348476768`*^9}, {3.5775291659578485`*^9, 3.577529175317463*^9}, {3.57752986135065*^9, 3.577529866163273*^9}, { 3.577530017339018*^9, 3.5775300199328346`*^9}, {3.5775321913526983`*^9, 3.577532203462383*^9}, {3.5775323954047966`*^9, 3.5775324051394205`*^9}, 3.5775324436560316`*^9, {3.5776128764194365`*^9, 3.57761291296561*^9}, 3.5776129520122347`*^9, {3.5776129864970512`*^9, 3.577612988653329*^9}, { 3.5776130227162647`*^9, 3.577613037278951*^9}, 3.5776130693731117`*^9, 3.5776846379689856`*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"p2h", "[", RowBox[{"n_Integer", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{ RowBox[{"-", RowBox[{ RowBox[{"(", RowBox[{"-", "1"}], ")"}], "^", "n"}]}], " ", RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"If", "[", " ", RowBox[{ RowBox[{"c", " ", "\[Equal]", "n"}], ",", RowBox[{ RowBox[{"(", RowBox[{"n", "+", "1", "-", "r"}], ")"}], RowBox[{"hh", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], " ", ",", "v"}], "]"}]}], ",", RowBox[{"hh", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], " ", ",", "v"}], "]"}]}], "]"}], "/.", RowBox[{ RowBox[{"hh", "[", RowBox[{"0", ",", " ", "v"}], " ", "]"}], " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{ RowBox[{ RowBox[{"hh", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", "n"}], "}"}]}], "]"}], "]"}]}], " ", "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577529125550564*^9, 3.5775291348476768`*^9}, {3.5775291659578485`*^9, 3.577529175317463*^9}, {3.57752986135065*^9, 3.577529866163273*^9}, { 3.577530017339018*^9, 3.5775300199328346`*^9}, {3.5775321913526983`*^9, 3.577532203462383*^9}, {3.5775323954047966`*^9, 3.5775324051394205`*^9}, 3.5775324436560316`*^9, {3.5776128764194365`*^9, 3.57761291296561*^9}, 3.5776129520122347`*^9, {3.5776129864970512`*^9, 3.577612988653329*^9}, { 3.5776130227162647`*^9, 3.577613037278951*^9}, 3.5776130693731117`*^9, { 3.5776139148462443`*^9, 3.577613944956583*^9}, {3.5776141151651545`*^9, 3.5776141206653304`*^9}, 3.577684635547126*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{" ", RowBox[{ RowBox[{ RowBox[{"p2s", "[", RowBox[{ RowBox[{"\[Lambda]_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"Part", "[", RowBox[{ RowBox[{"chars", "[", "#", "]"}], ",", RowBox[{"rankpartition", "[", "\[Lambda]", "]"}]}], "]"}], "&"}], "/@", " ", RowBox[{"Partitions", "[", RowBox[{"Tr", "@", "\[Lambda]"}], "]"}]}], ")"}], " ", ".", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"ss", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", " ", RowBox[{"Partitions", "[", RowBox[{"Tr", "@", "\[Lambda]"}], "]"}]}], ")"}]}]}], ";"}]}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577615228935169*^9, 3.577615277999239*^9}, { 3.5776154135192003`*^9, 3.5776154161442842`*^9}, {3.577615717450801*^9, 3.5776157873124113`*^9}, {3.577616140089325*^9, 3.577616145745756*^9}, { 3.5776186690731907`*^9, 3.577618764795004*^9}, 3.577618862204371*^9, 3.577618904893237*^9, 3.577684632719019*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "h", "]"}], ";", RowBox[{ RowBox[{"h", "[", RowBox[{"0", ",", "_"}], "]"}], ":=", "1"}], ";", RowBox[{ RowBox[{"h", "[", RowBox[{ RowBox[{"{", "0", "}"}], ",", "_"}], "]"}], ":=", "0"}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"h", "[", RowBox[{"n_Integer", ",", "v_"}], "]"}], ":=", RowBox[{"Tr", "[", RowBox[{"Apply", "[", RowBox[{"Times", ",", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Table", "[", RowBox[{ RowBox[{"Subscript", "[", RowBox[{"x", ",", "j"}], "]"}], ",", RowBox[{"{", RowBox[{"j", ",", "v"}], "}"}]}], "]"}], "^", "#"}], ")"}], "&"}], "/@", RowBox[{"Compositions", "[", RowBox[{"n", ",", "v"}], "]"}]}], ",", RowBox[{"{", "1", "}"}]}], "]"}], "]"}]}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"h", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_"}], "]"}], ":=", RowBox[{"Times", "@@", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"h", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", " ", "par"}], ")"}]}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.57796470836644*^9, 3.577964714373783*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"h2e", "[", RowBox[{"n_Integer", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"ee", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], ",", "v"}], "]"}], "/.", " ", RowBox[{ RowBox[{"ee", "[", RowBox[{"0", ",", " ", "_"}], "]"}], " ", "->", " ", "1"}]}], " ", "/.", " ", "\n", " ", RowBox[{ RowBox[{ RowBox[{"ee", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", "n"}], "}"}]}], "]"}], "]"}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577532316324647*^9, 3.57753232426235*^9}, {3.5776120482618837`*^9, 3.5776120501056924`*^9}, {3.5776121004354277`*^9, 3.5776121174203463`*^9}, 3.577612221783061*^9, 3.577684630828406*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"h2p", "[", RowBox[{"n_Integer", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{ RowBox[{ RowBox[{"Det", "[", RowBox[{"Table", "[", " ", RowBox[{ RowBox[{ RowBox[{ RowBox[{"ptemp", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], " ", ",", "v"}], "]"}], " ", "/.", " ", RowBox[{ RowBox[{"ptemp", "[", RowBox[{"0", ",", " ", "v"}], " ", "]"}], " ", "->", " ", RowBox[{ RowBox[{"-", "n"}], "-", "1", "+", "r"}]}]}], "/.", " ", RowBox[{ RowBox[{ RowBox[{"ptemp", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", "n"}], "}"}]}], "]"}], "]"}], "/", RowBox[{"n", "!"}]}], " ", "/.", " ", RowBox[{"ptemp", "\[Rule]", "pp"}]}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577529125550564*^9, 3.5775291348476768`*^9}, {3.5775291659578485`*^9, 3.577529175317463*^9}, {3.57752986135065*^9, 3.577529866163273*^9}, { 3.577530017339018*^9, 3.5775300199328346`*^9}, {3.5775321913526983`*^9, 3.577532203462383*^9}, {3.5775323954047966`*^9, 3.5775324051394205`*^9}, 3.5775324436560316`*^9, 3.5776133623315983`*^9, {3.5776134193174324`*^9, 3.5776134465993805`*^9}, {3.5776136849961085`*^9, 3.577613697324549*^9}, 3.5776846282659225`*^9, {3.5778651102812815`*^9, 3.5778651893518043`*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"h2m", "[", RowBox[{"n_Integer", ",", " ", "v_Integer"}], "]"}], ":=", " ", RowBox[{"Tr", "[", RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", RowBox[{"Partitions", "[", "n", "]"}]}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577780813947918*^9, 3.5777808784812326`*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "e", "]"}], ";", RowBox[{ RowBox[{"e", "[", RowBox[{ RowBox[{"{", "0", "}"}], ",", "0"}], "]"}], ":=", "1"}], ";", RowBox[{ RowBox[{"e", "[", RowBox[{ RowBox[{"{", "0", "}"}], ",", "_"}], "]"}], ":=", "0"}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"e", "[", RowBox[{"n_Integer", ",", "v_"}], "]"}], ":=", RowBox[{"Tr", "[", RowBox[{"Times", "@@@", RowBox[{"Select", "[", RowBox[{ RowBox[{"Subsets", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{"Subscript", "[", RowBox[{"x", ",", "j"}], "]"}], ",", RowBox[{"{", RowBox[{"j", ",", "v"}], "}"}]}], "]"}], "]"}], ",", RowBox[{ RowBox[{ RowBox[{"Length", "[", "#", "]"}], "\[Equal]", "n"}], "&"}]}], "]"}]}], "]"}]}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"e", "[", RowBox[{ RowBox[{"par_", "?", "PartitionQ"}], ",", "v_"}], "]"}], ":=", RowBox[{"Times", "@@", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"e", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", " ", "par"}], ")"}]}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.577964723502305*^9, 3.5779647273735266`*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"e2p", "[", RowBox[{"n_Integer", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{ RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], "\[Equal]", "0"}], ",", RowBox[{"n", "+", "1", "-", "r"}], ",", RowBox[{"pp", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], " ", ",", "v"}], "]"}]}], "]"}], "/.", " ", RowBox[{ RowBox[{"pp", "[", RowBox[{"0", ",", " ", "v"}], " ", "]"}], " ", "->", " ", "v"}]}], " ", "/.", " ", RowBox[{ RowBox[{ RowBox[{"pp", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", "n"}], "}"}]}], "]"}], "]"}], "/", RowBox[{"n", "!"}]}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577529125550564*^9, 3.5775291348476768`*^9}, {3.5775291659578485`*^9, 3.577529175317463*^9}, {3.57752986135065*^9, 3.577529866163273*^9}, { 3.577530017339018*^9, 3.5775300199328346`*^9}, {3.5775321913526983`*^9, 3.577532203462383*^9}, {3.5775323954047966`*^9, 3.5775324051394205`*^9}, 3.5775324436560316`*^9, 3.577684626390934*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"e2h", "[", RowBox[{"n_Integer", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"hh", "[", " ", RowBox[{ RowBox[{"1", "+", "c", "-", "r"}], ",", "v"}], "]"}], "/.", " ", RowBox[{ RowBox[{"hh", "[", RowBox[{"0", ",", " ", "_"}], "]"}], " ", "->", " ", "1"}]}], " ", "/.", " ", "\n", " ", RowBox[{ RowBox[{ RowBox[{"hh", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", "n"}], "}"}]}], "]"}], "]"}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577532316324647*^9, 3.57753232426235*^9}, 3.577612650626897*^9, 3.5776846256253138`*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "e2m", "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"e2m", "[", RowBox[{ RowBox[{"\[Lambda]_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{"ko", "=", RowBox[{"kostka", "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Lambda]", "]"}], "]"}]}]}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"Part", "[", RowBox[{ RowBox[{ RowBox[{"Transpose", "[", RowBox[{"Map", "[", " ", RowBox[{ RowBox[{ RowBox[{"kostka", "[", RowBox[{"TransposePartition", "[", "#", "]"}], "]"}], "&"}], ",", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Lambda]", "]"}], "]"}]}], "]"}], "]"}], ".", "ko"}], " ", ",", RowBox[{"rankpartition", "[", "\[Lambda]", "]"}]}], "]"}], " ", ".", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Lambda]", "]"}], "]"}]}], ")"}]}]}], "]"}]}], ";"}]}], "Input", InitializationCell->True, CellChangeTimes->{{3.5780484266822095`*^9, 3.5780485027995634`*^9}, { 3.5780485853502846`*^9, 3.5780485907185917`*^9}, {3.578048674974411*^9, 3.5780487223981237`*^9}, {3.578048797373412*^9, 3.5780488904047327`*^9}, { 3.5780496775597553`*^9, 3.5780498016228514`*^9}, 3.578049835422785*^9, { 3.578049947038169*^9, 3.5780499567337236`*^9}, 3.5780502891717377`*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[{ RowBox[{ RowBox[{"Clear", "[", "s", "]"}], ";", RowBox[{ RowBox[{"s", "[", RowBox[{"li_List", ",", "_"}], "]"}], ":=", RowBox[{"0", "/;", " ", RowBox[{ RowBox[{"Max", "[", "li", "]"}], "<=", "0"}]}]}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{ RowBox[{"s", "[", RowBox[{ RowBox[{ RowBox[{"(", "p_", ")"}], "?", "PartitionQ"}], ",", " ", "v_"}], "]"}], " ", ":=", " ", RowBox[{ RowBox[{"s", "[", RowBox[{"p", ",", "v"}], "]"}], "=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"le", " ", "=", " ", RowBox[{"Length", "[", "p", "]"}]}], ",", " ", RowBox[{"n", " ", "=", " ", RowBox[{"Tr", "[", "p", "]"}]}]}], "}"}], ",", "\n", " ", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"v", " ", "<", " ", "le"}], ",", " ", RowBox[{"Return", "[", "0", "]"}]}], "]"}], ";", " ", "\n", " ", RowBox[{"Together", "[", RowBox[{"Expand", "[", RowBox[{ RowBox[{"Factor", "[", RowBox[{"Det", "[", RowBox[{"Outer", "[", RowBox[{ RowBox[{ RowBox[{"#2", "^", "#1"}], " ", "&"}], " ", ",", " ", RowBox[{ RowBox[{"PadRight", "[", RowBox[{"p", ",", " ", "v"}], "]"}], " ", "+", " ", "v", " ", "-", " ", RowBox[{"Range", "[", "v", "]"}]}], ",", " ", RowBox[{"Array", "[", RowBox[{ RowBox[{ RowBox[{"Subscript", "[", RowBox[{"x", ",", " ", "#1"}], "]"}], " ", "&"}], " ", ",", " ", "v"}], "]"}]}], "]"}], "]"}], "]"}], "/", " ", "\n", " ", RowBox[{"Factor", "[", RowBox[{"Det", "[", RowBox[{"Outer", "[", RowBox[{ RowBox[{ RowBox[{"#2", "^", "#1"}], " ", "&"}], " ", ",", " ", RowBox[{"Range", "[", RowBox[{ RowBox[{"v", " ", "-", " ", "1"}], ",", " ", "0", ",", " ", RowBox[{"-", "1"}]}], "]"}], ",", " ", RowBox[{"Array", "[", RowBox[{ RowBox[{ RowBox[{"Subscript", "[", RowBox[{"x", ",", " ", "#1"}], "]"}], " ", "&"}], " ", ",", " ", "v"}], "]"}]}], "]"}], "]"}], "]"}]}], "]"}], "]"}]}]}], "]"}]}]}], ";"}], " "}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.5778644521176367`*^9, 3.577864479749217*^9}, { 3.5779647340869102`*^9, 3.5779647377271185`*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"Clear", "[", "s2e", "]"}], ";", " ", RowBox[{ RowBox[{"s2e", "[", RowBox[{"\[Mu]_", ",", " ", "v_"}], "]"}], " ", ":=", " ", "\n", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{"\[Nu]", " ", "=", " ", RowBox[{"PadRight", "[", RowBox[{ RowBox[{"TransposePartition", "[", "\[Mu]", "]"}], ",", " ", RowBox[{"Max", "[", RowBox[{"v", ",", " ", RowBox[{"Length", "[", RowBox[{"TransposePartition", "[", "\[Mu]", "]"}], "]"}], ",", " ", "\n", " ", RowBox[{"Length", "[", "\[Mu]", "]"}]}], "]"}]}], "]"}]}], "}"}], ",", " ", RowBox[{"Simplify", "[", "\n", " ", RowBox[{"Expand", "[", RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"ee", "[", RowBox[{ RowBox[{ RowBox[{"\[Nu]", "[", RowBox[{"[", "i", "]"}], "]"}], " ", "-", " ", "i", " ", "+", " ", "j"}], ",", " ", "v"}], "]"}], "/.", " ", RowBox[{ RowBox[{"ee", "[", RowBox[{"0", ",", " ", "_"}], "]"}], " ", "->", " ", "1"}]}], " ", "/.", " ", "\n", " ", RowBox[{ RowBox[{ RowBox[{"ee", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", " ", RowBox[{"{", RowBox[{"i", ",", " ", "v"}], "}"}], ",", " ", RowBox[{"{", RowBox[{"j", ",", " ", "v"}], "}"}]}], "]"}], "]"}], "]"}], " ", "]"}]}], "]"}]}], ";"}], " "}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577163553926903*^9, 3.5771635547789516`*^9}, { 3.577164145962765*^9, 3.5771641590745153`*^9}, 3.57716420968241*^9, 3.577173911607328*^9, {3.5771741586764593`*^9, 3.5771742201629763`*^9}, 3.57717428945994*^9, {3.5771743676194105`*^9, 3.5771744146340995`*^9}, { 3.5771755578744893`*^9, 3.5771755743534317`*^9}, {3.5775295238576355`*^9, 3.57752953399852*^9}, {3.577532028223522*^9, 3.57753203244238*^9}, { 3.577684313678338*^9, 3.577684316397193*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"s2p", "[", RowBox[{ RowBox[{"\[Mu]_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", " ", RowBox[{ RowBox[{ RowBox[{"Part", "[", RowBox[{ RowBox[{"Transpose", "[", RowBox[{"Inverse", "[", RowBox[{"chars", "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Mu]", "]"}], "]"}]}], "]"}], "]"}], ",", RowBox[{"rankpartition", "[", "\[Mu]", "]"}]}], " ", "]"}], ".", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"pp", "[", RowBox[{"#", ",", "v"}], "]"}], "&"}], "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "[", "\[Mu]", "]"}], "]"}]}], ")"}]}], " ", "/.", " ", RowBox[{ RowBox[{"pp", "[", RowBox[{"li_List", ",", "v"}], " ", "]"}], " ", "\[RuleDelayed]", " ", RowBox[{"Apply", "[", RowBox[{"Times", ",", RowBox[{"Thread", "[", RowBox[{"pp", "[", RowBox[{"li", ",", "v"}], "]"}], "]"}]}], "]"}]}]}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577617497145932*^9, 3.577617514896387*^9}, { 3.577617604039294*^9, 3.5776177028078966`*^9}, {3.5776178225304775`*^9, 3.57761785026574*^9}, {3.5776178855324936`*^9, 3.5776179105801697`*^9}, { 3.577618011302143*^9, 3.5776181557130136`*^9}, {3.57761842247155*^9, 3.5776184230496936`*^9}, 3.5776846224222097`*^9}, Background->RGBColor[0.87, 0.94, 1]], Cell["\<\ first Giambelli formula, alias Jacobi-Trudy identity.\ \>", "Text", CellChangeTimes->{{3.5776942214264565`*^9, 3.5776942810533643`*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"s2h", "[", RowBox[{ RowBox[{"\[Lambda]_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{"Det", "[", RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"hh", "[", RowBox[{ RowBox[{ RowBox[{"\[Lambda]", "[", RowBox[{"[", "r", "]"}], "]"}], " ", "+", "c", "-", "r"}], ",", "v"}], "]"}], "/.", " ", RowBox[{ RowBox[{"hh", "[", RowBox[{"0", ",", " ", "_"}], "]"}], " ", "->", " ", "1"}]}], " ", "/.", " ", "\n", " ", RowBox[{ RowBox[{ RowBox[{"hh", "[", RowBox[{"q_", ",", " ", "_"}], "]"}], " ", "/;", " ", RowBox[{"q", " ", "<", " ", "0"}]}], " ", "->", " ", "0"}]}], ",", RowBox[{"{", RowBox[{"r", ",", RowBox[{"Length", "[", "\[Lambda]", "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{"c", ",", RowBox[{"Length", "[", "\[Lambda]", "]"}]}], "}"}]}], "]"}], "]"}], "]"}]}]], "Input", InitializationCell->True, CellChangeTimes->{{3.5775289809687376`*^9, 3.5775290727992134`*^9}, { 3.577532316324647*^9, 3.57753232426235*^9}, 3.577612650626897*^9, { 3.577694023138861*^9, 3.5776940452645693`*^9}, {3.5776941293766356`*^9, 3.5776941519554834`*^9}, {3.577694190347337*^9, 3.5776942045665417`*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"s2m", "[", RowBox[{"\[Lambda]_", ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"mm", "[", RowBox[{"#1", ",", "v"}], "]"}], "&"}], " ", "/@", RowBox[{"Prepend", "[", RowBox[{ RowBox[{"lesspartitions", "[", "\[Lambda]", "]"}], ",", "\[Lambda]"}], "]"}]}], ")"}], ".", RowBox[{"Drop", "[", RowBox[{ RowBox[{"kostka", "[", "\[Lambda]", "]"}], ",", RowBox[{ RowBox[{"rankpartition", "[", "\[Lambda]", "]"}], "-", "1"}]}], "]"}]}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577692912113312*^9, 3.5776930304877563`*^9}, { 3.577693090020149*^9, 3.577693101114112*^9}, {3.5776947620996366`*^9, 3.577694812751996*^9}}, Background->RGBColor[0.87, 0.94, 1]], Cell[BoxData[ RowBox[{ RowBox[{"m2s", "[", RowBox[{ RowBox[{"\[Lambda]_", "?", "PartitionQ"}], ",", "v_Integer"}], "]"}], ":=", RowBox[{"Expand", "[", RowBox[{ RowBox[{ RowBox[{"Inverse", "[", RowBox[{"kostka", "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "@", "\[Lambda]"}], "]"}]}], "]"}], "[", RowBox[{"[", RowBox[{"rankpartition", "@", "\[Lambda]"}], "]"}], "]"}], " ", ".", " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"ss", "[", RowBox[{"#1", ",", "v"}], "]"}], "&"}], " ", "/@", RowBox[{"Partitions", "[", RowBox[{"Tr", "@", "\[Lambda]"}], "]"}]}], ")"}]}], "]"}]}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577788891496914*^9, 3.577788955217703*^9}, 3.57778911788955*^9}, Background->RGBColor[0.87, 0.94, 1]] }, Closed]], Cell[CellGroupData[{ Cell["Character Table of Sn", "Subsubsection", PageWidth->WindowWidth, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"cycleclasses", "[", RowBox[{ RowBox[{"(", "p_", ")"}], "?", "PartitionQ"}], "]"}], " ", ":=", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Tr", "[", "p", "]"}], "!"}], "/", RowBox[{"Times", " ", "@@", " ", "#1"}]}], " ", "&"}], " ", ")"}], "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"#1", "!"}], "*", RowBox[{ RowBox[{"Range", "[", RowBox[{"Tr", "[", "p", "]"}], "]"}], "^", "#1"}]}], " ", "&"}], " ", ")"}], "[", "\n", " ", RowBox[{ RowBox[{"Function", "[", RowBox[{"par", ",", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Count", "[", RowBox[{"par", ",", " ", "#1"}], "]"}], " ", "&"}], " ", ")"}], " ", "/@", " ", RowBox[{"Range", "[", RowBox[{"Tr", "[", "p", "]"}], "]"}]}]}], "]"}], "[", "p", "]"}], "]"}], "]"}]}], ";"}]], "Input", InitializationCell->True, CellChangeTimes->{{3.577696787114887*^9, 3.5776967942869916`*^9}}], Cell["\<\ cycleclasses[n_Integer]:=n!/(Times@@ #)&/@((#! Range[n]^#)&/@Function[par, \ Count[par, # ]&/@Range[n]]/@Partitions[n]);\ \>", "Input", PageWidth->WindowWidth, InitializationCell->True, LineBreakWithin->False], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"w2", "[", "0", "]"}], ":=", "1"}], ";", RowBox[{ RowBox[{"w2", "[", RowBox[{"n_", "?", "Negative"}], "]"}], ":=", "0"}], ";"}], "\n", RowBox[{ RowBox[{ RowBox[{"w2", "[", "n_Integer", "]"}], ":=", RowBox[{ RowBox[{"Coefficient", "[", RowBox[{ RowBox[{"Series", "[", RowBox[{ RowBox[{"Exp", "[", RowBox[{"Sum", "[", RowBox[{ RowBox[{ RowBox[{"s2", "[", "k", "]"}], RowBox[{ RowBox[{"t2", "^", "k"}], " ", "/", "k"}]}], ",", RowBox[{"{", RowBox[{"k", ",", "n"}], "}"}]}], "]"}], "]"}], ",", RowBox[{"{", RowBox[{"t2", ",", "0", ",", "n"}], "}"}]}], "]"}], ",", RowBox[{"t2", "^", "n"}]}], "]"}], "//", "Expand"}]}], ";"}]}], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{ 3.5776835836972837`*^9, {3.5776836555166745`*^9, 3.5776836594224496`*^9}, { 3.5776837045263395`*^9, 3.5776837089320536`*^9}}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{"schur2", "[", RowBox[{"par_", "?", "PartitionQ"}], "]"}], ":=", " ", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Tr", "[", "par", "]"}], "!"}], RowBox[{"Det", "@", RowBox[{"Table", "[", " ", RowBox[{ RowBox[{ StyleBox["w2", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{ RowBox[{"par", "[", RowBox[{"[", "i", "]"}], "]"}], "-", "i", "+", "j"}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", RowBox[{"Length", "[", "par", "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{"j", ",", RowBox[{"Length", "[", "par", "]"}]}], "}"}]}], "]"}]}]}], "//", "Expand"}]}]], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{3.577683665546705*^9}, LineBreakWithin->False], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"chars", "[", RowBox[{"par_", "?", "PartitionQ"}], "]"}], ":=", RowBox[{ RowBox[{"chars", "[", "par", "]"}], "=", RowBox[{"Block", "[", RowBox[{ RowBox[{"{", RowBox[{"u1", ",", "u2"}], "}"}], ",", RowBox[{ RowBox[{"u1", "=", RowBox[{ RowBox[{ RowBox[{ StyleBox["schur2", FontColor->RGBColor[0, 0, 1]], "[", "par", "]"}], "//.", " ", RowBox[{ RowBox[{ RowBox[{"s2", "[", "j_", "]"}], "^", RowBox[{"(", RowBox[{"e_:", "1"}], ")"}]}], " ", ":>", RowBox[{"s2", "[", RowBox[{"Sequence", "@@", RowBox[{"Table", "[", RowBox[{"j", ",", RowBox[{"{", "e", "}"}]}], "]"}]}], "]"}]}]}], " ", "//.", " ", RowBox[{ RowBox[{ RowBox[{"s2", "[", "i__", "]"}], RowBox[{"s2", "[", "j__", "]"}]}], " ", ":>", RowBox[{"s2", "[", RowBox[{"i", ",", "j"}], "]"}]}]}]}], ";", "\[IndentingNewLine]", RowBox[{"u2", "=", RowBox[{"Rest", "@", RowBox[{"CoefficientList", "[", RowBox[{ RowBox[{"u1", "/.", " ", RowBox[{ RowBox[{"s2", "[", "pa__", "]"}], " ", ":>", " ", RowBox[{"p", "^", RowBox[{ StyleBox["rankpartition", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"Reverse", "[", RowBox[{"Sort", "[", RowBox[{"{", "pa", "}"}], "]"}], "]"}], "]"}]}]}]}], ",", "p"}], "]"}]}]}], ";", RowBox[{"u2", "/", RowBox[{ StyleBox["cycleclasses", FontColor->RGBColor[0, 0, 1]], "[", RowBox[{"Tr", "[", "par", "]"}], "]"}]}]}]}], " ", "]"}]}]}], ";"}]], "Input", PageWidth->WindowWidth, InitializationCell->True, CellChangeTimes->{{3.5776835971800194`*^9, 3.5776836124594107`*^9}}, LineBreakWithin->False] }, Closed]], Cell[CellGroupData[{ Cell["Littlewood-Richardson", "Subsubsection"], Cell[TextData[{ StyleBox["http://sporadic.stanford.edu/bump/match/weight/lwr.m", FontFamily->"Courier New", FontSize->10, FontVariations->{"Underline"->True}, FontColor->RGBColor[0, 0, 0.996109]], StyleBox["\nCopyright 1996 by Daniel Bump (bump@math.stanford.edu)", FontFamily->"Courier New", FontSize->10] }], "Text"], Cell[CellGroupData[{ Cell["<<\"c:/_wouter/it/LittlewoodRichardson.m\"", "Input", InitializationCell->True], Cell[BoxData[ RowBox[{ StyleBox[ RowBox[{"SetDelayed", "::", "write"}], "MessageName"], RowBox[{ ":", " "}], "\<\"Tag \[NoBreak]\\!\\(NextPartition\\)\[NoBreak] in \ \[NoBreak]\\!\\(NextPartition[p_]\\)\[NoBreak] is Protected. \ \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", \ ButtonFrame->None, ButtonData:>\\\"paclet:ref/message/General/write\\\", \ ButtonNote -> \\\"SetDelayed::write\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{ 3.576060957471733*^9, 3.576316481562336*^9, {3.5774197469679627`*^9, 3.577419748156314*^9}, {3.5775094383041587`*^9, 3.577509439851143*^9}, { 3.5776847784368362`*^9, 3.5776847807336965`*^9}, 3.5776849205493336`*^9, 3.577688860543313*^9, 3.5777692435034943`*^9, 3.5778065701602297`*^9, 3.5778606827870436`*^9, 3.5778821756283636`*^9, 3.5779452844304543`*^9, 3.5780378111620364`*^9, 3.578115458266466*^9, 3.578116574241214*^9, 3.5781951360034647`*^9, 3.5781971400226917`*^9, 3.578231028233946*^9}], Cell[BoxData[ RowBox[{ StyleBox[ RowBox[{"SetDelayed", "::", "write"}], "MessageName"], RowBox[{ ":", " "}], "\<\"Tag \[NoBreak]\\!\\(Partitions\\)\[NoBreak] in \ \[NoBreak]\\!\\(Partitions[n_]\\)\[NoBreak] is Protected. \\!\\(\\*ButtonBox[\ \\\"\[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", ButtonFrame->None, \ ButtonData:>\\\"paclet:ref/message/General/write\\\", ButtonNote -> \ \\\"SetDelayed::write\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{ 3.576060957471733*^9, 3.576316481562336*^9, {3.5774197469679627`*^9, 3.577419748156314*^9}, {3.5775094383041587`*^9, 3.577509439851143*^9}, { 3.5776847784368362`*^9, 3.5776847807336965`*^9}, 3.5776849205493336`*^9, 3.577688860543313*^9, 3.5777692435034943`*^9, 3.5778065701602297`*^9, 3.5778606827870436`*^9, 3.5778821756283636`*^9, 3.5779452844304543`*^9, 3.5780378111620364`*^9, 3.578115458266466*^9, 3.578116574241214*^9, 3.5781951360034647`*^9, 3.5781971400226917`*^9, 3.5782310282609477`*^9}] }, Open ]], Cell[CellGroupData[{ Cell["<<\"H:/data/notebooks/LittlewoodRichardson.m\"", "Input", InitializationCell->True, CellChangeTimes->{{3.5776833418700094`*^9, 3.577683353886327*^9}}], Cell[BoxData[ RowBox[{ StyleBox[ RowBox[{"Get", "::", "noopen"}], "MessageName"], RowBox[{ ":", " "}], "\<\"Cannot open \ \[NoBreak]\\!\\(\\\"H:/data/notebooks/LittlewoodRichardson.m\\\"\\)\[NoBreak].\ \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", \ ButtonFrame->None, ButtonData:>\\\"paclet:ref/message/General/noopen\\\", \ ButtonNote -> \\\"Get::noopen\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{{3.5776847787805843`*^9, 3.57768478096807*^9}, 3.5776849209087224`*^9, 3.5776888615432816`*^9, 3.577769244284789*^9, 3.577806570256235*^9, 3.5778606828800488`*^9, 3.5778821757233686`*^9, 3.5779452845264597`*^9, 3.578037811260042*^9, 3.5781154586727343`*^9, 3.5781165744130964`*^9, 3.578195136539073*^9, 3.578197142257038*^9, 3.5782310283079505`*^9}], Cell[BoxData["$Failed"], "Output", CellChangeTimes->{3.5782310283089504`*^9}] }, Open ]], Cell["\<\ LittlewoodRichardsonFast[p1_?PartitionQ,p2_?PartitionQ]:=Tr[Subscript[p,Tr[#]]\ ^rankpartition[#]& /@LRRule[p1,p2]]\ \>", "Input", InitializationCell->True] }, Closed]] }, Open ]] }, AutoGeneratedPackage->None, WindowToolbars->{}, WindowSize->{720, 586}, WindowMargins->{{7, Automatic}, {Automatic, 2}}, PrivateNotebookOptions->{"VersionedStylesheet"->{"Default.nb"[8.] -> True}}, Magnification->1, FrontEndVersion->"9.0 for Microsoft Windows (64-bit) (November 20, 2012)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[557, 20, 1416, 26, 227, "Text"], Cell[CellGroupData[{ Cell[1998, 50, 77, 2, 36, "Subsection"], Cell[2078, 54, 108, 1, 29, "Text"], Cell[2189, 57, 217, 5, 48, "Input", InitializationCell->True], Cell[2409, 64, 396, 9, 29, "Text"], Cell[2808, 75, 592, 15, 52, "Input"], Cell[3403, 92, 268, 8, 31, "Input", InitializationCell->True], Cell[CellGroupData[{ Cell[3696, 104, 82, 2, 27, "Subsubsection"], Cell[3781, 108, 1089, 35, 66, "Input", InitializationCell->True], Cell[4873, 145, 554, 18, 66, "Input", InitializationCell->True], Cell[5430, 165, 555, 12, 130, "Input", InitializationCell->True], Cell[5988, 179, 79, 1, 29, "Text"], Cell[6070, 182, 846, 27, 31, "Input", Evaluatable->False], Cell[6919, 211, 500, 16, 31, "Input", Evaluatable->False], Cell[7422, 229, 613, 15, 198, "Input", InitializationCell->True], Cell[8038, 246, 259, 8, 31, "Input", Evaluatable->False], Cell[8300, 256, 1000, 32, 45, "Input", InitializationCell->True], Cell[9303, 290, 362, 10, 130, "Input", InitializationCell->True], Cell[9668, 302, 298, 9, 45, "Input", InitializationCell->True], Cell[9969, 313, 333, 10, 45, "Input", InitializationCell->True], Cell[10305, 325, 139, 2, 31, "Input"], Cell[10447, 329, 1152, 31, 31, "Input", Evaluatable->False], Cell[11602, 362, 508, 13, 45, "Input", InitializationCell->True], Cell[12113, 377, 891, 25, 82, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[13041, 407, 81, 2, 21, "Subsubsection"], Cell[13125, 411, 1272, 38, 45, "Input", InitializationCell->True], Cell[14400, 451, 551, 17, 45, "Input", InitializationCell->True], Cell[14954, 470, 392, 13, 45, "Input", InitializationCell->True], Cell[15349, 485, 2499, 71, 86, "Input", InitializationCell->True], Cell[17851, 558, 1582, 48, 66, "Input", InitializationCell->True], Cell[19436, 608, 3614, 107, 146, "Input", InitializationCell->True], Cell[23053, 717, 180, 6, 45, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[23270, 728, 100, 2, 21, "Subsubsection"], Cell[23373, 732, 750, 23, 45, "Input", InitializationCell->True], Cell[24126, 757, 2364, 65, 92, "Input", Evaluatable->False], Cell[26493, 824, 1474, 46, 66, "Input", InitializationCell->True], Cell[27970, 872, 316, 11, 45, "Input", InitializationCell->True], Cell[28289, 885, 563, 18, 45, "Input", InitializationCell->True], Cell[28855, 905, 235, 4, 31, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[29127, 914, 79, 2, 21, "Subsubsection"], Cell[29209, 918, 274, 8, 79, "Input", InitializationCell->True], Cell[29486, 928, 230, 6, 62, "Input", InitializationCell->True], Cell[29719, 936, 507, 12, 79, "Input", InitializationCell->True], Cell[30229, 950, 483, 14, 79, "Input", InitializationCell->True], Cell[30715, 966, 227, 6, 62, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[30979, 977, 96, 2, 21, "Subsubsection"], Cell[31078, 981, 114, 3, 45, "Input", InitializationCell->True], Cell[31195, 986, 151, 4, 45, "Input", InitializationCell->True], Cell[31349, 992, 687, 15, 147, "Input", InitializationCell->True], Cell[32039, 1009, 746, 19, 66, "Input", InitializationCell->True], Cell[32788, 1030, 1947, 55, 106, "Input", InitializationCell->True], Cell[34738, 1087, 248, 7, 31, "Input"], Cell[34989, 1096, 183, 3, 31, "Input"], Cell[35175, 1101, 2496, 70, 166, "Input", InitializationCell->True], Cell[37674, 1173, 1652, 47, 106, "Input", InitializationCell->True], Cell[39329, 1222, 1517, 41, 128, "Input", InitializationCell->True], Cell[40849, 1265, 1858, 48, 162, "Input", InitializationCell->True], Cell[42710, 1315, 454, 10, 45, "Input", InitializationCell->True], Cell[43167, 1327, 3615, 86, 242, "Input", InitializationCell->True], Cell[46785, 1415, 2648, 59, 142, "Input", InitializationCell->True], Cell[49436, 1476, 820, 16, 61, "Input", InitializationCell->True], Cell[50259, 1494, 1417, 47, 86, "Input", InitializationCell->True], Cell[51679, 1543, 2001, 49, 142, "Input", InitializationCell->True], Cell[53683, 1594, 2253, 55, 162, "Input", InitializationCell->True], Cell[55939, 1651, 1212, 33, 102, "Input", InitializationCell->True], Cell[57154, 1686, 1399, 46, 86, "Input", InitializationCell->True], Cell[58556, 1734, 1257, 33, 102, "Input", InitializationCell->True], Cell[59816, 1769, 1832, 42, 122, "Input", InitializationCell->True], Cell[61651, 1813, 461, 13, 61, "Input", InitializationCell->True], Cell[62115, 1828, 1362, 45, 86, "Input", InitializationCell->True], Cell[63480, 1875, 1691, 42, 122, "Input", InitializationCell->True], Cell[65174, 1919, 1156, 32, 102, "Input", InitializationCell->True], Cell[66333, 1953, 1757, 46, 122, "Input", InitializationCell->True], Cell[68093, 2001, 2827, 75, 126, "Input", InitializationCell->True], Cell[70923, 2078, 2409, 57, 162, "Input", InitializationCell->True], Cell[73335, 2137, 1489, 39, 122, "Input", InitializationCell->True], Cell[74827, 2178, 147, 3, 29, "Text"], Cell[74977, 2183, 1459, 38, 102, "Input", InitializationCell->True], Cell[76439, 2223, 925, 26, 102, "Input", InitializationCell->True], Cell[77367, 2251, 857, 25, 102, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[78261, 2281, 96, 2, 21, "Subsubsection"], Cell[78360, 2285, 1141, 35, 86, "Input", InitializationCell->True], Cell[79504, 2322, 222, 6, 62, "Input", InitializationCell->True], Cell[79729, 2330, 1082, 32, 66, "Input", InitializationCell->True], Cell[80814, 2364, 850, 27, 45, "Input", InitializationCell->True], Cell[81667, 2393, 2062, 58, 66, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[83766, 2456, 46, 0, 21, "Subsubsection"], Cell[83815, 2458, 332, 9, 41, "Text"], Cell[CellGroupData[{ Cell[84172, 2471, 86, 1, 45, "Input", InitializationCell->True], Cell[84261, 2474, 1000, 17, 70, "Message"], Cell[85264, 2493, 996, 17, 70, "Message"] }, Open ]], Cell[CellGroupData[{ Cell[86297, 2515, 158, 2, 45, "Input", InitializationCell->True], Cell[86458, 2519, 817, 15, 70, "Message"], Cell[87278, 2536, 78, 1, 70, "Output"] }, Open ]], Cell[87371, 2540, 167, 4, 45, "Input", InitializationCell->True] }, Closed]] }, Open ]] } ] *) (* End of internal cache information *)