Package edu.jas.poly
Class LocalRing<C extends RingElem<C>>
java.lang.Object
edu.jas.poly.LocalRing<C>
- All Implemented Interfaces:
AbelianGroupFactory<Local<C>>
,ElemFactory<Local<C>>
,MonoidFactory<Local<C>>
,QuotPairFactory<C,
,Local<C>> RingFactory<Local<C>>
,Serializable
public class LocalRing<C extends RingElem<C>>
extends Object
implements RingFactory<Local<C>>, QuotPairFactory<C,Local<C>>
Local ring factory based on RingElem principal ideal. Objects of this class
are immutable.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final C
Ideal generator for localization.protected int
Indicator if this ring is a field.private static final org.apache.logging.log4j.Logger
protected static final Random
A default random sequence generator.protected final RingFactory
<C> Ring factory. -
Constructor Summary
ConstructorsConstructorDescriptionLocalRing
(RingFactory<C> r, C i) The constructor creates a LocalRing object from a RingFactory and a RingElem. -
Method Summary
Modifier and TypeMethodDescriptionCharacteristic of this ring.Copy Local element c.Create from numerator.Create from numerator, denominator pair.boolean
Comparison with any other object.fromInteger
(long a) Get a Local element from a long value.Get a Local element from a BigInteger value.Get a list of the generating elements.getONE()
Get the one element.getZERO()
Get the zero element.int
hashCode()
Hash code for this local ring.boolean
Query if this ring is associative.boolean
Query if this ring is commutative.boolean
isField()
Query if this ring is a field.boolean
isFinite()
Is this structure finite or infinite.Factory for base elements.Parse Local from Reader.Parse Local from String.random
(int n) Local random.Local random.toScript()
Get a scripting compatible string representation.toString()
Get the String representation as RingFactory.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface edu.jas.structure.ElemFactory
valueOf
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
ideal
Ideal generator for localization. -
ring
Ring factory. -
isField
protected int isFieldIndicator if this ring is a field. -
random
A default random sequence generator.
-
-
Constructor Details
-
LocalRing
The constructor creates a LocalRing object from a RingFactory and a RingElem.- Parameters:
i
- localization ideal generator.
-
-
Method Details
-
pairFactory
Factory for base elements.- Specified by:
pairFactory
in interfaceQuotPairFactory<C extends RingElem<C>,
Local<C extends RingElem<C>>>
-
create
Create from numerator. -
create
Create from numerator, denominator pair. -
isFinite
public boolean isFinite()Is this structure finite or infinite.- Specified by:
isFinite
in interfaceElemFactory<C extends RingElem<C>>
- Returns:
- true if this structure is finite, else false.
- See Also:
-
copy
Copy Local element c.- Specified by:
copy
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
c
-- Returns:
- a copy of c.
-
getZERO
Get the zero element.- Specified by:
getZERO
in interfaceAbelianGroupFactory<C extends RingElem<C>>
- Returns:
- 0 as Local.
-
getONE
Get the one element.- Specified by:
getONE
in interfaceMonoidFactory<C extends RingElem<C>>
- Returns:
- 1 as Local.
-
generators
Get a list of the generating elements.- Specified by:
generators
in interfaceElemFactory<C extends RingElem<C>>
- Returns:
- list of generators for the algebraic structure.
- See Also:
-
isCommutative
public boolean isCommutative()Query if this ring is commutative.- Specified by:
isCommutative
in interfaceMonoidFactory<C extends RingElem<C>>
- Returns:
- true if this ring is commutative, else false.
-
isAssociative
public boolean isAssociative()Query if this ring is associative.- Specified by:
isAssociative
in interfaceMonoidFactory<C extends RingElem<C>>
- Returns:
- true if this ring is associative, else false.
-
isField
public boolean isField()Query if this ring is a field.- Specified by:
isField
in interfaceRingFactory<C extends RingElem<C>>
- Returns:
- false.
-
characteristic
Characteristic of this ring.- Specified by:
characteristic
in interfaceRingFactory<C extends RingElem<C>>
- Returns:
- characteristic of this ring.
-
fromInteger
Get a Local element from a BigInteger value.- Specified by:
fromInteger
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
a
- BigInteger.- Returns:
- a Local.
-
fromInteger
Get a Local element from a long value.- Specified by:
fromInteger
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
a
- long.- Returns:
- a Local.
-
toString
Get the String representation as RingFactory. -
toScript
Get a scripting compatible string representation.- Specified by:
toScript
in interfaceElemFactory<C extends RingElem<C>>
- Returns:
- script compatible representation for this ElemFactory.
- See Also:
-
equals
Comparison with any other object. -
hashCode
public int hashCode()Hash code for this local ring. -
random
Local random.- Specified by:
random
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
n
- such that 0 ≤ v ≤ (2n-1).- Returns:
- a random residue element.
-
random
Local random.- Specified by:
random
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
n
- such that 0 ≤ v ≤ (2n-1).rnd
- is a source for random bits.- Returns:
- a random residue element.
-
parse
Parse Local from String.- Specified by:
parse
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
s
- String.- Returns:
- Local from s.
-
parse
Parse Local from Reader.- Specified by:
parse
in interfaceElemFactory<C extends RingElem<C>>
- Parameters:
r
- Reader.- Returns:
- next Local from r.
-