| Copyright | (c) 2020 Emily Pillmore |
|---|---|
| License | BSD-style |
| Maintainer | Emily Pillmore <emilypi@cohomolo.gy>, Reed Mullanix <reedmullanix@gmail.com> |
| Safe Haskell | Safe |
| Language | Haskell2010 |
Data.Group.Finite
Description
Synopsis
- class (Group g, Bounded g) => FiniteGroup g
- safeOrder :: (Eq g, FiniteGroup g) => g -> Order
- class FiniteGroup g => FiniteAbelianGroup g
Finite groups
class (Group g, Bounded g) => FiniteGroup g Source #
A FiniteGroup is a Group whose underlying set is finite.
This is equivalently a group object in \( FinSet \).
Finite groups often arise when considering symmetry of mathematical or physical objects, when those objects admit just a finite number of structure-preserving transformations. Important examples of finite groups include cyclic groups and permutation groups.
Instances
Finite group combinators
safeOrder :: (Eq g, FiniteGroup g) => g -> Order Source #
A safe version of order for FiniteGroups.
This is gauranteed to terminate with either Infinite or Finite.
Examples:
>>>order @(Sum Word8) 3Finite 255
>>>order (Any False)Finite 1
>>>order (All False)Infinite
Finite abelian groups
class FiniteGroup g => FiniteAbelianGroup g Source #
Commutative FiniteGroups