algebra-4.3.1: Constructive abstract algebra

Safe HaskellSafe
LanguageHaskell98

Numeric.Field.Fraction

Synopsis

Documentation

data Fraction d #

Fraction field k(D) of GCDDomain domain D.

Instances

GCDDomain d => RightModule Integer (Fraction d) # 

Methods

(*.) :: Fraction d -> Integer -> Fraction d #

GCDDomain d => RightModule Natural (Fraction d) # 

Methods

(*.) :: Fraction d -> Natural -> Fraction d #

GCDDomain d => LeftModule Integer (Fraction d) # 

Methods

(.*) :: Integer -> Fraction d -> Fraction d #

GCDDomain d => LeftModule Natural (Fraction d) # 

Methods

(.*) :: Natural -> Fraction d -> Fraction d #

(Eq d, GCDDomain d) => Eq (Fraction d) # 

Methods

(==) :: Fraction d -> Fraction d -> Bool #

(/=) :: Fraction d -> Fraction d -> Bool #

(Ord d, GCDDomain d) => Ord (Fraction d) # 

Methods

compare :: Fraction d -> Fraction d -> Ordering #

(<) :: Fraction d -> Fraction d -> Bool #

(<=) :: Fraction d -> Fraction d -> Bool #

(>) :: Fraction d -> Fraction d -> Bool #

(>=) :: Fraction d -> Fraction d -> Bool #

max :: Fraction d -> Fraction d -> Fraction d #

min :: Fraction d -> Fraction d -> Fraction d #

(Eq d, Show d, Unital d) => Show (Fraction d) # 

Methods

showsPrec :: Int -> Fraction d -> ShowS #

show :: Fraction d -> String #

showList :: [Fraction d] -> ShowS #

GCDDomain d => Abelian (Fraction d) # 
GCDDomain d => Additive (Fraction d) # 

Methods

(+) :: Fraction d -> Fraction d -> Fraction d #

sinnum1p :: Natural -> Fraction d -> Fraction d #

sumWith1 :: Foldable1 f => (a -> Fraction d) -> f a -> Fraction d #

GCDDomain d => Monoidal (Fraction d) # 

Methods

zero :: Fraction d #

sinnum :: Natural -> Fraction d -> Fraction d #

sumWith :: Foldable f => (a -> Fraction d) -> f a -> Fraction d #

GCDDomain d => Semiring (Fraction d) # 
GCDDomain d => Multiplicative (Fraction d) # 

Methods

(*) :: Fraction d -> Fraction d -> Fraction d #

pow1p :: Fraction d -> Natural -> Fraction d #

productWith1 :: Foldable1 f => (a -> Fraction d) -> f a -> Fraction d #

GCDDomain d => Group (Fraction d) # 

Methods

(-) :: Fraction d -> Fraction d -> Fraction d #

negate :: Fraction d -> Fraction d #

subtract :: Fraction d -> Fraction d -> Fraction d #

times :: Integral n => n -> Fraction d -> Fraction d #

GCDDomain d => Unital (Fraction d) # 

Methods

one :: Fraction d #

pow :: Fraction d -> Natural -> Fraction d #

productWith :: Foldable f => (a -> Fraction d) -> f a -> Fraction d #

GCDDomain d => Division (Fraction d) # 

Methods

recip :: Fraction d -> Fraction d #

(/) :: Fraction d -> Fraction d -> Fraction d #

(\\) :: Fraction d -> Fraction d -> Fraction d #

(^) :: Integral n => Fraction d -> n -> Fraction d #

GCDDomain d => Commutative (Fraction d) # 
GCDDomain d => DecidableAssociates (Fraction d) # 

Methods

isAssociate :: Fraction d -> Fraction d -> Bool #

GCDDomain d => DecidableUnits (Fraction d) # 

Methods

recipUnit :: Fraction d -> Maybe (Fraction d) #

isUnit :: Fraction d -> Bool #

(^?) :: Integral n => Fraction d -> n -> Maybe (Fraction d) #

GCDDomain d => DecidableZero (Fraction d) # 

Methods

isZero :: Fraction d -> Bool #

GCDDomain d => Rig (Fraction d) # 

Methods

fromNatural :: Natural -> Fraction d #

(Characteristic d, GCDDomain d) => Characteristic (Fraction d) # 

Methods

char :: proxy (Fraction d) -> Natural #

GCDDomain d => Ring (Fraction d) # 

Methods

fromInteger :: Integer -> Fraction d #

GCDDomain d => ZeroProductSemiring (Fraction d) # 
GCDDomain d => UnitNormalForm (Fraction d) # 

Methods

splitUnit :: Fraction d -> (Fraction d, Fraction d) #

GCDDomain d => Euclidean (Fraction d) # 

Methods

degree :: Fraction d -> Maybe Natural #

divide :: Fraction d -> Fraction d -> (Fraction d, Fraction d) #

quot :: Fraction d -> Fraction d -> Fraction d #

rem :: Fraction d -> Fraction d -> Fraction d #

GCDDomain d => PID (Fraction d) # 

Methods

egcd :: Fraction d -> Fraction d -> (Fraction d, Fraction d, Fraction d) #

GCDDomain d => UFD (Fraction d) # 
GCDDomain d => GCDDomain (Fraction d) # 

Methods

gcd :: Fraction d -> Fraction d -> Fraction d #

reduceFraction :: Fraction d -> Fraction d -> (Fraction d, Fraction d) #

lcm :: Fraction d -> Fraction d -> Fraction d #

GCDDomain d => IntegralDomain (Fraction d) # 

Methods

divides :: Fraction d -> Fraction d -> Bool #

maybeQuot :: Fraction d -> Fraction d -> Maybe (Fraction d) #

numerator :: Fraction t -> t #

type Ratio = Fraction #

Convenient synonym for Fraction.

(%) :: GCDDomain d => d -> d -> Fraction d infixl 7 #