Precision: RngIntElt Default: Precision(GetDefaultRealField())
Returns the sequence of homomorphisms from the algebra A to a complex field C. The precision of C is given by the optional parameter Precision. The default value is 30.
> _<x> := PolynomialRing(Integers());
> A := EtaleAlgebra(x^2+2);
> homs := HomsToC(A : Precision := 30);
> #homs;
2
CheckMultiplicative: BoolElt Default: false
CheckUnital: BoolElt Default: false
ComputeInverse: BoolElt Default: true
Given étale algebras A and B and a sequence img of elements of B with length equal to the absolute dimension of A, returns the Q-algebra homomorphism sending the AbsoluteBasis(A) to img. If ComputeInverse is true and the map is invertible, preimages are defined. If CheckMultiplicative (resp. CheckUnital) is true, multiplicativity (resp. unitality) is checked.
NaturalAction(K, V) : AlgEtQ, AlgEtQ -> Map
Let K=K1 x ... x Kn be a product of distinct number fields and V=K1s1 x ... x Knsn. Returns the natural component-wise diagonal embedding K to V.
> _<x> := PolynomialRing(Integers());
> A := EtaleAlgebra((x^2+2)*(x^2+3));
> B := EtaleAlgebra(Components(A));
> // Build a hom by mapping AbsoluteBasis(A) into B component-wise
> img := [ B!Components(AbsoluteBasis(A)[i]) : i in [1..AbsoluteDimension(A)] ];
> m := Hom(A,B,img : CheckMultiplicative := false, CheckUnital := false, ComputeInverse := true);
> // Diagonal embedding on a suitable power algebra
> V, embs, projs := DirectProduct([A,A]);
> d := DiagonalEmbedding(A,V);
> d(One(A));
<1, 1, 1, 1>
V2.29, 28 November 2025