HLearn-algebra-0.1.2.0: Algebraic foundation for homomorphic learning

Safe HaskellNone

HLearn.Algebra.Structures.Groups

Contents

Description

These algebraic structures have sacrificed generality in favor of being easily used with the standard Haskell Prelude. The fact that monoids are not guaranteed to be semigroups makes this difficult.

Synopsis

Type classes

class Semigroup g => RegularSemigroup g whereSource

Semigroups that also have an inverse. See https://en.wikipedia.org/wiki/Regular_semigroup

Methods

inverse :: g -> gSource

class (RegularSemigroup g, Monoid g) => Group g Source

Regular semigroups that also have an identity; alternatively, monoids where every element has a unique inverse. See https://en.wikipedia.org/wiki/Group_(mathematics)

Instances

class Semigroup sg => Abelian sg Source

Instances

(Num r, Ord a) => Abelian (FreeMod r a)