-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Fast algorithm for mining closed frequent itemsets -- -- Closed frequent itemsets are patterns that occur more than a defined -- threshold in a transactional database. This program is a Haskell -- implementation of the LCM2 algorithm by Takeaki Uno and Hiroki -- Arimura, which is the fastest algorithm for this task. This -- implementation can make use of several threads. @package hlcm @version 0.2.2 -- | Library for using the LCM algorithm in order to compute closed -- frequent pattern. Input must be a transaction database, either in text -- format (as a ByteString) or in [[Item]] format, where -- Item = Int. -- -- Several bencharking functions allowing to tune parallel strategy used -- and depth cutoff are also provided. module HLCM type Frequency = Int type Item = Int -- | Get the data as a long bytestring, parses it and and executes LCM to -- discover closed frequent itemsets. runLCMstring :: ByteString -> Frequency -> [[Item]] -- | Get the data as a matrix of Items, parses it and and executes LCM to -- discover closed frequent itemsets. runLCMmatrix :: [[Item]] -> Frequency -> [[Item]] -- | Use for benchmarking, parallel strategy = parBuffer by Simon Marlow. -- This strategy does not have space leak. -- -- /Warning: outputs are unusable as is, because items are renamed -- internally, and in this function the reverse renaming is not -- performed. It is trivial to have it back by copying the code from -- runLCMstring./ benchLCM_parBuffer :: ByteString -> Frequency -> Int -> Int -> [[Item]] -- | Use for benchmarking, parallel strategy = parMap from -- Control.Parallel.Strategies. -- -- /Warning: outputs are unusable as is, because items are renamed -- internally, and in this function the reverse renaming is not -- performed. It is trivial to have it back by copying the code from -- runLCMstring./ benchLCM_parMap :: ByteString -> Frequency -> Int -> [[Item]] instance Eq LexicoTreeItem instance Show LexicoTreeItem