- class C a => C a where
- genericRoot :: (C a, C b) => b -> a -> a
- power :: (C a, C b) => b -> a -> a
- propSqrSqrt :: (Eq a, C a) => a -> Bool
- propPowerCascade :: (Eq a, C a) => a -> Rational -> Rational -> Bool
- propPowerProduct :: (Eq a, C a) => a -> Rational -> Rational -> Bool
- propPowerDistributive :: (Eq a, C a) => Rational -> a -> a -> Bool

# Documentation

Minimal implementation: `root`

or '(^/)'.

genericRoot :: (C a, C b) => b -> a -> aSource

# Properties

propSqrSqrt :: (Eq a, C a) => a -> BoolSource