Safe Haskell | None |
---|
- type NCtor = Int
- type NRec = Int
- type NP1 = Int
- type NP0 = Int
- type Minima2 = MMap (NP1, NP0) Min NCtor
- type Minima1 = MMap NP0 Min NCtor
- type Minimum = MMap () Min NCtor
- type DTsCVec t = CVec (SiblingDTs t)
- type SumInfo t = MMap (DTsCVec t NRec, NP1, NP0) Min NCtor
- data SC_SumInfo t
- type SiblingInT ts = MMap (CVec ts NRec, NP1, NP0) Min NCtor
- class ts ~ SiblingDTs t => SiblingInC ts t
- addMinima2 :: Minima2 -> Minima2 -> Minima2
- addSiblingInTs :: Ord (CVec ts NRec) => SiblingInT ts -> SiblingInT ts -> SiblingInT ts
- solve_sibling_set :: (Eq (CVec ts Minima2), VRepeat ts, VFunctor (SiblingInC ts) ts, VEnum ts) => Vec ts SC_SumInfo -> Work ts
- solve_sibling_set' :: (Eq (CVec ts Minima2), VRepeat ts, VEnum ts) => CVec ts (SiblingInT ts) -> Work ts
- plug10 :: Ord (CVec ts NRec) => Minima2 -> SiblingInT ts -> SiblingInT ts -> SiblingInT ts
- plug0 :: Ord (CVec ts NRec) => Minima1 -> SiblingInT ts -> SiblingInT ts
- plug10' :: Minima2 -> Minima2 -> Minima2 -> Minima2
- plug0' :: Minima1 -> Minima2 -> Minima2
Documentation
type DTsCVec t = CVec (SiblingDTs t)Source
data SC_SumInfo t Source
class ts ~ SiblingDTs t => SiblingInC ts t Source
~ [k] ts (SiblingDTs k t) => SiblingInC k ts t |
addMinima2 :: Minima2 -> Minima2 -> Minima2Source
addSiblingInTs :: Ord (CVec ts NRec) => SiblingInT ts -> SiblingInT ts -> SiblingInT tsSource
solve_sibling_set :: (Eq (CVec ts Minima2), VRepeat ts, VFunctor (SiblingInC ts) ts, VEnum ts) => Vec ts SC_SumInfo -> Work tsSource
solve_sibling_set' :: (Eq (CVec ts Minima2), VRepeat ts, VEnum ts) => CVec ts (SiblingInT ts) -> Work tsSource
plug10 :: Ord (CVec ts NRec) => Minima2 -> SiblingInT ts -> SiblingInT ts -> SiblingInT tsSource
plug0 :: Ord (CVec ts NRec) => Minima1 -> SiblingInT ts -> SiblingInT tsSource