Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data SigGlobal m s r t_n_0_ t_n_1_ = SigGlobal {
- gAlign :: ((:.) ((:.) Z t_n_0_) t_n_1_ -> s -> s)
- gDelin :: ((:.) ((:.) Z t_n_0_) () -> s -> s)
- gDone :: (s -> s)
- gFgap :: (s -> s -> s)
- gFinalDone :: ((:.) ((:.) Z ()) () -> s)
- gIndel :: ((:.) ((:.) Z ()) t_n_1_ -> s -> s)
- gIter :: (s -> s -> s)
- gPgap :: (s -> s -> s)
- gSgap :: (s -> s -> s)
- gSiter :: (s -> s -> s)
- gH :: (Stream m s -> m r)
- data SigLabolg m s r t_n_0_ t_n_1_ = SigLabolg {
- lAlign :: ((:.) ((:.) Z t_n_0_) t_n_1_ -> s -> s)
- lDelin :: ((:.) ((:.) Z t_n_0_) () -> s -> s)
- lDone :: (s -> s)
- lFgap :: (s -> s -> s)
- lFinalDone :: ((:.) ((:.) Z ()) () -> s)
- lIndel :: ((:.) ((:.) Z ()) t_n_1_ -> s -> s)
- lIter :: (s -> s -> s)
- lPgap :: (s -> s -> s)
- lSgap :: (s -> s -> s)
- lSiter :: (s -> s -> s)
- lH :: (Stream m s -> m r)
- gLabolg :: ((~#) * * (Fun (Arg (Stack (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10), (~#) * * (Fun (Arg (Stack (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10), (~#) * * (Fun (Arg (Stack (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) -> t10)) ((:.) ((:.) Z ()) t7 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) () -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) t7 -> t10 -> t10), Apply (Arg (Stack (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg (Stack (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg (Stack (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) -> t10), Apply (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) -> t10), Apply (Arg ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) -> t10), Apply (Arg ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) -> t10), Apply (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) -> t10), Apply (Arg ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) -> t10), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) i3, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) i3, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) i, Element ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i6, Element ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i5, Element ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) i4, Element ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i6, Element ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i5, Element ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i4, Element ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i6, Element ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i5, Element ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) i4, Element ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) i2, Element ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) i2, Element ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) i, Element ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) i, Element (Stack (TW t3 (i3 -> i3 -> t11 t9))) i1, Element (Stack (TW t4 (i2 -> i2 -> t11 t9))) i1, Element (Stack (TW t5 (i -> i -> t11 t9))) i1, MkStream t11 S i, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) i3, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) i3, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i6, MkStream t11 ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i5, MkStream t11 ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) i4, MkStream t11 ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i6, MkStream t11 ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i5, MkStream t11 ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i4, MkStream t11 ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i6, MkStream t11 ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i5, MkStream t11 ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) i4, MkStream t11 ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) i, MkStream t11 ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) i, MkStream t11 (Stack (TW t3 (i3 -> i3 -> t11 t9))) i1, MkStream t11 (Stack (TW t4 (i2 -> i2 -> t11 t9))) i1, MkStream t11 (Stack (TW t5 (i -> i -> t11 t9))) i1, RuleContext i1, RuleContext i6, RuleContext i5, RuleContext i3, RuleContext i4, RuleContext i2, RuleContext i, Build (TW t4 (i2 -> i2 -> t11 t9)), Build (TW t3 (i3 -> i3 -> t11 t9)), Build (TW t5 (i -> i -> t11 t9)), Build a, Build a1, Build a2, TermStream t11 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i) i, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i) => SigLabolg t11 t10 t9 t8 t7 -> t6 -> t5 -> t4 -> t3 -> t2 -> t1 -> t -> b4 -> b3 -> b2 -> a2 -> a1 -> a -> b1 -> b -> (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (TW t6 (i1 -> i1 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) (TW t2 (i4 -> i4 -> t11 t9))) (TW t1 (i5 -> i5 -> t11 t9))) (TW t (i6 -> i6 -> t11 t9))
- gGlobal :: ((~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) ((:.) ((:.) Z ()) t7 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) () -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) t7 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg (Stack (TW t6 (i1 -> i1 -> t11 t9))) -> t10)) (t10 -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg (Stack (TW t6 (i1 -> i1 -> t11 t9))) -> t10), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) i6, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) i5, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) i4, Element ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i2, Element ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i, Element ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, Element ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, Element ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element (Stack (TW t6 (i1 -> i1 -> t11 t9))) i2, Element (Stack (TW t6 (i1 -> i1 -> t11 t9))) i, Element (Stack (TW t6 (i1 -> i1 -> t11 t9))) i3, MkStream t11 S i1, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) i6, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) i5, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) i4, MkStream t11 ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i2, MkStream t11 ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 (Stack (TW t6 (i1 -> i1 -> t11 t9))) i2, MkStream t11 (Stack (TW t6 (i1 -> i1 -> t11 t9))) i, MkStream t11 (Stack (TW t6 (i1 -> i1 -> t11 t9))) i3, RuleContext i6, RuleContext i5, RuleContext i2, RuleContext i, RuleContext i4, RuleContext i3, RuleContext i1, Build (TW t (i6 -> i6 -> t11 t9)), Build (TW t1 (i5 -> i5 -> t11 t9)), Build (TW t2 (i4 -> i4 -> t11 t9)), Build (TW t6 (i1 -> i1 -> t11 t9)), TermStream t11 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1) => SigGlobal t11 t10 t9 t8 t7 -> t6 -> t5 -> t4 -> t3 -> t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (TW t6 (i1 -> i1 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) (TW t2 (i4 -> i4 -> t11 t9))) (TW t1 (i5 -> i5 -> t11 t9))) (TW t (i6 -> i6 -> t11 t9))
- resig :: Monad m => SigGlobal m a b c d -> SigLabolg m a b c d
- score :: Monad m => Int -> Int -> Int -> Int -> SigGlobal m Int Int Info Info
- part :: Monad m => Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> SigGlobal m (Log Double) (Log Double) Info Info
- type Pretty' = [[Tree (Info, Info)]]
- pretty' :: Monad m => SigGlobal m [Tree (Info, Info)] [[Tree (Info, Info)]] Info Info
- type Trix = TreeIxR Pre Vector Info I
- type Tbl x = TwITbl Id Unboxed ((Z :. EmptyOk) :. EmptyOk) ((Z :. Trix) :. Trix) x
- type Frst = Forest Pre Vector Info
- type TblBt x = TwITblBt Unboxed ((Z :. EmptyOk) :. EmptyOk) ((Z :. Trix) :. Trix) Int Id Id [x]
- type B = Tree (Info, Info)
- runForward :: Frst -> Frst -> Int -> Int -> Int -> Int -> ((((((Z :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int
- iTbl :: Int -> Int -> c -> arr i x -> ITbl arr c i x
- runInside :: Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> ((((((Z :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)
- type Trox = TreeIxR Pre Vector Info O
- type OTbl x = TwITbl Id Unboxed ((Z :. EmptyOk) :. EmptyOk) ((Z :. Trox) :. Trox) x
- runOutside :: Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> (((((((Z :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) -> ((((((Z :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)
- run :: Frst -> Frst -> Int -> Int -> Int -> Int -> (((((((Z :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int, Int, Pretty')
- runIO :: Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double)), (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double)), Log Double)
- test :: FilePath -> FilePath -> IO ()
- runAlignScoreTrees :: Frst -> Frst -> Int -> Int -> Int -> Int -> IO ()
- runAlignScoreTreesIO :: FillWeight -> RenderChoice -> FilePath -> Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> IO ()
- runAlignS :: PrintfType t => String -> String -> Int -> Int -> Int -> Int -> t
- runAlignIO :: FillWeight -> RenderChoice -> FilePath -> String -> String -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> IO ()
Documentation
data SigGlobal m s r t_n_0_ t_n_1_ Source #
SigGlobal | |
|
(Monad mL0, Monad mR0, Eq xL0, (~) (* -> *) mL0 mR0, (~) * xL0 rL0) => ProductBacktracking (SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) Source # | |
(Monad mL0, Monad mR0, Eq xL0, Ord xL0, Ord xR0, (~) (* -> *) mL0 mR0) => ProductCombining (SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) Source # | |
type SigBacktracking (SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) Source # | |
type SigCombining (SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) Source # | |
data SigLabolg m s r t_n_0_ t_n_1_ Source #
SigLabolg | |
|
gLabolg :: ((~#) * * (Fun (Arg (Stack (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10), (~#) * * (Fun (Arg (Stack (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10), (~#) * * (Fun (Arg (Stack (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) -> t10)) ((:.) ((:.) Z ()) t7 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) () -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) t7 -> t10 -> t10), Apply (Arg (Stack (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg (Stack (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg (Stack (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) -> t10), Apply (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) -> t10), Apply (Arg ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) -> t10), Apply (Arg ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) -> t10), Apply (Arg ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) -> t10), Apply (Arg ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) -> t10), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) i3, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) i3, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) i, Element ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i6, Element ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i5, Element ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) i4, Element ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i6, Element ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i5, Element ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i4, Element ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i6, Element ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i5, Element ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) i4, Element ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) i2, Element ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) i2, Element ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) i, Element ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) i, Element (Stack (TW t3 (i3 -> i3 -> t11 t9))) i1, Element (Stack (TW t4 (i2 -> i2 -> t11 t9))) i1, Element (Stack (TW t5 (i -> i -> t11 t9))) i1, MkStream t11 S i, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i6 -> i6 -> t11 t9))) i3, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t1 (i5 -> i5 -> t11 t9))) i3, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i4 -> i4 -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i6, MkStream t11 ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b3) i5, MkStream t11 ((:!:) (Stack (TW t4 (i2 -> i2 -> t11 t9))) b4) i4, MkStream t11 ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i6, MkStream t11 ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i5, MkStream t11 ((:!:) (Stack (TW t3 (i3 -> i3 -> t11 t9))) b2) i4, MkStream t11 ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i6, MkStream t11 ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b3) i5, MkStream t11 ((:!:) (Stack (TW t5 (i -> i -> t11 t9))) b4) i4, MkStream t11 ((:!:) (Stack a) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack a) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a) (TW t5 (i -> i -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a1) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack a1) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a1) (TW t5 (i -> i -> t11 t9))) i2, MkStream t11 ((:!:) (Stack a2) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack a2) (TW t4 (i2 -> i2 -> t11 t9))) i, MkStream t11 ((:!:) (Stack a2) (TW t5 (i -> i -> t11 t9))) i, MkStream t11 (Stack (TW t3 (i3 -> i3 -> t11 t9))) i1, MkStream t11 (Stack (TW t4 (i2 -> i2 -> t11 t9))) i1, MkStream t11 (Stack (TW t5 (i -> i -> t11 t9))) i1, RuleContext i1, RuleContext i6, RuleContext i5, RuleContext i3, RuleContext i4, RuleContext i2, RuleContext i, Build (TW t4 (i2 -> i2 -> t11 t9)), Build (TW t3 (i3 -> i3 -> t11 t9)), Build (TW t5 (i -> i -> t11 t9)), Build a, Build a1, Build a2, TermStream t11 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i) i, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i) => SigLabolg t11 t10 t9 t8 t7 -> t6 -> t5 -> t4 -> t3 -> t2 -> t1 -> t -> b4 -> b3 -> b2 -> a2 -> a1 -> a -> b1 -> b -> (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (TW t6 (i1 -> i1 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) (TW t2 (i4 -> i4 -> t11 t9))) (TW t1 (i5 -> i5 -> t11 t9))) (TW t (i6 -> i6 -> t11 t9)) Source #
gGlobal :: ((~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) ((:.) ((:.) Z ()) t7 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) () -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) -> t10)) ((:.) ((:.) Z t8) t7 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10)) (t10 -> t10 -> t10), (~#) * * (Fun (Arg (Stack (TW t6 (i1 -> i1 -> t11 t9))) -> t10)) (t10 -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) -> t10), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) -> t10), Apply (Arg (Stack (TW t6 (i1 -> i1 -> t11 t9))) -> t10), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) i6, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) i5, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) i4, Element ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i2, Element ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i, Element ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, Element ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, Element ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, Element ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, Element (Stack (TW t6 (i1 -> i1 -> t11 t9))) i2, Element (Stack (TW t6 (i1 -> i1 -> t11 t9))) i, Element (Stack (TW t6 (i1 -> i1 -> t11 t9))) i3, MkStream t11 S i1, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t3 (i3 -> i3 -> t11 t9))) i6, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t3 (i3 -> i3 -> t11 t9))) i5, MkStream t11 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t5 (i -> i -> t11 t9))) i4, MkStream t11 ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i2, MkStream t11 ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t2 (i4 -> i4 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t (i6 -> i6 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i2, MkStream t11 ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) i, MkStream t11 ((:!:) (Stack (TW t1 (i5 -> i5 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) i3, MkStream t11 (Stack (TW t6 (i1 -> i1 -> t11 t9))) i2, MkStream t11 (Stack (TW t6 (i1 -> i1 -> t11 t9))) i, MkStream t11 (Stack (TW t6 (i1 -> i1 -> t11 t9))) i3, RuleContext i6, RuleContext i5, RuleContext i2, RuleContext i, RuleContext i4, RuleContext i3, RuleContext i1, Build (TW t (i6 -> i6 -> t11 t9)), Build (TW t1 (i5 -> i5 -> t11 t9)), Build (TW t2 (i4 -> i4 -> t11 t9)), Build (TW t6 (i1 -> i1 -> t11 t9)), TermStream t11 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1) => SigGlobal t11 t10 t9 t8 t7 -> t6 -> t5 -> t4 -> t3 -> t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (TW t6 (i1 -> i1 -> t11 t9))) (TW t5 (i -> i -> t11 t9))) (TW t4 (i2 -> i2 -> t11 t9))) (TW t3 (i3 -> i3 -> t11 t9))) (TW t2 (i4 -> i4 -> t11 t9))) (TW t1 (i5 -> i5 -> t11 t9))) (TW t (i6 -> i6 -> t11 t9)) Source #
part :: Monad m => Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> SigGlobal m (Log Double) (Log Double) Info Info Source #
type TblBt x = TwITblBt Unboxed ((Z :. EmptyOk) :. EmptyOk) ((Z :. Trix) :. Trix) Int Id Id [x] Source #
runForward :: Frst -> Frst -> Int -> Int -> Int -> Int -> ((((((Z :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int Source #
likelihood part
NOTE for an explanation which ITbl gets 0
or 1
check runInside
,
they have the same order requirements.
runInside :: Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> ((((((Z :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double) Source #
inside part
NOTE : Each ITbl
has a big-order (1st index) and a little-order index.
We need these indices because we operate on unboxed tables internally
for efficiency reasons.
The big-order index is for full table calculations. All ITbl
s with
smaller "big order" are fully calculated before any ITbl
s with larger
big orders.
The little-order influences per-cell calculations. Cells with the same index are sorted by order and those with a smaller index calculated first.
For this calculation we have the following:
EE
has only one rule: EE -> ε
, the full table is filled before any
other table and has big order 0
.
Now, we only have tables with big order 1
left.
TT
, TZ
, and ZT
have only rules that each have at least one
non-empty terminal in play. TZ
for example has TZ -> [n,-] RR
.
They are executed first for a given index, because they are guaranteed
to get "smaller" during recursion. Hence little order 0
.
Finally, FF
, QQ
, RR
all combine *only* syntactic symbols on the
right-hand side. In addition these symbols can be empty. They need to
come last and have little order 1
.
runOutside :: Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> (((((((Z :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) :. Tbl (Log Double)) -> ((((((Z :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double)) :. OTbl (Log Double) Source #
Actual outside calculations.
NOTE: The big and little order indices are reversed compared to
runInside
. We need to evaluate the tables outside in now.
run :: Frst -> Frst -> Int -> Int -> Int -> Int -> (((((((Z :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int) :. Tbl Int, Int, Pretty') Source #
runIO :: Frst -> Frst -> Log Double -> Log Double -> Log Double -> Log Double -> Log Double -> ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double))) (Tbl (Log Double)), (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double))) (OTbl (Log Double)), Log Double) Source #