Kulitta-2.2.1: Library for automated composition and musical learning

Kulitta.Learning.InsideOutside

type RuleIndex = Int Source #

type TStr a = [a] Source #

type TCell a = [TRuleInst a] Source #

type TParse a = [[TCell a]] Source #

data TRuleInst a Source #

Constructors

Defined in Kulitta.Learning.InsideOutside

Methods

(==) :: TRuleInst a -> TRuleInst a -> Bool #

(/=) :: TRuleInst a -> TRuleInst a -> Bool #

showsPrec :: Int -> TRuleInst a -> ShowS #

show :: TRuleInst a -> String #

showList :: [TRuleInst a] -> ShowS #

rule :: TRuleInst a -> RuleIndex Source #

lhs :: TRuleInst a -> a Source #

rhs :: TRuleInst a -> TStr a Source #

data TOracle a Source #

phis :: TOracle a -> [Double] Source #

startSym :: TOracle a -> a Source #

ruleGroups :: TOracle a -> [[RuleIndex]] Source #

findByRHS :: TOracle a -> [a] -> [TRuleInst a] Source #

makeAlphas :: Eq a => TOracle a -> TStr a -> [Alpha a] Source #

makeBetas :: Eq a => TOracle a -> [Alpha a] -> TStr a -> [Beta a] Source #

learnProbs :: (Eq a, Show a) => TOracle a -> [TStr a] -> Int -> Double -> Double -> IO [[Double]] Source #

qNew :: Eq a => TOracle a -> [(TStr a, [Alpha a], [Beta a])] -> RuleIndex -> Double Source #

uniQs :: [[RuleIndex]] -> [Double] Source #

randQs :: [[RuleIndex]] -> StdGen -> [Double] Source #

printTable :: Show a => TParse a -> IO () Source #