semiring-num-0.5.1.1: Basic semiring class and instances

LicenseMIT
Maintainermail@doisinkidney.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Test.Semiring

Description

 

Synopsis

Documentation

plusAssoc :: (Eq a, Semiring a, Show a) => a -> a -> a -> Either String String Source #

Plus is associative.

mulAssoc :: (Eq a, Semiring a, Show a) => a -> a -> a -> Either String String Source #

Multiplication is associative.

plusComm :: (Eq a, Semiring a, Show a) => a -> a -> Either String String Source #

Plus is commutative.

mulDistribL :: (Eq a, Semiring a, Show a) => a -> a -> a -> Either String String Source #

Multiplication distributes left.

mulDistribR :: (Eq a, Semiring a, Show a) => a -> a -> a -> Either String String Source #

Multiplication distributes right.

plusId :: (Eq a, Semiring a, Show a) => a -> Either String String Source #

Additive identity.

mulId :: (Eq a, Semiring a, Show a) => a -> Either String String Source #

Multiplicative identity.

annihilate :: (Eq a, Semiring a, Show a) => a -> Either String String Source #

Annihilation of <.> by zero.

binaryLaws :: (Eq a, Semiring a, Show a) => a -> a -> Either String String Source #

ternaryLaws :: (Eq a, Semiring a, Show a) => a -> a -> a -> Either String String Source #