Let R be an order and I and J be fractional R-ideals in an étale algebra A over Q. Then the following statements are equivalent:
Method: MonStgElt Default: "Auto"
Returns representatives of all the weak equivalence classes I of S satisfying (I:I)=S. The parameter Method (default "Auto") determines if we should use the "IntermediateIdeals" routine or the "LowIndexProcess", which is potentially much slower but more memory efficient.
Given an order S, returns representatives I of all weak equivalence classes of fractional S-ideals with (I:I)=S.We also provide an abstract representation of the weak equivalence class monoid. In this representation the monoid has type AlgEtQWECM and classes have type AlgEtQWECMElt. Classes can be created via the coercion operator !, multiplied with * (and exponentiated with ^{}), and a representative can be recovered using the RepresentativeMap. Additional helpers include IsOne, IsIdempotent, and Localization.
Let R be an order in an étale algebra over Q. Then ideal multiplication induces a commutative monoid structure on the set of weak equivalence classes of fractional R-ideals called the weak equivalence class monoid of R. This commutative monoid, which we denote by mathcal(W)(R), is finite and has unit element given by the class of R.
Since the multiplicator ring is an invariant of the weak equivalence class of a fractional R-ideal, we have a partitioning mathcal(W)(R) = bigsqcupS mathcal(W)S(R), where the disjoint union is taken over the overorders S of R and mathcal(W)S(R) is the subset of mathcal(W)(R) consisting of the weak equivalence classes of fractional R-ideals with multiplicator ring S.
Let S be an overorder of R. If S is Gorenstein then mathcal(W)S(R) consists only of the class defined by S. If S has Cohen-Macaulay type 2 and mathfrak(p) is a prime of S, then each fractional R-ideal I with multiplicator ring S satisfies either Imathfrak(p) simeq Smathfrak(p) or Imathfrak(p) simeq Stmathfrak(p). The second possibility occurs precisely when S has Cohen-Macaulay type 2 at the primes mathfrak(p). This classification results provide a very efficient method to compute mathcal(W)S(R) for orders S with Cohen-Macaulay type ≤2. For the general case, an algorithm that includes a more expensive enumeration step is provided.
Method: MonStgElt Default: "Auto"
Computes the weak equivalence class monoid of E. The parameter Method (default "Auto") determines if we should use the "IntermediateIdeals" routine or the "LowIndexProcess", which is potentially much slower but more memory efficient.The second method to compute mathcal(W)(R) returns an abstract representation of the monoid together with a map giving representatives. The monoid is of type AlgEtQWECM and each class is of type AlgEtQWECMElt. Classes can be created by feeding to the operator ! a fractional S-ideal, when S is an overorder of R, or an overorder of R itself. Whenever a class is created a representative is stored in an attribute. This representative can be changed using the intrinsic SetRepresentative. Classes can be multiplied using the operator *. Whenever two classes are multiplied, the result is stored in the attribute MultiplicationTable of the monoid.
Given an order R, returns the abstract weak equivalence class monoid W of R together with a map (with preimages) sending each class to a representative.
Coerce x into the monoid W, when possible, returning a class.
Returns whether the class x belongs to the monoid W.
Change the stored representative of the class x to the weakly equivalent ideal J.
(More standard intrinsics.)
> _<x> := PolynomialRing(Integers()); > f := (x^4+16)*(x^4+81); > A := EtaleAlgebra(f); > E := EquationOrder(A); > w := WKICM_bar(E); > #w; 1 > // Optionally compute full monoid > W := WKICM(E); > #W;