combinat-0.2.10.1: Generate and manipulate various combinatorial objects.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Math.Combinat.Classes

Description

Type classes for some common properties shared by different objects

Synopsis

Documentation

class CanBeEmpty a where Source #

Emptyness

Methods

isEmpty :: a -> Bool Source #

empty :: a Source #

Instances

Instances details
CanBeEmpty Partition Source # 
Instance details

Defined in Math.Combinat.Partitions.Integer.Naive

CanBeEmpty PlanePart Source # 
Instance details

Defined in Math.Combinat.Partitions.Plane

CanBeEmpty (Tableau a) Source # 
Instance details

Defined in Math.Combinat.Tableaux

Partitions

class HasWidth a where Source #

Methods

width :: a -> Int Source #

Instances

Instances details
HasWidth TDiag Source # 
Instance details

Defined in Math.Combinat.Groups.Thompson.F

Methods

width :: TDiag -> Int Source #

HasWidth LatticePath Source # 
Instance details

Defined in Math.Combinat.LatticePaths

HasWidth Partition Source # 
Instance details

Defined in Math.Combinat.Partitions.Integer.Naive

Methods

width :: Partition -> Int Source #

HasWidth Permutation Source # 
Instance details

Defined in Math.Combinat.Permutations

HasWidth (Tree a) Source # 
Instance details

Defined in Math.Combinat.Groups.Thompson.F

Methods

width :: Tree a -> Int Source #

class HasHeight a where Source #

Methods

height :: a -> Int Source #

Instances

Instances details
HasHeight LatticePath Source # 
Instance details

Defined in Math.Combinat.LatticePaths

HasHeight Partition Source # 
Instance details

Defined in Math.Combinat.Partitions.Integer.Naive

Methods

height :: Partition -> Int Source #

class HasWeight a where Source #

Weight (of partitions, tableaux, etc)

Methods

weight :: a -> Int Source #

Instances

Instances details
HasWeight Partition Source # 
Instance details

Defined in Math.Combinat.Partitions.Integer.Naive

Methods

weight :: Partition -> Int Source #

HasWeight PlanePart Source # 
Instance details

Defined in Math.Combinat.Partitions.Plane

Methods

weight :: PlanePart -> Int Source #

HasWeight SkewPartition Source # 
Instance details

Defined in Math.Combinat.Partitions.Skew

HasWeight (Tableau a) Source # 
Instance details

Defined in Math.Combinat.Tableaux

Methods

weight :: Tableau a -> Int Source #

HasWeight (SkewTableau a) Source # 
Instance details

Defined in Math.Combinat.Tableaux.Skew

Methods

weight :: SkewTableau a -> Int Source #

class HasDuality a where Source #

Duality (of partitions, tableaux, etc)

Methods

dual :: a -> a Source #

Instances

Instances details
HasDuality Partition Source # 
Instance details

Defined in Math.Combinat.Partitions.Integer.Naive

HasDuality SkewPartition Source # 
Instance details

Defined in Math.Combinat.Partitions.Skew

HasDuality (Tableau a) Source # 
Instance details

Defined in Math.Combinat.Tableaux

Methods

dual :: Tableau a -> Tableau a Source #

HasDuality (SkewTableau a) Source # 
Instance details

Defined in Math.Combinat.Tableaux.Skew

Tableau

class HasShape a s | a -> s where Source #

Shape (of tableaux, skew tableaux)

Methods

shape :: a -> s Source #

Instances

Instances details
HasShape (Tableau a) Partition Source # 
Instance details

Defined in Math.Combinat.Tableaux

Methods

shape :: Tableau a -> Partition Source #

HasShape (SkewTableau a) SkewPartition Source # 
Instance details

Defined in Math.Combinat.Tableaux.Skew

Trees

class HasNumberOfNodes t where Source #

Number of nodes (of trees)

Methods

numberOfNodes :: t -> Int Source #

Instances

Instances details
HasNumberOfNodes (BinTree a) Source # 
Instance details

Defined in Math.Combinat.Trees.Binary

HasNumberOfNodes (Tree a) Source # 
Instance details

Defined in Math.Combinat.Trees.Nary

Methods

numberOfNodes :: Tree a -> Int Source #

HasNumberOfNodes (BinTree' a b) Source # 
Instance details

Defined in Math.Combinat.Trees.Binary

Methods

numberOfNodes :: BinTree' a b -> Int Source #

class HasNumberOfLeaves t where Source #

Number of leaves (of trees)

Methods

numberOfLeaves :: t -> Int Source #

Instances

Instances details
HasNumberOfLeaves (Tree a) Source # 
Instance details

Defined in Math.Combinat.Groups.Thompson.F

Methods

numberOfLeaves :: Tree a -> Int Source #

HasNumberOfLeaves (BinTree a) Source # 
Instance details

Defined in Math.Combinat.Trees.Binary

HasNumberOfLeaves (Tree a) Source # 
Instance details

Defined in Math.Combinat.Trees.Nary

Methods

numberOfLeaves :: Tree a -> Int Source #

HasNumberOfLeaves (BinTree' a b) Source # 
Instance details

Defined in Math.Combinat.Trees.Binary

Permutations

class HasNumberOfCycles p where Source #

Number of cycles (of partitions)

Methods

numberOfCycles :: p -> Int Source #