linbox
Public Member Functions
Hom< Source, Target, Enabled > Class Template Reference

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...
 

Detailed Description

template<class Source, class Target, class Enabled = void>
class LinBox::Hom< Source, Target, Enabled >

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.

Constructor & Destructor Documentation

Hom ( const Source &  S,
const Target &  T 
)
inline

Construct a homomorphism from a specific source ring S and target field T with Hom(S, T).

Specializations define all actual homomorphisms.

Member Function Documentation

Elt& image ( Elt &  t,
const SrcElt &  s 
)
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.

SrcElt& preimage ( SrcElt &  s,
const Elt &  t 
)
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.


The documentation for this class was generated from the following file: