factory-0.3.2.3: Rational arithmetic in an irrational world.
Safe HaskellNone
LanguageHaskell2010

Factory.Data.QuotientRing

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
Synopsis

Type-classes

class Ring q => QuotientRing q where Source #

Defines a sub-class of Ring, in which division is implemented.

Methods

quotRem' Source #

Arguments

:: q 
-> q 
-> (q, q)

Divides the first operand by the second, to yield a pair composed from the quotient and the remainder.

Instances

Instances details
(Eq c, Fractional c, Num e, Ord e) => QuotientRing (Polynomial c e) Source #

Defines the ability to divide polynomials.

Instance details

Defined in Factory.Data.Polynomial

Methods

quotRem' :: Polynomial c e -> Polynomial c e -> (Polynomial c e, Polynomial c e) Source #

(Eq c, Num c, Num e, Ord e, Show c, Show e) => QuotientRing (MonicPolynomial c e) Source # 
Instance details

Defined in Factory.Data.MonicPolynomial

Functions

quot' Source #

Arguments

:: QuotientRing q 
=> q

Numerator.

-> q

Denominator.

-> q 

Returns the quotient, after division of the two specified QuotientRings.

rem' Source #

Arguments

:: QuotientRing q 
=> q

Numerator.

-> q

Denominator.

-> q 

Returns the remainder, after division of the two specified QuotientRings.

Predicates

areCongruentModulo Source #

Arguments

:: (Eq q, QuotientRing q) 
=> q

LHS.

-> q

RHS.

-> q

Modulus.

-> Bool 

isDivisibleBy Source #

Arguments

:: (Eq q, QuotientRing q) 
=> q

Numerator.

-> q

Denominator.

-> Bool 

True if the second operand divides the first.