Interface ElemFactory<C extends Element<C>>

All Superinterfaces:
Serializable
All Known Subinterfaces:
AbelianGroupFactory<C>, AlgebraFactory<A,C>, FieldFactory<C>, ModularRingFactory<C>, ModulFactory<M,C>, MonoidFactory<C>, PolynomialRing<C>, RingFactory<C>
All Known Implementing Classes:
AlgebraicNumberRing, BigComplex, BigDecimal, BigDecimalComplex, BigInteger, BigOctonion, BigQuaternionRing, BigRational, ComplexAlgebraicRing, ComplexRing, GenExteriorPolynomialRing, GenMatrixRing, GenPolynomialRing, GenSolvablePolynomialRing, GenVectorModul, GenWordPolynomialRing, IndexFactory, LocalRing, LocalRing, LocalSolvablePolynomialRing, ModIntegerRing, ModIntRing, ModLongRing, MultiVarPowerSeriesRing, ProductRing, QLRSolvablePolynomialRing, QuotientRing, QuotientRing, QuotSolvablePolynomialRing, RealAlgebraicRing, RealAlgebraicRing, RecSolvablePolynomialRing, RecSolvableWordPolynomialRing, ResidueRing, ResidueRing, ResidueSolvablePolynomialRing, ResidueSolvableWordPolynomialRing, SolvableLocalResidueRing, SolvableLocalRing, SolvableQuotientRing, SolvableResidueRing, UnivPowerSeriesRing, WordFactory, WordResidueRing

public interface ElemFactory<C extends Element<C>> extends Serializable
Element factory interface. Defines embedding of integers, parsing and random element construction.
  • Method Summary

    Modifier and Type
    Method
    Description
    copy(C c)
    Create a copy of Element c.
    fromInteger(long a)
    Get the Element for a.
    Get the Element for a.
    Get a list of the generating elements.
    boolean
    Is this structure finite or infinite.
    Parse from Reader.
    Parse from String.
    random(int n)
    Generate a random Element with size less equal to n.
    random(int n, Random random)
    Generate a random Element with size less equal to n.
    Get a scripting compatible string representation.
    default C
    Value from String.
  • Method Details

    • generators

      List<C> generators()
      Get a list of the generating elements.
      Returns:
      list of generators for the algebraic structure.
    • isFinite

      boolean isFinite()
      Is this structure finite or infinite.
      Returns:
      true if this structure is finite, else false.
    • fromInteger

      C fromInteger(long a)
      Get the Element for a.
      Parameters:
      a - long
      Returns:
      element corresponding to a.
    • fromInteger

      C fromInteger(BigInteger a)
      Get the Element for a.
      Parameters:
      a - java.math.BigInteger.
      Returns:
      element corresponding to a.
    • random

      C random(int n)
      Generate a random Element with size less equal to n.
      Parameters:
      n -
      Returns:
      a random element.
    • random

      C random(int n, Random random)
      Generate a random Element with size less equal to n.
      Parameters:
      n -
      random - is a source for random bits.
      Returns:
      a random element.
    • copy

      C copy(C c)
      Create a copy of Element c.
      Parameters:
      c -
      Returns:
      a copy of c.
    • valueOf

      default C valueOf(String s)
      Value from String.
      Parameters:
      s - String.
      Returns:
      a Element corresponding to s.
    • parse

      C parse(String s)
      Parse from String.
      Parameters:
      s - String.
      Returns:
      a Element corresponding to s.
    • parse

      C parse(Reader r)
      Parse from Reader.
      Parameters:
      r - Reader.
      Returns:
      the next Element found on r.
    • toScript

      String toScript()
      Get a scripting compatible string representation.
      Returns:
      script compatible representation for this ElemFactory.