Îõ³h% tÍ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKL¬Homogeneous sets are sets which can contain only one type of values. They are more flexible than Data.Set because they do not require the objects contained to be orderable.Guillaume Sabbagh 2022LGPL-3.0-or-laterguillaumesabbagh@protonmail.com experimentalportable Safe-Inferred WeakSets&A homogeneous set is a list of values.ðThe only differences are that we don't want duplicate elements and we don't need the order of the list elements. To force these constraints, the î constructor is abstract and is not exported. The only way to construct a set is to use the smart constructor ' which ensures the previous conditions.WeakSetsO(1)É. The smart constructor of sets. This is the only way of instantiating a .ÎIf several elements are equal, they are kept until the user wants a list back.WeakSetsO(n^2)#. Return a boolean indicating if a  is included in another one.WeakSetsO(n). Transform a ì back into a list, the list returned does not have duplicate elements, the order of the original list holds.WeakSetsO(n). Size of a set.WeakSetsO(n)'. Return wether an element is in a set.WeakSetsO(n*m)&. Return the intersection of two sets.WeakSetsO(n). Return the union of two sets.WeakSetsO(n*m)+. Return the cartesian product of two sets. WeakSetsO(n)(. Return the disjoint union of two sets. WeakSets;Returns the cartesian product of a set with itself n times. WeakSetsO(n*m)$. Return the difference of two sets. WeakSets-Return the set of all subsets of a given set. WeakSetsO(n)(. Filter a set according to a condition.WeakSetsO(1). Set version of listToMaybe.WeakSetsO(1). Set version of maybeToList.WeakSetsO(n). Set version of catMaybes.WeakSetsO(n). Set version of mapMaybe.WeakSetsO(n)À. Remove duplicates in the set using your own equality function.  ,Homogeneous functions are functions between HomogeneousSetÝs. They are more flexible than Data.Map because they do not require the keys to be orderable.Guillaume Sabbagh 2022LGPL-3.0-or-laterguillaumesabbagh@protonmail.com experimentalportable Safe-InferredHWeakSets3An association list is a list of pairs (key,value).WeakSetsúA function of homogeneous sets. It is a set of pairs (key,value) such that their should only be one pair with a given key.1It is an abstract type, the smart constructor is .WeakSetsO(1)Î. The smart constructor of functions. This is the only way of instantiating a .ÝTakes an association list and returns a function which maps to each key the value associated.áIf several pairs have the same keys, they are kept until the user wants an association list back.WeakSetsO(n)". Return the domain of a function.WeakSetsO(n)ü. Return the image of a function. The image of a function is the set of values which are reachable by applying the function. WeakSetsO(n)/. Return the identity function associated to a .!WeakSetsìCompose two functions. If the two functions are not composable, strips the functions until they can compose."WeakSetsO(n)(. The number of entries in the function.#WeakSetsO(n)7. Return wether a key is in the function domain or not.$WeakSetsO(n). Negation of member.%WeakSetsO(n)ß. Apply a function to a given value. If the function is not defined on the given value returns M, otherwise returns N the image.This function is like OÊ in Data.Map for function (the order of the argument are reversed though).&WeakSetsO(n). Unsafe version of %.This function is like (!) in Data.Map for function.'WeakSetsO(n)÷. Apply a function to a given value, if the value is in the domain returns the image, otherwise return a default value.This function is like 'Ê in Data.Map for function (the order of the argument are reversed though).(WeakSetsÅO(1). Insert a new key and value in the function. If the key is already present in the function, the associated value is replaced with the supplied value. insert is equivalent to insertWith const. )WeakSetsƒO(n). Insert with a function, combining new value and old value. insertWith f key value mp will insert the pair (key, value) into mp if key does not exist in the function. If the key does exist, the function will insert the pair (key, f new_value old_value). *WeakSetsÕO(n). Insert with a function, combining key, new value and old value. insertWithKey f key value mp will insert the pair (key, value) into mp if key does not exist in the function. If the key does exist, the function will insert the pair (key,f key new_value old_value). Note that the key passed to f is the same key passed to insertWithKey. +WeakSetsO(n)Á. Transform a function back into its underlying association list.,WeakSetsO(n). Alias of domain.-WeakSetsO(n). Alias of image..WeakSetsO(n)7. Memorize a Haskell function on a given finite domain./WeakSets…O(n). Delete a key and its value from the function. When the key is not a member of the function, the original function is returned. 0WeakSets¢O(n). Update a value at a specific key with the result of the provided function. When the key is not a member of the function, the original function is returned. 1WeakSetsùO(n). Adjust a value at a specific key. When the key is not a member of the function, the original function is returned. 2WeakSetsO(n). The expression (2ø f k function) alters the value x at k, or absence thereof. alter can be used to insert, delete, or update a value in a  . In short : O k (2 f k m) = f (O k m). 3WeakSetsO(n)-. Map a function over the keys of a function.4WeakSetsO(n). The expression (4å t1 t2) takes the left-biased union of t1 and t2. It prefers t1 when duplicate keys are encountered.  !"#$%&'()*+,-./01234 !"#$%&'()*/01243,-+.ñPure sets are nested sets which only contain other sets all the way down. They allow to explore basic set theory.Guillaume Sabbagh 2022GPL-3guillaumesabbagh@protonmail.com experimentalportable Safe-InferredP;WeakSetsA ; is a  of other pure sets.=WeakSets Construct a ; from a list of pure sets.>WeakSetsConstruct the empty set.?WeakSets/Construct the singleton containing a given set.@WeakSetsØConstruct an ordered pair from two sets according to Kuratowski's definition of a tuple.AWeakSets,Construct the cartesian product of two sets.BWeakSetsUnion of two pure sets.CWeakSetsIntersection of two pure sets.DWeakSets4Transform a number into its Von Neumann constructionEWeakSets+Return wether a pure set is in another one.FWeakSets4Return wether a pure set is included in another one.GWeakSetsReturn the size of a pure set.HWeakSets)Return the set of subsets of a given set.IWeakSets>Prettiffy a pure set according to usual mathematical notation.JWeakSets•Format pure sets such that if numbers are recognized, they are transformed into integer and if pairs are recognized, they are transformed into pairs.;<=>?@ABCDEFGHIJ;<=>?@ADBCEFGHIJÐ      !"#$%&'()*+,-./0123456789:;<=>??@ABCDEFGHIJKLMNOPQRPQSPTUÖ&WeakSets-0.4.0.0-IiuOWBZ4vajbzLJtqwInZData.WeakSets.HomogeneousSet!Data.WeakSets.HomogeneousFunctionMath.WeakSets.PureSetSetset isIncludedIn setToListcardinalisIn|&|||||*||+||^||-|powerSet filterSet setToMaybe maybeToSetcatMaybesToSet mapMaybeToSetnubSetBy $fMonadSet$fApplicativeSet $fFunctorSet $fFoldableSet $fMonoidSet$fSemigroupSet$fEqSet $fShowSetAssociationListFunctionfunctiondomainimage idFromSet|.|sizemember notMember|?||!|findWithDefaultinsert insertWith insertWithKey functionToSetkeyselemsmemorizeFunctiondeleteadjust adjustWithKeyaltermapKeysunion$fFunctorFunction$fFoldableFunction$fMonoidFunction$fSemigroupFunction$fShowFunction $fEqFunctionPureSetpureSetemptySet singletonpaircartesianProduct||||&&&& numberToSetisInP isIncludedInPcard powerSetPprettify formatPureSet $fShowPureSet $fEqPureSetbase GHC.MaybeNothingJustGHC.Listlookup