monoidmap-0.0.1.3: Monoidal map type
Copyright© 2022–2024 Jonathan Knowles
LicenseApache-2.0
Safe HaskellSafe-Inferred
LanguageHaskell2010

Examples.MultiSet

Description

A multiset type, implemented in terms of MonoidMap.

See: https://en.wikipedia.org/wiki/Multiset

Documentation

fromList :: Ord a => [(a, Natural)] -> MultiSet a Source #

toList :: MultiSet a -> [(a, Natural)] Source #

null :: MultiSet a -> Bool Source #

member :: Ord a => a -> MultiSet a -> Bool Source #

multiplicity :: Ord a => a -> MultiSet a -> Natural Source #

root :: Ord a => MultiSet a -> Set a Source #

cardinality :: MultiSet a -> Natural Source #

dimension :: MultiSet a -> Natural Source #

height :: Ord a => MultiSet a -> Natural Source #

isSubsetOf :: Ord a => MultiSet a -> MultiSet a -> Bool Source #

intersection :: Ord a => MultiSet a -> MultiSet a -> MultiSet a Source #

union :: Ord a => MultiSet a -> MultiSet a -> MultiSet a Source #

disjointUnion :: Ord a => MultiSet a -> MultiSet a -> MultiSet a Source #

add :: Ord a => MultiSet a -> MultiSet a -> MultiSet a Source #

subtract :: Ord a => MultiSet a -> MultiSet a -> MultiSet a Source #

subtractMaybe :: Ord a => MultiSet a -> MultiSet a -> Maybe (MultiSet a) Source #