Combinatorics Haskell library (fork of bkomuves's combinat)


combinat - a Haskell combinatorics library

This is a combinatorics library for Haskell. It contains functions enumerating, counting, visualizing, manipulating, and sometimes randomly sampling from many standard combinatorial objects, including:

  • subsets
  • compositions
  • trees
  • numbers:
    • natural numbers
    • prime numbers
    • formal power series
  • permutations
  • partitions:
    • integer partitions
    • set partitions, multiset partitions, non-crossing partitions
    • plane partitions
    • vector partitions
    • skew partitions, ribbons
  • Young tableaux, Littlewood-Richardson coefficients
  • lattice paths, Dyck paths
  • groups:
    • permutation groups
    • braid groups
    • free groups, free products of cyclic groups
    • Thompson's group F