Safe Haskell | Safe-Infered |
---|
- module NLP.GenI.Polarity.Types
- type PolAut = NFA PolState PolTrans
- data PolState = PolSt Int [Literal GeniVal] [(Int, Int)]
- type AutDebug = (PolarityKey, PolAut, PolAut)
- data PolResult = PolResult {}
- buildAutomaton :: Set PolarityAttr -> FeatStruct GeniVal -> PolMap -> SemInput -> [TagElem] -> PolResult
- makePolAut :: [TagElem] -> Sem -> PolMap -> [PolarityKey] -> PolResult
- fixPronouns :: (Sem, [TagElem]) -> (Sem, [TagElem])
- detectSansIdx :: [TagElem] -> [TagElem]
- suggestPolFeatures :: [TagElem] -> [Text]
- detectPols :: Set PolarityAttr -> TagElem -> TagElem
- detectPolPaths :: [[TagElem]] -> [(TagElem, BitVector)]
- declareIdxConstraints :: Flist GeniVal -> PolMap
- detectIdxConstraints :: Flist GeniVal -> Flist GeniVal -> PolMap
- prettyPolPaths :: BitVector -> Text
- prettyPolPaths' :: BitVector -> Int -> [Int]
- automatonPaths :: (Ord st, Ord ab) => NFA st ab -> [[ab]]
- finalSt :: NFA st ab -> [st]
- data NFA st ab
Documentation
module NLP.GenI.Polarity.Types
Entry point
data PolState
type AutDebug = (PolarityKey, PolAut, PolAut)
data PolResult
intermediate auts, seed aut, final aut, potentially modified sem
:: Set PolarityAttr | polarities to detect (eg. cat) |
-> FeatStruct GeniVal | root features to compensate for |
-> PolMap | explicit extra polarities |
-> SemInput | input semantics |
-> [TagElem] | lexical selection |
-> PolResult |
Constructs a polarity automaton. For debugging purposes, it returns all the intermediate automata produced by the construction algorithm.
Inner stuff (exported for debugging?)
makePolAut :: [TagElem] -> Sem -> PolMap -> [PolarityKey] -> PolResult
fixPronouns :: (Sem, [TagElem]) -> (Sem, [TagElem])
Returns a modified input semantics and lexical selection in which pronouns are properly accounted for.
detectSansIdx :: [TagElem] -> [TagElem]
suggestPolFeatures :: [TagElem] -> [Text]
detectPols :: Set PolarityAttr -> TagElem -> TagElem
detectPolPaths :: [[TagElem]] -> [(TagElem, BitVector)]
Given a list of paths (i.e. a list of list of trees) return a list of trees such that each tree is annotated with the paths it belongs to.
prettyPolPaths :: BitVector -> Text
Render the list of polarity automaton paths as a string
prettyPolPaths' :: BitVector -> Int -> [Int]
automatonPaths :: (Ord st, Ord ab) => NFA st ab -> [[ab]]
Returns all possible paths through an automaton from the start state to any dead-end.
Each path is represented as a list of labels.
We assume that the automaton does not have any loops in it.
data NFA st ab
Note: you can define the final state either by setting isFinalSt
to Just f
where f
is some function or by putting them in
finalStList