org.rubato.math.module
Interface FreeModule

All Superinterfaces:
java.lang.Comparable<Module>, Module, java.io.Serializable, XMLInputOutput<Module>
All Known Subinterfaces:
CFreeModule, ModularPolynomialFreeModule, PolynomialFreeModule, ProductFreeModule, QFreeModule, QStringFreeModule, RFreeModule, RStringFreeModule, ZFreeModule, ZnFreeModule, ZnStringFreeModule, ZStringFreeModule
All Known Implementing Classes:
CProperFreeModule, CRing, ModularPolynomialProperFreeModule, ModularPolynomialRing, NumberRing, PolynomialProperFreeModule, PolynomialRing, ProductProperFreeModule, ProductRing, ProperFreeModule, QProperFreeModule, QRing, QStringProperFreeModule, QStringRing, Ring, RProperFreeModule, RRing, RStringProperFreeModule, RStringRing, StringRing, ZnProperFreeModule, ZnRing, ZnStringProperFreeModule, ZnStringRing, ZProperFreeModule, ZRing, ZStringProperFreeModule, ZStringRing

public interface FreeModule
extends Module

The interface for free modules over rings.

Author:
Gérard Milmeister
See Also:
FreeElement

Method Summary
 ModuleMorphism getInjection(int index)
          Returns a module morphism that injects a ring into the free module at the component index.
 ModuleMorphism getProjection(int index)
          Returns a module morphism that projects the free module at the component index.
 ModuleElement getUnitElement(int i)
          Returns the unit vector with 1 at position i.
 boolean isVectorspace()
          Returns true if this free module is a vector space.
 
Methods inherited from interface org.rubato.math.module.Module
cast, compareTo, createElement, equals, getComponentModule, getDimension, getIdentityMorphism, getNullModule, getRing, getTranslation, getZero, hasElement, hashCode, isNullModule, isRing, parseString, toString, toVisualString
 
Methods inherited from interface org.rubato.xml.XMLInputOutput
fromXML, getElementTypeName, toXML
 

Method Detail

isVectorspace

boolean isVectorspace()
Returns true if this free module is a vector space.


getUnitElement

ModuleElement getUnitElement(int i)
Returns the unit vector with 1 at position i.


getProjection

ModuleMorphism getProjection(int index)
Returns a module morphism that projects the free module at the component index.

Parameters:
index - the number of the component to project to, the index will be clamped between 0 and the dimension-1 of the free module

getInjection

ModuleMorphism getInjection(int index)
Returns a module morphism that injects a ring into the free module at the component index.

Parameters:
index - the number of the component to project to, the index will be clamped between 0 and the dimension-1 of the free module