combinat-0.2.8.2: Generate and manipulate various combinatorial objects.

Safe HaskellSafe
LanguageHaskell2010

Math.Combinat.Classes

Contents

Description

Type classes for some common properties shared by different objects

Synopsis

Documentation

class CanBeEmpty a where Source #

Emptyness

Minimal complete definition

isEmpty, empty

Methods

isEmpty :: a -> Bool Source #

empty :: a Source #

Partitions

class HasWidth a where Source #

Minimal complete definition

width

Methods

width :: a -> Int Source #

class HasHeight a where Source #

Minimal complete definition

height

Methods

height :: a -> Int Source #

class HasWeight a where Source #

Weight (of partitions, tableaux, etc)

Minimal complete definition

weight

Methods

weight :: a -> Int Source #

class HasDuality a where Source #

Duality (of partitions, tableaux, etc)

Minimal complete definition

dual

Methods

dual :: a -> a Source #

Tableau

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

Shape (of tableaux, skew tableaux)

Minimal complete definition

shape

Methods

shape :: a -> s Source #

Trees

class HasNumberOfNodes t where Source #

Number of nodes (of trees)

Minimal complete definition

numberOfNodes

Methods

numberOfNodes :: t -> Int Source #

class HasNumberOfLeaves t where Source #

Number of leaves (of trees)

Minimal complete definition

numberOfLeaves

Methods

numberOfLeaves :: t -> Int Source #

Permutations

class HasNumberOfCycles p where Source #

Number of cycles (of partitions)

Minimal complete definition

numberOfCycles

Methods

numberOfCycles :: p -> Int Source #