diff --git a/GLIdeals.m2 b/GLIdeals.m2 index 4479612..510b221 100644 --- a/GLIdeals.m2 +++ b/GLIdeals.m2 @@ -36,8 +36,8 @@ generateIlambda(ZZ,ZZ,List,PolynomialRing) := (n,m,lam,S) -> ( ideal mingens J ) -mingensILambda = method() -mingensILambda(Matrix, List) := (X, lam) - ( +mingensILambda = method() -- TODO: Make it accept Partitions as well +mingensILambda(Matrix, List) := (X, lam) -> ( myHookLength := P -> ( -- compute prod (P_i - P_j + j - i) / (j - i) for all i < j num := 1; @@ -51,23 +51,22 @@ mingensILambda(Matrix, List) := (X, lam) - ( return num / den; ); - lam := local lam; size := #lam; r := numRows X; c := numColumns X; - min_size := min(r, c); - max_size := max(r, c); + minSize := min(r, c); + maxSize := max(r, c); if min_size < size then( error "Partition is too large for the matrix"; ); - lam = lam | apply(min_size - size, i -> 0); -- make it size min_size - dimension := myHookLength(lam); - lam = lam | apply(max_size - min_size, i -> 0); -- make it size max_size - return dimension * myHookLength(lam); -) + P := lam | apply(minSize - size, i -> 0); -- make it size min_size + dimension := myHookLength(P); + P = P | apply(maxSize - minSize, i -> 0); -- make it size max_size + return dimension * myHookLength(P); +); ----- beginDocumentation()