numeric-prelude-0.4.3: An experimental alternative hierarchy of numeric type classes

Safe HaskellNone
LanguageHaskell98

Algebra.Algebraic

Contents

Synopsis

Documentation

class C a => C a where Source #

Minimal implementation: root or '(^/)'.

Minimal complete definition

root | (^/)

Methods

sqrt :: a -> a Source #

root :: Integer -> a -> a Source #

(^/) :: a -> Rational -> a infixr 8 Source #

Instances

C Double Source # 
C Float Source # 
C T Source # 

Methods

sqrt :: T -> T Source #

root :: Integer -> T -> T Source #

(^/) :: T -> Rational -> T Source #

C T Source # 

Methods

sqrt :: T -> T Source #

root :: Integer -> T -> T Source #

(^/) :: T -> Rational -> T Source #

Floating a => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

C a => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

C a => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

C a => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

(C a, C a) => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

(C a, C a) => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

(C a, C a, Power a) => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

C a => C (T a) Source # 

Methods

sqrt :: T a -> T a Source #

root :: Integer -> T a -> T a Source #

(^/) :: T a -> Rational -> T a Source #

(C a, C v, Show v, C a v) => C (T a v) Source # 

Methods

sqrt :: T a v -> T a v Source #

root :: Integer -> T a v -> T a v Source #

(^/) :: T a v -> Rational -> T a v Source #

(Ord i, C a) => C (T i a) Source # 

Methods

sqrt :: T i a -> T i a Source #

root :: Integer -> T i a -> T i a Source #

(^/) :: T i a -> Rational -> T i a Source #

C v => C (T a v) Source # 

Methods

sqrt :: T a v -> T a v Source #

root :: Integer -> T a v -> T a v Source #

(^/) :: T a v -> Rational -> T a v Source #

genericRoot :: (C a, C b) => b -> a -> a Source #

power :: (C a, C b) => b -> a -> a Source #

Properties

propSqrSqrt :: (Eq a, C a) => a -> Bool Source #

propPowerCascade :: (Eq a, C a) => a -> Rational -> Rational -> Bool Source #

propPowerProduct :: (Eq a, C a) => a -> Rational -> Rational -> Bool Source #

propPowerDistributive :: (Eq a, C a) => Rational -> a -> a -> Bool Source #