org.rubato.math.module
Class ZRing

java.lang.Object
  extended by org.rubato.math.module.Ring
      extended by org.rubato.math.module.NumberRing
          extended by org.rubato.math.module.ZRing
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<Module>, FreeModule, Module, ZFreeModule, XMLInputOutput<Module>

public final class ZRing
extends NumberRing
implements ZFreeModule

The ring of integers.

Author:
Gérard Milmeister
See Also:
ZElement, Serialized Form

Field Summary
static ZRing ring
          The unique instance of the ring of integers.
 
Method Summary
 ZElement cast(CElement element)
           
 ZElement cast(ModuleElement element)
          Casts element to an element in this module if possible.
 ZElement cast(QElement element)
           
 ZElement cast(RElement element)
           
 ZElement cast(ZnElement element)
           
 int compareTo(Module object)
          Compares this module with object.
 ZElement createElement(java.util.List<ModuleElement> elements)
          Creates an element in this module from a list of module elements.
 boolean equals(java.lang.Object object)
          Returns true iff this module is equals to object.
 Module fromXML(XMLReader reader, org.w3c.dom.Element element)
          Reads XML representation from reader starting with element.
 java.lang.String getElementTypeName()
          Returns the value of the type attribute for this class.
 ZFreeModule getFreeModule(int dimension)
          Returns the corresponding free module of dimension dim.
 ModuleMorphism getIdentityMorphism()
          Returns the identity morphism in this module.
 ZFreeModule getNullModule()
          Returns the null-module corresponding to this module.
 ZElement getOne()
          Returns the unit element of this ring.
 ZElement getUnitElement(int i)
          Returns the unit vector with 1 at position i.
static XMLInputOutput<Module> getXMLInputOutput()
           
 ZElement getZero()
          Returns the zero element of this ring.
 boolean hasElement(ModuleElement element)
          Returns true iff element is an element of this module.
 int hashCode()
          Returns the hash code for this module.
 boolean isField()
          Returns true if this ring is a field.
 boolean isVectorspace()
          Returns true if this free module is a vector space.
 ZElement parseString(java.lang.String s)
          Creates an element in this module from a string representation.
 java.lang.String toString()
          Returns a human readable string representation of this module.
 java.lang.String toVisualString()
          Returns a human readable string representation of this module.
 void toXML(XMLWriter writer)
          Outputs XML representation to writer.
 
Methods inherited from class org.rubato.math.module.NumberRing
compareTo
 
Methods inherited from class org.rubato.math.module.Ring
getComponentModule, getDimension, getInjection, getProjection, getRing, getTranslation, isNullModule, isRing
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.rubato.math.module.FreeModule
getInjection, getProjection
 
Methods inherited from interface org.rubato.math.module.Module
getComponentModule, getDimension, getRing, getTranslation, isNullModule, isRing
 

Field Detail

ring

public static final ZRing ring
The unique instance of the ring of integers.

Method Detail

getZero

public ZElement getZero()
Description copied from class: Ring
Returns the zero element of this ring.

Specified by:
getZero in interface Module
Specified by:
getZero in interface ZFreeModule
Specified by:
getZero in class Ring

getOne

public ZElement getOne()
Description copied from class: Ring
Returns the unit element of this ring.

Specified by:
getOne in class Ring

getUnitElement

public ZElement getUnitElement(int i)
Description copied from class: Ring
Returns the unit vector with 1 at position i. In the case of rings, this is simple the unit.

Specified by:
getUnitElement in interface FreeModule
Specified by:
getUnitElement in interface ZFreeModule
Overrides:
getUnitElement in class Ring

getNullModule

public ZFreeModule getNullModule()
Description copied from interface: Module
Returns the null-module corresponding to this module.

Specified by:
getNullModule in interface Module

isField

public boolean isField()
Description copied from class: Ring
Returns true if this ring is a field.

Specified by:
isField in class Ring

isVectorspace

public boolean isVectorspace()
Description copied from interface: FreeModule
Returns true if this free module is a vector space.

Specified by:
isVectorspace in interface FreeModule

getIdentityMorphism

public ModuleMorphism getIdentityMorphism()
Description copied from interface: Module
Returns the identity morphism in this module.

Specified by:
getIdentityMorphism in interface Module

hasElement

public boolean hasElement(ModuleElement element)
Description copied from interface: Module
Returns true iff element is an element of this module.

Specified by:
hasElement in interface Module

getFreeModule

public ZFreeModule getFreeModule(int dimension)
Description copied from class: Ring
Returns the corresponding free module of dimension dim.

Specified by:
getFreeModule in class Ring

equals

public boolean equals(java.lang.Object object)
Description copied from interface: Module
Returns true iff this module is equals to object.

Specified by:
equals in interface Module
Overrides:
equals in class java.lang.Object

compareTo

public int compareTo(Module object)
Description copied from interface: Module
Compares this module with object.

Specified by:
compareTo in interface java.lang.Comparable<Module>
Specified by:
compareTo in interface Module
Overrides:
compareTo in class NumberRing

createElement

public ZElement createElement(java.util.List<ModuleElement> elements)
Description copied from interface: Module
Creates an element in this module from a list of module elements.

Specified by:
createElement in interface Module
Specified by:
createElement in interface ZFreeModule
Returns:
null if no element in this module can be created from the arguments.

cast

public ZElement cast(ModuleElement element)
Description copied from interface: Module
Casts element to an element in this module if possible.

Specified by:
cast in interface Module
Returns:
null if cast is not possible

cast

public ZElement cast(ZnElement element)

cast

public ZElement cast(QElement element)

cast

public ZElement cast(RElement element)

cast

public ZElement cast(CElement element)

toString

public java.lang.String toString()
Description copied from interface: Module
Returns a human readable string representation of this module. The representation is not meant to be parseable.

Specified by:
toString in interface Module
Overrides:
toString in class java.lang.Object

toVisualString

public java.lang.String toVisualString()
Description copied from interface: Module
Returns a human readable string representation of this module. The representation is not meant to be parseable. The string should be a short representation, possibly using Unicode characters.

Specified by:
toVisualString in interface Module

parseString

public ZElement parseString(java.lang.String s)
Description copied from interface: Module
Creates an element in this module from a string representation.

Specified by:
parseString in interface Module
Specified by:
parseString in class Ring
Returns:
null if the string is in the wrong format

toXML

public void toXML(XMLWriter writer)
Description copied from interface: XMLInputOutput
Outputs XML representation to writer.

Specified by:
toXML in interface XMLInputOutput<Module>

fromXML

public Module fromXML(XMLReader reader,
                      org.w3c.dom.Element element)
Description copied from interface: XMLInputOutput
Reads XML representation from reader starting with element.

Specified by:
fromXML in interface XMLInputOutput<Module>
Returns:
an object of type T or null if parsing failed

getElementTypeName

public java.lang.String getElementTypeName()
Description copied from interface: XMLInputOutput
Returns the value of the type attribute for this class.

Specified by:
getElementTypeName in interface XMLInputOutput<Module>

getXMLInputOutput

public static XMLInputOutput<Module> getXMLInputOutput()

hashCode

public int hashCode()
Description copied from interface: Module
Returns the hash code for this module.

Specified by:
hashCode in interface Module
Overrides:
hashCode in class java.lang.Object