Agda-2.6.3.20230805: A dependently typed functional programming language and proof assistant
Safe HaskellSafe-Inferred
LanguageHaskell2010

Agda.Utils.Cluster

Description

Create clusters of non-overlapping things.

Synopsis

Documentation

cluster :: Ord c => (a -> NonEmpty c) -> [a] -> [NonEmpty a] Source #

Given a function f :: a -> NonEmpty c which returns a non-empty list of characteristics of a, partition a list of as into groups such that each element in a group shares at least one characteristic with at least one other element of the group.

cluster' :: Ord c => [(a, NonEmpty c)] -> [NonEmpty a] Source #

Partition a list of as paired with a non-empty list of characteristics into groups such that each element in a group shares at least one characteristic with at least one other element of the group.