Algebra.Classes

type Natural

data Sum a

data Product a

data Exponential a

class Additive a

add

class DecidableZero r

class AbelianAdditive a

class Group a

class Module scalar a

class Multiplicative a

multiply

type SemiRing a

class Ring a

class Division a

class Field a

type VectorSpace scalar a

class EuclideanDomain a

class Integral a

data Ratio a

type MyRational

gcd

ifThenElse

data InitialAdditive