Trait

spire.algebra.Field

WithDefaultGCD

Related Doc: package Field

Permalink

trait WithDefaultGCD[A] extends Field[A]

Field with simple default GCD/LCM implementations: gcd(a, b) = 1 (except gcd(0, 0) = 0) while lcm(a, b) = a * b.

Linear Supertypes
Field[A], EuclideanRing[A], GCDRing[A], algebra.ring.Field[A], MultiplicativeCommutativeGroup[A], algebra.ring.MultiplicativeGroup[A], CommutativeRing[A], CommutativeRng[A], CommutativeRig[A], MultiplicativeCommutativeMonoid[A], CommutativeSemiring[A], MultiplicativeCommutativeSemigroup[A], algebra.ring.Ring[A], algebra.ring.Rng[A], AdditiveCommutativeGroup[A], algebra.ring.AdditiveGroup[A], algebra.ring.Rig[A], algebra.ring.MultiplicativeMonoid[A], algebra.ring.Semiring[A], algebra.ring.MultiplicativeSemigroup[A], AdditiveCommutativeMonoid[A], AdditiveCommutativeSemigroup[A], algebra.ring.AdditiveMonoid[A], algebra.ring.AdditiveSemigroup[A], Serializable, Serializable, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. WithDefaultGCD
  2. Field
  3. EuclideanRing
  4. GCDRing
  5. Field
  6. MultiplicativeCommutativeGroup
  7. MultiplicativeGroup
  8. CommutativeRing
  9. CommutativeRng
  10. CommutativeRig
  11. MultiplicativeCommutativeMonoid
  12. CommutativeSemiring
  13. MultiplicativeCommutativeSemigroup
  14. Ring
  15. Rng
  16. AdditiveCommutativeGroup
  17. AdditiveGroup
  18. Rig
  19. MultiplicativeMonoid
  20. Semiring
  21. MultiplicativeSemigroup
  22. AdditiveCommutativeMonoid
  23. AdditiveCommutativeSemigroup
  24. AdditiveMonoid
  25. AdditiveSemigroup
  26. Serializable
  27. Serializable
  28. 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 getClass(): Class[_]

    Permalink
    Definition Classes
    Any
  3. abstract def negate(x: A): A

    Permalink
    Definition Classes
    AdditiveGroup
  4. abstract def one: A

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

    Permalink
    Definition Classes
    AdditiveSemigroup
  6. abstract def times(x: A, y: A): A

    Permalink
    Definition Classes
    MultiplicativeSemigroup
  7. 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: CommutativeGroup[A]

    Permalink
    Definition Classes
    AdditiveCommutativeGroup → AdditiveCommutativeMonoid → AdditiveCommutativeSemigroup → AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
  5. final def asInstanceOf[T0]: T0

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

    Permalink
    Definition Classes
    Any
  7. def euclideanFunction(a: A): BigInt

    Permalink
    Definition Classes
    FieldEuclideanRing
  8. def fromBigInt(n: BigInt): A

    Permalink
    Definition Classes
    Ring
  9. def fromDouble(a: Double): A

    Permalink
    Definition Classes
    Field
  10. def fromInt(n: Int): A

    Permalink
    Definition Classes
    Ring
  11. def gcd(a: A, b: A)(implicit eqA: Eq[A]): A

    Permalink
    Definition Classes
    WithDefaultGCDGCDRing
  12. def hashCode(): Int

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

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

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

    Permalink
    Definition Classes
    AdditiveMonoid
  16. def lcm(a: A, b: A)(implicit eqA: Eq[A]): A

    Permalink
    Definition Classes
    WithDefaultGCDGCDRing
  17. def minus(x: A, y: A): A

    Permalink
    Definition Classes
    AdditiveGroup
  18. def mod(a: A, b: A): A

    Permalink
    Definition Classes
    FieldEuclideanRing
  19. def multiplicative: CommutativeGroup[A]

    Permalink
    Definition Classes
    MultiplicativeCommutativeGroup → MultiplicativeCommutativeMonoid → MultiplicativeCommutativeSemigroup → MultiplicativeGroup → MultiplicativeMonoid → MultiplicativeSemigroup
  20. def positivePow(a: A, n: Int): A

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MultiplicativeSemigroup
  21. def positiveSumN(a: A, n: Int): A

    Permalink
    Attributes
    protected[this]
    Definition Classes
    AdditiveSemigroup
  22. def pow(a: A, n: Int): A

    Permalink
    Definition Classes
    MultiplicativeGroup → MultiplicativeMonoid → MultiplicativeSemigroup
  23. def product(as: TraversableOnce[A]): A

    Permalink
    Definition Classes
    MultiplicativeMonoid
  24. def quot(a: A, b: A): A

    Permalink
    Definition Classes
    FieldEuclideanRing
  25. def quotmod(a: A, b: A): (A, A)

    Permalink
    Definition Classes
    FieldEuclideanRing
  26. def reciprocal(x: A): A

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

    Permalink
    Definition Classes
    AdditiveMonoid
  28. def sumN(a: A, n: Int): A

    Permalink
    Definition Classes
    AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
  29. def toString(): String

    Permalink
    Definition Classes
    Any
  30. def tryProduct(as: TraversableOnce[A]): Option[A]

    Permalink
    Definition Classes
    MultiplicativeMonoid → MultiplicativeSemigroup
  31. def trySum(as: TraversableOnce[A]): Option[A]

    Permalink
    Definition Classes
    AdditiveMonoid → AdditiveSemigroup

Inherited from Field[A]

Inherited from EuclideanRing[A]

Inherited from GCDRing[A]

Inherited from algebra.ring.Field[A]

Inherited from MultiplicativeCommutativeGroup[A]

Inherited from algebra.ring.MultiplicativeGroup[A]

Inherited from CommutativeRing[A]

Inherited from CommutativeRng[A]

Inherited from CommutativeRig[A]

Inherited from MultiplicativeCommutativeMonoid[A]

Inherited from CommutativeSemiring[A]

Inherited from MultiplicativeCommutativeSemigroup[A]

Inherited from algebra.ring.Ring[A]

Inherited from algebra.ring.Rng[A]

Inherited from AdditiveCommutativeGroup[A]

Inherited from algebra.ring.AdditiveGroup[A]

Inherited from algebra.ring.Rig[A]

Inherited from algebra.ring.MultiplicativeMonoid[A]

Inherited from algebra.ring.Semiring[A]

Inherited from algebra.ring.MultiplicativeSemigroup[A]

Inherited from AdditiveCommutativeMonoid[A]

Inherited from AdditiveCommutativeSemigroup[A]

Inherited from algebra.ring.AdditiveMonoid[A]

Inherited from algebra.ring.AdditiveSemigroup[A]

Inherited from Serializable

Inherited from Serializable

Inherited from Any

Ungrouped