[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Elements of Modules

Subsections

Creation of Elements

M ! v : ModDed, SeqEnum -> ModDedElt
M ! v : ModDed, ModDedElt -> ModDedElt
M ! v : ModDed, ModElt -> ModDedElt
Coerce v into an element of M. v can be a sequence of length dimension of M, a module element or vector or an element of another module over a dedekind domain which is compatible with M.

Example ModDed_coerce-quo (H55E7)

Let Mod and its submodules and quotient modules be as in the sub and quotient module example above.

> m := 4*Mod.1;
> m;
(4/1*M.1 0)
> Q1!m;
( 4/1*M.1 0 )
> Q2!m;
( 4/1*M.1 0 )
> m := Mod!m;
> Q3!m;
( 4/1*M.1 0 )
> Q4!m;
( 4/1*M.1 0 )

> S1!m; >> S1!m; ^ Runtime error in `!': Illegal coercion LHS: ModDed RHS: ModDedElt > S1!Mod!V!0; ( ) > S2!Mod!Mod.2; ( M.1 ) > S3!Mod!(4*Mod.1); ( 4/1*M.1 0 )

Arithmetic with Elements

Basic arithmetic can be performed with elements of a module over a dedekind domain.

x + y : ModDedElt, ModDedElt -> ModDedElt
The sum of the module elements.
x - y : ModDedElt, ModDedElt -> ModDedElt
The difference of the module elements.
u * c : ModDedElt, RngElt -> ModDedElt
c * u : RngElt, ModDedElt -> ModDedElt
The product of the module element u and the ring element c.
u / c : ModDedElt, RngElt -> ModDedElt
The product of u and 1/c if it lies in the parent module of u.
I * u : RngOrdIdl, ModDedElt -> ModDed
I * u : RngFunOrdIdl, ModDedElt -> ModDed
u * I : ModDedElt, RngOrdIdl -> ModDed
u * I : ModDedElt, RngFunOrdIdl -> ModDed
The module containing elements which are products of u and an element lying in I.

Other Functions on Elements

Elements of modules over a dedekind domain can be tested for equality and represented as a sequence.

x eq y : ModDedElt, ModDedElt -> Bool
Return true if x and y are the same element of a module.
ElementToSequence(a) : ModDedElt -> SeqEnum
Eltseq(a) : ModDedElt -> SeqEnum
The module element a expressed as a sequence.
 [Next][Prev] [Right] [Left] [Up] [Index] [Root]

Version: V2.19 of Mon Dec 17 14:40:36 EST 2012