Weak Classes

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:

(a)
I_(mathfrak(p)) simeq J_(mathfrak(p)) as R_(mathfrak(p))-modules for every maximal ideal mathfrak(p) of R.
(b)
Ip simeq Jp as Rp-modules for every rational prime p.
(c)
1 ∈(I:J)(J:I).
(d)
I and J have the same multiplicator ring, say S, and (I:J) is an invertible fractional S-ideal.
(e)
I and J have the same multiplicator ring, say S, and (J:I) is an invertible fractional S-ideal. If the previous conditions hold, one says that I and J are weakly equivalent. This is an equivalence relation.

Note that if I is an order, then J is weakly equivalent to I if and only if J is an invertible I-ideal. If both I and J are orders then they are weakly equivalent if and only if they are equal. In the literature, the same notion sometimes goes under the name local isomorphism.

WKICM_bar(S) : AlgEtQOrd -> SeqEnum
    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.
WeakEquivalenceClassesWithPrescribedMultiplicatorRing(S) : AlgEtQOrd -> SeqEnum[AlgEtQIdl]
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.

WeakEquivalenceClassMonoid(E) : AlgEtQOrd -> SeqEnum[AlgEtQIdl]
WKICM(E) : AlgEtQOrd ->SeqEnum
    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.

WeakEquivalenceClassMonoidAbstract(R) : AlgEtQOrd -> AlgEtQWECM,Map
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.
W ! x : AlgEtQWECM, Any -> AlgEtQWECMElt
Coerce x into the monoid W, when possible, returning a class.
x in W : AlgEtQWECMElt, AlgEtQWECM -> BoolElt
Returns whether the class x belongs to the monoid W.
Parent(x) : AlgEtQWECMElt -> AlgEtQWECM
Ideal(x) : AlgEtQWECMElt -> AlgEtQIdl
MultiplicatorRing(x) : AlgEtQWECMElt -> AlgEtQOrd
x1 eq x2 : AlgEtQWECMElt, AlgEtQWECMElt -> BoolElt
SetRepresentative(x, J) : AlgEtQWECMElt, AlgEtQIdl ->
Change the stored representative of the class x to the weakly equivalent ideal J.
MultiplicationTable(W) : AlgEtQWECM -> Assoc
x * y : AlgEtQWECMElt, AlgEtQWECMElt -> AlgEtQWECMElt
x ^ n : AlgEtQWECMElt, RngIntElt -> AlgEtQWECMElt
IsOne(x) : AlgEtQWECMElt -> BoolElt
IsIdempotent(x) : AlgEtQWECMElt -> BoolElt
Order(W) : AlgEtQWECM -> AlgEtQOrd
Array(W) : AlgEtQWECM -> Assoc
RepresentativeMap(W) : AlgEtQWECM -> Map
W1 eq W2 : AlgEtQWECM, AlgEtQWECM -> BoolElt
# W : AlgEtQWECM -> RngInt
Classes(W) : AlgEtQWECM -> SeqEnum[AlgEtQWECMElt]
Representatives(W) : AlgEtQWECM -> SeqEnum[AlgEtQIdl]
One(W) : AlgEtQWECM -> AlgEtQWECMElt
Random(W) : AlgEtQWECM -> AlgEtQWECMElt
Idempotents(W) : AlgEtQWECM -> SeqEnum[AlgEtQWECMElt]
Localization(W, P) : AlgEtQWECM, AlgEtQIdl -> AlgEtQWECM
IsGeneratingSet(W, seq) : AlgEtQWECM, SeqEnum[AlgEtQWECMElt] -> BoolElt
IsGeneratingSet(W, seq) : AlgEtQWECM, SeqEnum[AlgEtQIdl] -> BoolElt
(More standard intrinsics.)

Example AlgEtQ_WeakEquivalenceClasses (H42E12)

> _<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;
V2.29, 28 November 2025