linbox
|
map element of source ring(field) to target ringAn instance of Hom is a homomorphism from a ring of type Source to a ring (usually field) of type Target. More...
#include <hom.h>
Public Member Functions | |
Hom (const Source &S, const Target &T) | |
Construct a homomorphism from a specific source ring S and target field T with Hom(S, T). More... | |
Elt & | image (Elt &t, const SrcElt &s) |
image(t, s) implements the homomorphism, assigning the t the value of the image of s under the mapping. More... | |
SrcElt & | preimage (SrcElt &s, const Elt &t) |
If possible, preimage(s,t) assigns a value to s such that the image of s is t. More... | |
map element of source ring(field) to target ring
An instance of Hom is a homomorphism from a ring of type Source to a ring (usually field) of type Target.
The intended use is that it will be a natural mapping. For instance:
Hom<Unparametric<Integers>, Givaro::Modular<integer> >(Z, Zp) nat; // is the mod p mapping.
Hom<<NTL_ZZp, Givaro::Modular<integer> >(Zp, Mp) nat;
// is an isomorphism, provided the Zp and Mp have same characteristic. Hom<Unparametric<NTL_ZZp, Unparameteric<NTL_ZZpEx> >(Z3, Z27) nat; // is the embedding of the prime field in the extension.
|
inline |
Construct a homomorphism from a specific source ring S and target field T with Hom(S, T).
Specializations define all actual homomorphisms.
|
inline |
image(t, s) implements the homomorphism, assigning the t the value of the image of s under the mapping.
The default behaviour goes through integers.
|
inline |
If possible, preimage(s,t) assigns a value to s such that the image of s is t.
Otherwise behaviour is unspecified. An error may be thrown, a conventional value may be set, or an arb value set.
The default behaviour goes through integers.