Trait/Object

spire.algebra

Field

Related Docs: object Field | package algebra

Permalink

trait Field[A] extends EuclideanRing[A] with MultiplicativeAbGroup[A]

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Field
  2. MultiplicativeAbGroup
  3. MultiplicativeGroup
  4. EuclideanRing
  5. CRing
  6. MultiplicativeCMonoid
  7. MultiplicativeCSemigroup
  8. Ring
  9. Rng
  10. AdditiveAbGroup
  11. AdditiveCMonoid
  12. AdditiveCSemigroup
  13. AdditiveGroup
  14. Rig
  15. MultiplicativeMonoid
  16. Semiring
  17. MultiplicativeSemigroup
  18. AdditiveMonoid
  19. AdditiveSemigroup
  20. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def div(x: A, y: A): A

    Permalink
    Definition Classes
    MultiplicativeGroup
  2. abstract def gcd(a: A, b: A): A

    Permalink
    Definition Classes
    EuclideanRing
  3. abstract def getClass(): Class[_]

    Permalink
    Definition Classes
    Any
  4. abstract def mod(a: A, b: A): A

    Permalink
    Definition Classes
    EuclideanRing
  5. abstract def negate(x: A): A

    Permalink
    Definition Classes
    AdditiveGroup
  6. abstract def one: A

    Permalink
    Definition Classes
    MultiplicativeMonoid
  7. abstract def plus(x: A, y: A): A

    Permalink
    Definition Classes
    AdditiveSemigroup
  8. abstract def quot(a: A, b: A): A

    Permalink
    Definition Classes
    EuclideanRing
  9. abstract def times(x: A, y: A): A

    Permalink
    Definition Classes
    MultiplicativeSemigroup
  10. abstract def zero: A

    Permalink
    Definition Classes
    AdditiveMonoid

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  4. def additive: AbGroup[A]

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  7. final def euclid(a: A, b: A)(implicit eq: Eq[A]): A

    Permalink
    Attributes
    protected[this]
    Definition Classes
    EuclideanRing
    Annotations
    @tailrec()
  8. def fromDouble(a: Double): A

    Permalink

    This is implemented in terms of basic Field ops.

    This is implemented in terms of basic Field ops. However, this is probably significantly less efficient than can be done with a specific type. So, it is recommended that this method is overriden.

    This is possible because a Double is a rational number.

  9. def fromInt(n: Int): A

    Permalink

    Defined to be equivalent to additive.sumn(one, n).

    Defined to be equivalent to additive.sumn(one, n). That is, n repeated summations of this ring's one, or -one if n is negative.

    Definition Classes
    Ring
  10. def hashCode(): Int

    Permalink
    Definition Classes
    Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. def isOne(a: A)(implicit ev: Eq[A]): Boolean

    Permalink
    Definition Classes
    MultiplicativeMonoid
  13. def isZero(a: A)(implicit ev: Eq[A]): Boolean

    Permalink

    Tests if a is zero.

    Tests if a is zero.

    Definition Classes
    AdditiveMonoid
  14. def lcm(a: A, b: A): A

    Permalink
    Definition Classes
    EuclideanRing
  15. def minus(x: A, y: A): A

    Permalink
    Definition Classes
    AdditiveGroup
  16. def multiplicative: AbGroup[A]

    Permalink
  17. def pow(a: A, n: Int): A

    Permalink

    This is similar to Semigroup#pow, except that a pow 0 is defined to be the multiplicative identity.

    This is similar to Semigroup#pow, except that a pow 0 is defined to be the multiplicative identity.

    Definition Classes
    RigSemiring
  18. def prod(as: TraversableOnce[A]): A

    Permalink

    Given a sequence of as, sum them using the monoid and return the total.

    Given a sequence of as, sum them using the monoid and return the total.

    Definition Classes
    MultiplicativeMonoid
  19. def prodOption(as: TraversableOnce[A]): Option[A]

    Permalink

    Given a sequence of as, sum them using the semigroup and return the total.

    Given a sequence of as, sum them using the semigroup and return the total.

    If the sequence is empty, returns None. Otherwise, returns Some(total).

    Definition Classes
    MultiplicativeSemigroup
  20. def prodn(a: A, n: Int): A

    Permalink

    Return a multiplicated with itself n times.

    Return a multiplicated with itself n times.

    Definition Classes
    MultiplicativeGroupMultiplicativeMonoidMultiplicativeSemigroup
  21. def prodnAboveOne(a: A, n: Int): A

    Permalink
    Attributes
    protected
    Definition Classes
    MultiplicativeSemigroup
  22. def quotmod(a: A, b: A): (A, A)

    Permalink
    Definition Classes
    EuclideanRing
  23. def reciprocal(x: A): A

    Permalink
    Definition Classes
    MultiplicativeGroup
  24. def sum(as: TraversableOnce[A]): A

    Permalink

    Given a sequence of as, sum them using the monoid and return the total.

    Given a sequence of as, sum them using the monoid and return the total.

    Definition Classes
    AdditiveMonoid
  25. def sumOption(as: TraversableOnce[A]): Option[A]

    Permalink

    Given a sequence of as, sum them using the semigroup and return the total.

    Given a sequence of as, sum them using the semigroup and return the total.

    If the sequence is empty, returns None. Otherwise, returns Some(total).

    Definition Classes
    AdditiveSemigroup
  26. def sumn(a: A, n: Int): A

    Permalink

    Return a added with itself n times.

    Return a added with itself n times.

    Definition Classes
    AdditiveGroupAdditiveMonoidAdditiveSemigroup
  27. def sumnAboveOne(a: A, n: Int): A

    Permalink
    Attributes
    protected
    Definition Classes
    AdditiveSemigroup
  28. def toString(): String

    Permalink
    Definition Classes
    Any

Inherited from MultiplicativeAbGroup[A]

Inherited from MultiplicativeGroup[A]

Inherited from EuclideanRing[A]

Inherited from CRing[A]

Inherited from MultiplicativeCMonoid[A]

Inherited from MultiplicativeCSemigroup[A]

Inherited from Ring[A]

Inherited from Rng[A]

Inherited from AdditiveAbGroup[A]

Inherited from AdditiveCMonoid[A]

Inherited from AdditiveCSemigroup[A]

Inherited from AdditiveGroup[A]

Inherited from Rig[A]

Inherited from MultiplicativeMonoid[A]

Inherited from Semiring[A]

Inherited from MultiplicativeSemigroup[A]

Inherited from AdditiveMonoid[A]

Inherited from AdditiveSemigroup[A]

Inherited from Any

Ungrouped