-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Collection of alignment algorithms -- -- generalized Algebraic Dynamic Programming -- -- A selection of (sequence) alignment algorithms. Both terminal, and -- syntactic variables, as well as the index type is not fixed here. This -- makes it possible to select the correct structure of the grammar here, -- but bind the required data type for alignment in user code. -- -- That being said, these algorithms are mostly aimed towards sequence -- alignment problems. -- -- List of grammars for sequences: -- -- -- -- List of grammar for trees: -- -- -- -- We now provide tree alignment and editing algorithms as well. We do -- not depend on ADPfusionForest to achieve this because grammar rules -- are completely disconnected from the underlying ADPfusion machinery. @package AlignmentAlgorithms @version 0.1.0.0 -- | Simple, linear tree editing grammar. module DP.Tree.Edit.Global.Linear2 data SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE SigGlobal :: (s_adnB -> (:.) ((:.) Z t_x_0__adnD) t_x_1__adnE -> s_adnB) -> (s_adnB -> (:.) ((:.) Z t_x_0__adnD) () -> s_adnB) -> ((:.) ((:.) Z ()) () -> s_adnB) -> (s_adnB -> (:.) ((:.) Z ()) t_x_1__adnE -> s_adnB) -> (s_adnB -> s_adnB -> s_adnB) -> (Stream m_adnA s_adnB -> m_adnA r_adnC) -> SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE [align] :: SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE -> (s_adnB -> (:.) ((:.) Z t_x_0__adnD) t_x_1__adnE -> s_adnB) [delin] :: SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE -> (s_adnB -> (:.) ((:.) Z t_x_0__adnD) () -> s_adnB) [done] :: SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE -> ((:.) ((:.) Z ()) () -> s_adnB) [indel] :: SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE -> (s_adnB -> (:.) ((:.) Z ()) t_x_1__adnE -> s_adnB) [iter] :: SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE -> (s_adnB -> s_adnB -> s_adnB) [h] :: SigGlobal m_adnA s_adnB r_adnC t_x_0__adnD t_x_1__adnE -> (Stream m_adnA s_adnB -> m_adnA r_adnC) gGlobal :: ((~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i1 -> i1 -> t6 t4)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t5)) (t5 -> (:.) ((:.) Z t3) t2 -> t5), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i1 -> i1 -> t6 t4))) (TW t (i -> i -> t6 t4))) -> t5)) (t5 -> t5 -> t5), (~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i1 -> i1 -> t6 t4)))) ((:.) ((:.) Z ()) (TermArg b)) -> t5)) (t5 -> (:.) ((:.) Z ()) t2 -> t5), (~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i1 -> i1 -> t6 t4)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t5)) (t5 -> (:.) ((:.) Z t3) () -> t5), Apply ((:.) (Arg (Stack (TW t1 (i1 -> i1 -> t6 t4)))) ((:.) ((:.) Z ()) (TermArg b)) -> t5), Apply ((:.) (Arg (Stack (TW t1 (i1 -> i1 -> t6 t4)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t5), Apply ((:.) (Arg (Stack (TW t1 (i1 -> i1 -> t6 t4)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t5), Apply (Arg ((:!:) (Stack (TW t1 (i1 -> i1 -> t6 t4))) (TW t (i -> i -> t6 t4))) -> t5), TermStream t6 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t1 (i1 -> i1 -> t6 t4))) i1) i1, TermStream t6 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStream t6 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t1 (i1 -> i1 -> t6 t4))) i1) i1, TermStream t6 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t1 (i1 -> i1 -> t6 t4))) i) i, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i1, TermStaticVar (TermSymbol (TermSymbol M b1) b) i, Element ((:!:) (Stack (TW t1 (i1 -> i1 -> t6 t4))) (TW t (i -> i -> t6 t4))) i1, Element (Stack (TW t1 (i1 -> i1 -> t6 t4))) i, Element (Stack (TW t1 (i1 -> i1 -> t6 t4))) i1, MkStream t6 S i1, MkStream t6 ((:!:) (Stack (TW t1 (i1 -> i1 -> t6 t4))) (TW t (i -> i -> t6 t4))) i1, MkStream t6 (Stack (TW t1 (i1 -> i1 -> t6 t4))) i, MkStream t6 (Stack (TW t1 (i1 -> i1 -> t6 t4))) i1, RuleContext i, RuleContext i1, Build (TW t1 (i1 -> i1 -> t6 t4))) => SigGlobal t6 t5 t4 t3 t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) Z (TW t1 (i1 -> i1 -> t6 t4))) (TW t (i -> i -> t6 t4)) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Tree.Edit.Global.Linear2.SigGlobal mL0 xL0 rL0 t_x_0_0 t_x_1_0) (DP.Tree.Edit.Global.Linear2.SigGlobal mR0 xR0 rR0 t_x_0_0 t_x_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Tree.Edit.Global.Linear2.SigGlobal mL0 xL0 rL0 t_x_0_0 t_x_1_0) (DP.Tree.Edit.Global.Linear2.SigGlobal mR0 xR0 rR0 t_x_0_0 t_x_1_0) -- | Simple, linear scoring for tree alignments. module DP.Tree.Align.Global.Linear2 data SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S SigGlobal :: ((:.) ((:.) Z t_n_0__ai0R) t_n_1__ai0S -> s_ai0P -> s_ai0P) -> ((:.) ((:.) Z t_n_0__ai0R) () -> s_ai0P -> s_ai0P) -> ((:.) ((:.) Z ()) () -> s_ai0P) -> ((:.) ((:.) Z ()) t_n_1__ai0S -> s_ai0P -> s_ai0P) -> (s_ai0P -> s_ai0P -> s_ai0P) -> (Stream m_ai0O s_ai0P -> m_ai0O r_ai0Q) -> SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S [gAlign] :: SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S -> ((:.) ((:.) Z t_n_0__ai0R) t_n_1__ai0S -> s_ai0P -> s_ai0P) [gDelin] :: SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S -> ((:.) ((:.) Z t_n_0__ai0R) () -> s_ai0P -> s_ai0P) [gDone] :: SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S -> ((:.) ((:.) Z ()) () -> s_ai0P) [gIndel] :: SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S -> ((:.) ((:.) Z ()) t_n_1__ai0S -> s_ai0P -> s_ai0P) [gIter] :: SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S -> (s_ai0P -> s_ai0P -> s_ai0P) [gH] :: SigGlobal m_ai0O s_ai0P r_ai0Q t_n_0__ai0R t_n_1__ai0S -> (Stream m_ai0O s_ai0P -> m_ai0O r_ai0Q) data SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 SigLabolg :: ((:.) ((:.) Z t_n_0__ai17) t_n_1__ai18 -> s_ai15 -> s_ai15) -> ((:.) ((:.) Z t_n_0__ai17) () -> s_ai15 -> s_ai15) -> ((:.) ((:.) Z ()) () -> s_ai15) -> ((:.) ((:.) Z ()) t_n_1__ai18 -> s_ai15 -> s_ai15) -> (s_ai15 -> s_ai15 -> s_ai15) -> (Stream m_ai14 s_ai15 -> m_ai14 r_ai16) -> SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 [lAlign] :: SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 -> ((:.) ((:.) Z t_n_0__ai17) t_n_1__ai18 -> s_ai15 -> s_ai15) [lDelin] :: SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 -> ((:.) ((:.) Z t_n_0__ai17) () -> s_ai15 -> s_ai15) [lDone] :: SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 -> ((:.) ((:.) Z ()) () -> s_ai15) [lIndel] :: SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 -> ((:.) ((:.) Z ()) t_n_1__ai18 -> s_ai15 -> s_ai15) [lIter] :: SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 -> (s_ai15 -> s_ai15 -> s_ai15) [lH] :: SigLabolg m_ai14 s_ai15 r_ai16 t_n_0__ai17 t_n_1__ai18 -> (Stream m_ai14 s_ai15 -> m_ai14 r_ai16) gLabolg :: ((~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i1 -> i1 -> t7 t5))) b2) -> t6)) (t6 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) (Stack a) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) (t6 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) (Stack a1) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) (t6 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i2 -> i2 -> t7 t5))) -> t6)) ((:.) ((:.) Z ()) t3 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t (i2 -> i2 -> t7 t5))) -> t6)) ((:.) ((:.) Z t4) () -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t1 (i -> i -> t7 t5))) -> t6)) ((:.) ((:.) Z t4) t3 -> t6 -> t6), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i2 -> i2 -> t7 t5))) i1, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t (i2 -> i2 -> t7 t5))) i1, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t1 (i -> i -> t7 t5))) i1, Element ((:!:) (Stack (TW t2 (i1 -> i1 -> t7 t5))) b2) i2, Element ((:!:) (Stack (TW t2 (i1 -> i1 -> t7 t5))) b2) i, Element ((:!:) (Stack a) (TW t2 (i1 -> i1 -> t7 t5))) i1, Element ((:!:) (Stack a1) (TW t2 (i1 -> i1 -> t7 t5))) i1, MkStream t7 S i1, MkStream t7 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i2 -> i2 -> t7 t5))) i1, MkStream t7 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t (i2 -> i2 -> t7 t5))) i1, MkStream t7 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t1 (i -> i -> t7 t5))) i1, MkStream t7 ((:!:) (Stack (TW t2 (i1 -> i1 -> t7 t5))) b2) i2, MkStream t7 ((:!:) (Stack (TW t2 (i1 -> i1 -> t7 t5))) b2) i, MkStream t7 ((:!:) (Stack a) (TW t2 (i1 -> i1 -> t7 t5))) i1, MkStream t7 ((:!:) (Stack a1) (TW t2 (i1 -> i1 -> t7 t5))) i1, RuleContext i2, RuleContext i, RuleContext i1, Apply (Arg ((:!:) (Stack (TW t2 (i1 -> i1 -> t7 t5))) b2) -> t6), Apply (Arg ((:!:) (Stack a) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Apply (Arg ((:!:) (Stack a1) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t (i2 -> i2 -> t7 t5))) -> t6), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t (i2 -> i2 -> t7 t5))) -> t6), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t1 (i -> i -> t7 t5))) -> t6), Build (TW t2 (i1 -> i1 -> t7 t5)), Build a, Build a1, TermStream t7 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1) => SigLabolg t7 t6 t5 t4 t3 -> t2 -> t1 -> t -> b2 -> a1 -> a -> b1 -> b -> (:.) ((:.) ((:.) Z (TW t2 (i1 -> i1 -> t7 t5))) (TW t1 (i -> i -> t7 t5))) (TW t (i2 -> i2 -> t7 t5)) gGlobal :: ((~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) ((:.) ((:.) Z ()) t3 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) ((:.) ((:.) Z t4) () -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) ((:.) ((:.) Z t4) t3 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i2 -> i2 -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) (t6 -> t6 -> t6), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i -> i -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) -> t6)) (t6 -> t6 -> t6), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Apply (Arg ((:!:) (Stack (TW t (i2 -> i2 -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Apply (Arg ((:!:) (Stack (TW t1 (i -> i -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) -> t6), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t2 (i1 -> i1 -> t7 t5))) i2, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t2 (i1 -> i1 -> t7 t5))) i2, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i1 -> i1 -> t7 t5))) i, Element ((:!:) (Stack (TW t (i2 -> i2 -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) i1, Element ((:!:) (Stack (TW t1 (i -> i -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) i1, MkStream t7 S i1, MkStream t7 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t2 (i1 -> i1 -> t7 t5))) i2, MkStream t7 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t2 (i1 -> i1 -> t7 t5))) i2, MkStream t7 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t2 (i1 -> i1 -> t7 t5))) i, MkStream t7 ((:!:) (Stack (TW t (i2 -> i2 -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) i1, MkStream t7 ((:!:) (Stack (TW t1 (i -> i -> t7 t5))) (TW t2 (i1 -> i1 -> t7 t5))) i1, RuleContext i2, RuleContext i, RuleContext i1, Build (TW t (i2 -> i2 -> t7 t5)), Build (TW t1 (i -> i -> t7 t5)), TermStream t7 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1) => SigGlobal t7 t6 t5 t4 t3 -> t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) ((:.) Z (TW t2 (i1 -> i1 -> t7 t5))) (TW t1 (i -> i -> t7 t5))) (TW t (i2 -> i2 -> t7 t5)) resig :: Monad m => SigGlobal m a b c d -> SigLabolg m a b c d instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Tree.Align.Global.Linear2.SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (DP.Tree.Align.Global.Linear2.SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Tree.Align.Global.Linear2.SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (DP.Tree.Align.Global.Linear2.SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) -- | An affine-scoring grammar for the alignment of two trees. -- -- Due to the way ADPfusion and GADP works this grammar -- will, in principle, work with basically any input type. In practice, -- the given rules make most (or only) sense for tree alignments. module DP.Tree.Align.Global.AffineSmall2 data SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp SigGlobal :: ((:.) ((:.) Z t_n_0__alto) t_n_1__altp -> s_altm -> s_altm) -> ((:.) ((:.) Z t_n_0__alto) () -> s_altm -> s_altm) -> (s_altm -> s_altm) -> (s_altm -> s_altm -> s_altm) -> ((:.) ((:.) Z ()) () -> s_altm) -> ((:.) ((:.) Z ()) t_n_1__altp -> s_altm -> s_altm) -> (s_altm -> s_altm -> s_altm) -> (s_altm -> s_altm -> s_altm) -> (s_altm -> s_altm -> s_altm) -> (s_altm -> s_altm -> s_altm) -> (Stream m_altl s_altm -> m_altl r_altn) -> SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp [gAlign] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> ((:.) ((:.) Z t_n_0__alto) t_n_1__altp -> s_altm -> s_altm) [gDelin] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> ((:.) ((:.) Z t_n_0__alto) () -> s_altm -> s_altm) [gDone] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (s_altm -> s_altm) [gFgap] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (s_altm -> s_altm -> s_altm) [gFinalDone] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> ((:.) ((:.) Z ()) () -> s_altm) [gIndel] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> ((:.) ((:.) Z ()) t_n_1__altp -> s_altm -> s_altm) [gIter] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (s_altm -> s_altm -> s_altm) [gPgap] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (s_altm -> s_altm -> s_altm) [gSgap] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (s_altm -> s_altm -> s_altm) [gSiter] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (s_altm -> s_altm -> s_altm) [gH] :: SigGlobal m_altl s_altm r_altn t_n_0__alto t_n_1__altp -> (Stream m_altl s_altm -> m_altl r_altn) data SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR SigLabolg :: ((:.) ((:.) Z t_n_0__altQ) t_n_1__altR -> s_altO -> s_altO) -> ((:.) ((:.) Z t_n_0__altQ) () -> s_altO -> s_altO) -> (s_altO -> s_altO) -> (s_altO -> s_altO -> s_altO) -> ((:.) ((:.) Z ()) () -> s_altO) -> ((:.) ((:.) Z ()) t_n_1__altR -> s_altO -> s_altO) -> (s_altO -> s_altO -> s_altO) -> (s_altO -> s_altO -> s_altO) -> (s_altO -> s_altO -> s_altO) -> (s_altO -> s_altO -> s_altO) -> (Stream m_altN s_altO -> m_altN r_altP) -> SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR [lAlign] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> ((:.) ((:.) Z t_n_0__altQ) t_n_1__altR -> s_altO -> s_altO) [lDelin] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> ((:.) ((:.) Z t_n_0__altQ) () -> s_altO -> s_altO) [lDone] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (s_altO -> s_altO) [lFgap] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (s_altO -> s_altO -> s_altO) [lFinalDone] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> ((:.) ((:.) Z ()) () -> s_altO) [lIndel] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> ((:.) ((:.) Z ()) t_n_1__altR -> s_altO -> s_altO) [lIter] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (s_altO -> s_altO -> s_altO) [lPgap] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (s_altO -> s_altO -> s_altO) [lSgap] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (s_altO -> s_altO -> s_altO) [lSiter] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (s_altO -> s_altO -> s_altO) [lH] :: SigLabolg m_altN s_altO r_altP t_n_0__altQ t_n_1__altR -> (Stream m_altN s_altO -> m_altN r_altP) 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 instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Tree.Align.Global.AffineSmall2.SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (DP.Tree.Align.Global.AffineSmall2.SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Tree.Align.Global.AffineSmall2.SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (DP.Tree.Align.Global.AffineSmall2.SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) -- | Full-blown affine-scoring tree alignment grammar with all cases. -- -- We currently do not produce the outside algorithm, since the -- AffineSmall2 variant seems more useful in practice. However, -- if you want just send a mail. module DP.Tree.Align.Global.Affine2 data SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW SigGlobal :: ((:.) ((:.) Z t_n_0__atkV) () -> s_atkT -> s_atkT) -> ((:.) ((:.) Z ()) t_n_1__atkW -> s_atkT -> s_atkT) -> ((:.) ((:.) Z t_n_0__atkV) t_n_1__atkW -> s_atkT -> s_atkT) -> ((:.) ((:.) Z t_n_0__atkV) () -> s_atkT -> s_atkT) -> ((:.) ((:.) Z ()) () -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> ((:.) ((:.) Z ()) t_n_1__atkW -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (s_atkT -> s_atkT -> s_atkT) -> (Stream m_atkS s_atkT -> m_atkS r_atkU) -> SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW [afdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> ((:.) ((:.) Z t_n_0__atkV) () -> s_atkT -> s_atkT) [afindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> ((:.) ((:.) Z ()) t_n_1__atkW -> s_atkT -> s_atkT) [align] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> ((:.) ((:.) Z t_n_0__atkV) t_n_1__atkW -> s_atkT -> s_atkT) [delin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> ((:.) ((:.) Z t_n_0__atkV) () -> s_atkT -> s_atkT) [done] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> ((:.) ((:.) Z ()) () -> s_atkT) [fgalign] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [fgdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [fgindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [fpalign] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [fpdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [fpindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [gfalign] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [gfdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [gfindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [gpalign] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [gpdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [gpindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [indel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> ((:.) ((:.) Z ()) t_n_1__atkW -> s_atkT -> s_atkT) [iter] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [pfalign] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [pfdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [pfindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [pgalign] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [pgdelin] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [pgindel] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (s_atkT -> s_atkT -> s_atkT) [h] :: SigGlobal m_atkS s_atkT r_atkU t_n_0__atkV t_n_1__atkW -> (Stream m_atkS s_atkT -> m_atkS r_atkU) gGlobal :: ((~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t6 (i5 -> i5 -> t16 t14))) -> t15)) ((:.) ((:.) Z ()) t12 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t9 (i2 -> i2 -> t16 t14))) -> t15)) ((:.) ((:.) Z t13) () -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t11 (i1 -> i1 -> t16 t14))) -> t15)) ((:.) ((:.) Z t13) t12 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) -> t15)) (t15 -> t15 -> t15), (~#) * * (Fun (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t11 (i1 -> i1 -> t16 t14))) -> t15)) (t15 -> t15 -> t15), Apply (Arg ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) -> t15), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t6 (i5 -> i5 -> t16 t14))) -> t15), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t9 (i2 -> i2 -> t16 t14))) -> t15), Apply (Arg ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t11 (i1 -> i1 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) -> t15), Apply (Arg ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t11 (i1 -> i1 -> t16 t14))) -> t15), Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t6 (i5 -> i5 -> t16 t14))) i10, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t6 (i5 -> i5 -> t16 t14))) i11, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t9 (i2 -> i2 -> t16 t14))) i9, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t9 (i2 -> i2 -> t16 t14))) i8, Element ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t11 (i1 -> i1 -> t16 t14))) i7, Element ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) i3, Element ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i6, Element ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i5, Element ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) i4, Element ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) i3, Element ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) i5, Element ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) i1, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) i3, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i6, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i5, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i2, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i4, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t11 (i1 -> i1 -> t16 t14))) i, Element ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t11 (i1 -> i1 -> t16 t14))) i1, Element ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) i6, Element ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i2, Element ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i4, Element ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) i, Element ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) i2, Element ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) i, Element ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) i1, MkStream t16 S i3, MkStream t16 S i5, MkStream t16 S i2, MkStream t16 S i, MkStream t16 S i1, MkStream t16 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t6 (i5 -> i5 -> t16 t14))) i10, MkStream t16 ((:!:) ((:!:) S (TermSymbol (TermSymbol M Deletion) b)) (TW t6 (i5 -> i5 -> t16 t14))) i11, MkStream t16 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t9 (i2 -> i2 -> t16 t14))) i9, MkStream t16 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) Deletion)) (TW t9 (i2 -> i2 -> t16 t14))) i8, MkStream t16 ((:!:) ((:!:) S (TermSymbol (TermSymbol M b1) b)) (TW t11 (i1 -> i1 -> t16 t14))) i7, MkStream t16 ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) i3, MkStream t16 ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i6, MkStream t16 ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i5, MkStream t16 ((:!:) (Stack (TW t1 (i10 -> i10 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) i4, MkStream t16 ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) i3, MkStream t16 ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) i5, MkStream t16 ((:!:) (Stack (TW t2 (i9 -> i9 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) i1, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) i3, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i6, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) i5, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i2, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i4, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t11 (i1 -> i1 -> t16 t14))) i, MkStream t16 ((:!:) (Stack (TW t4 (i7 -> i7 -> t16 t14))) (TW t11 (i1 -> i1 -> t16 t14))) i1, MkStream t16 ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) i6, MkStream t16 ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i2, MkStream t16 ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) i4, MkStream t16 ((:!:) (Stack (TW t3 (i8 -> i8 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) i, MkStream t16 ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) i2, MkStream t16 ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) i, MkStream t16 ((:!:) (Stack (TW t (i11 -> i11 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) i1, TermStream t16 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i3) i3, TermStream t16 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i5) i5, TermStream t16 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i2) i2, TermStream t16 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i) i, TermStream t16 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i3, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i5, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i2, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1, RuleContext i3, RuleContext i9, RuleContext i10, RuleContext i6, RuleContext i5, RuleContext i11, RuleContext i8, RuleContext i7, RuleContext i2, RuleContext i4, RuleContext i, RuleContext i1, Build (TW t1 (i10 -> i10 -> t16 t14)), Build (TW t3 (i8 -> i8 -> t16 t14)), Build (TW t (i11 -> i11 -> t16 t14)), Build (TW t2 (i9 -> i9 -> t16 t14)), Build (TW t4 (i7 -> i7 -> t16 t14))) => SigGlobal t16 t15 t14 t13 t12 -> t11 -> t10 -> t9 -> t8 -> t7 -> t6 -> t5 -> t4 -> t3 -> t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (TW t11 (i1 -> i1 -> t16 t14))) (TW t10 (i -> i -> t16 t14))) (TW t9 (i2 -> i2 -> t16 t14))) (TW t8 (i3 -> i3 -> t16 t14))) (TW t7 (i4 -> i4 -> t16 t14))) (TW t6 (i5 -> i5 -> t16 t14))) (TW t5 (i6 -> i6 -> t16 t14))) (TW t4 (i7 -> i7 -> t16 t14))) (TW t3 (i8 -> i8 -> t16 t14))) (TW t2 (i9 -> i9 -> t16 t14))) (TW t1 (i10 -> i10 -> t16 t14))) (TW t (i11 -> i11 -> t16 t14)) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Tree.Align.Global.Affine2.SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (DP.Tree.Align.Global.Affine2.SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Tree.Align.Global.Affine2.SigGlobal mL0 xL0 rL0 t_n_0_0 t_n_1_0) (DP.Tree.Align.Global.Affine2.SigGlobal mR0 xR0 rR0 t_n_0_0 t_n_1_0) -- | Affine grammar with zero-cost prefixes and suffixes. module DP.Seq.Align.SemiGlobal.Infix2 -- | Define signature and grammar data SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL SigInfix :: (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> ((:.) ((:.) Z ()) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) -> (Stream m_aIiH s_aIiI -> m_aIiH r_aIiJ) -> SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL [align] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) t_u_1__aIiL -> s_aIiI) [contL] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [contU] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [done] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> ((:.) ((:.) Z ()) () -> s_aIiI) [frSUD] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [frSUI] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [frSUM] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [frUSD] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [frUSI] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [frUSM] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [openL] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [openU] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [prePU] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [preUP] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [start] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> s_aIiI) [sufSU] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [sufUS] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [toPUD] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [toPUI] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [toPUM] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z ()) t_u_1__aIiL -> s_aIiI) [toUPD] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [toUPI] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [toUPM] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (s_aIiI -> (:.) ((:.) Z t_b_0__aIiK) () -> s_aIiI) [h] :: SigInfix m_aIiH s_aIiI r_aIiJ t_b_0__aIiK t_u_1__aIiL -> (Stream m_aIiH s_aIiI -> m_aIiH r_aIiJ) gInfix :: ((~#) * * (Fun (Arg (Stack (TW t (i7 -> i7 -> t12 t10))) -> t11)) (t11 -> t11), (~#) * * (Fun (Arg (Stack (TW t2 (i5 -> i5 -> t12 t10))) -> t11)) (t11 -> t11), (~#) * * (Fun (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10))) -> t11)) (t11 -> t11), (~#) * * (Fun (Arg (Stack (TW t6 (i -> i -> t12 t10))) -> t11)) (t11 -> t11), (~#) * * (Fun (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10))) -> t11)) (t11 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t (i7 -> i7 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11)) (t11 -> (:.) ((:.) Z t9) () -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t2 (i5 -> i5 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z ()) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z t9) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t6 (i -> i -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z t9) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z t9) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11)) (t11 -> (:.) ((:.) Z t9) () -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11)) (t11 -> (:.) ((:.) Z t9) () -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t6 (i -> i -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11)) (t11 -> (:.) ((:.) Z t9) () -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z ()) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t6 (i -> i -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z ()) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z ()) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t4 (i3 -> i3 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11)) (t11 -> (:.) ((:.) Z ()) t8 -> t11), (~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i6 -> i6 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11)) (t11 -> (:.) ((:.) Z t9) () -> t11), Apply ((:.) (Arg (Stack (TW t (i7 -> i7 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11), Apply ((:.) (Arg (Stack (TW t2 (i5 -> i5 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11), Apply ((:.) (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t6 (i -> i -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t6 (i -> i -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11), Apply ((:.) (Arg (Stack (TW t6 (i -> i -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11), Apply ((:.) (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t4 (i3 -> i3 -> t12 t10)))) ((:.) ((:.) Z ()) (TermArg b)) -> t11), Apply ((:.) (Arg (Stack (TW t1 (i6 -> i6 -> t12 t10)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t11), Apply (Arg (Stack (TW t (i7 -> i7 -> t12 t10))) -> t11), Apply (Arg (Stack (TW t2 (i5 -> i5 -> t12 t10))) -> t11), Apply (Arg (Stack (TW t5 (i2 -> i2 -> t12 t10))) -> t11), Apply (Arg (Stack (TW t6 (i -> i -> t12 t10))) -> t11), Apply (Arg (Stack (TW t7 (i1 -> i1 -> t12 t10))) -> t11), Element (Stack (TW t (i7 -> i7 -> t12 t10))) i4, Element (Stack (TW t (i7 -> i7 -> t12 t10))) i7, Element (Stack (TW t2 (i5 -> i5 -> t12 t10))) i4, Element (Stack (TW t2 (i5 -> i5 -> t12 t10))) i5, Element (Stack (TW t5 (i2 -> i2 -> t12 t10))) i4, Element (Stack (TW t5 (i2 -> i2 -> t12 t10))) i7, Element (Stack (TW t5 (i2 -> i2 -> t12 t10))) i5, Element (Stack (TW t5 (i2 -> i2 -> t12 t10))) i2, Element (Stack (TW t5 (i2 -> i2 -> t12 t10))) i, Element (Stack (TW t5 (i2 -> i2 -> t12 t10))) i1, Element (Stack (TW t6 (i -> i -> t12 t10))) i4, Element (Stack (TW t6 (i -> i -> t12 t10))) i7, Element (Stack (TW t6 (i -> i -> t12 t10))) i5, Element (Stack (TW t6 (i -> i -> t12 t10))) i2, Element (Stack (TW t6 (i -> i -> t12 t10))) i, Element (Stack (TW t6 (i -> i -> t12 t10))) i1, Element (Stack (TW t7 (i1 -> i1 -> t12 t10))) i4, Element (Stack (TW t7 (i1 -> i1 -> t12 t10))) i7, Element (Stack (TW t7 (i1 -> i1 -> t12 t10))) i5, Element (Stack (TW t7 (i1 -> i1 -> t12 t10))) i2, Element (Stack (TW t7 (i1 -> i1 -> t12 t10))) i, Element (Stack (TW t7 (i1 -> i1 -> t12 t10))) i1, Element (Stack (TW t1 (i6 -> i6 -> t12 t10))) i2, Element (Stack (TW t1 (i6 -> i6 -> t12 t10))) i, Element (Stack (TW t1 (i6 -> i6 -> t12 t10))) i1, Element (Stack (TW t1 (i6 -> i6 -> t12 t10))) i6, Element (Stack (TW t4 (i3 -> i3 -> t12 t10))) i2, Element (Stack (TW t4 (i3 -> i3 -> t12 t10))) i, Element (Stack (TW t4 (i3 -> i3 -> t12 t10))) i1, Element (Stack (TW t4 (i3 -> i3 -> t12 t10))) i3, MkStream t12 S i2, MkStream t12 S i, MkStream t12 S i1, MkStream t12 S i3, MkStream t12 S i6, MkStream t12 (Stack (TW t (i7 -> i7 -> t12 t10))) i4, MkStream t12 (Stack (TW t (i7 -> i7 -> t12 t10))) i7, MkStream t12 (Stack (TW t2 (i5 -> i5 -> t12 t10))) i4, MkStream t12 (Stack (TW t2 (i5 -> i5 -> t12 t10))) i5, MkStream t12 (Stack (TW t5 (i2 -> i2 -> t12 t10))) i4, MkStream t12 (Stack (TW t5 (i2 -> i2 -> t12 t10))) i7, MkStream t12 (Stack (TW t5 (i2 -> i2 -> t12 t10))) i5, MkStream t12 (Stack (TW t5 (i2 -> i2 -> t12 t10))) i2, MkStream t12 (Stack (TW t5 (i2 -> i2 -> t12 t10))) i, MkStream t12 (Stack (TW t5 (i2 -> i2 -> t12 t10))) i1, MkStream t12 (Stack (TW t6 (i -> i -> t12 t10))) i4, MkStream t12 (Stack (TW t6 (i -> i -> t12 t10))) i7, MkStream t12 (Stack (TW t6 (i -> i -> t12 t10))) i5, MkStream t12 (Stack (TW t6 (i -> i -> t12 t10))) i2, MkStream t12 (Stack (TW t6 (i -> i -> t12 t10))) i, MkStream t12 (Stack (TW t6 (i -> i -> t12 t10))) i1, MkStream t12 (Stack (TW t7 (i1 -> i1 -> t12 t10))) i4, MkStream t12 (Stack (TW t7 (i1 -> i1 -> t12 t10))) i7, MkStream t12 (Stack (TW t7 (i1 -> i1 -> t12 t10))) i5, MkStream t12 (Stack (TW t7 (i1 -> i1 -> t12 t10))) i2, MkStream t12 (Stack (TW t7 (i1 -> i1 -> t12 t10))) i, MkStream t12 (Stack (TW t7 (i1 -> i1 -> t12 t10))) i1, MkStream t12 (Stack (TW t1 (i6 -> i6 -> t12 t10))) i2, MkStream t12 (Stack (TW t1 (i6 -> i6 -> t12 t10))) i, MkStream t12 (Stack (TW t1 (i6 -> i6 -> t12 t10))) i1, MkStream t12 (Stack (TW t1 (i6 -> i6 -> t12 t10))) i6, MkStream t12 (Stack (TW t4 (i3 -> i3 -> t12 t10))) i2, MkStream t12 (Stack (TW t4 (i3 -> i3 -> t12 t10))) i, MkStream t12 (Stack (TW t4 (i3 -> i3 -> t12 t10))) i1, MkStream t12 (Stack (TW t4 (i3 -> i3 -> t12 t10))) i3, RuleContext i4, RuleContext i7, RuleContext i5, RuleContext i2, RuleContext i, RuleContext i1, RuleContext i3, RuleContext i6, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t2 (i5 -> i5 -> t12 t10))) i5) i5, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t5 (i2 -> i2 -> t12 t10))) i5) i5, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t5 (i2 -> i2 -> t12 t10))) i1) i1, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t6 (i -> i -> t12 t10))) i5) i5, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t6 (i -> i -> t12 t10))) i1) i1, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t7 (i1 -> i1 -> t12 t10))) i5) i5, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t7 (i1 -> i1 -> t12 t10))) i1) i1, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t4 (i3 -> i3 -> t12 t10))) i2) i2, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t4 (i3 -> i3 -> t12 t10))) i) i, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t4 (i3 -> i3 -> t12 t10))) i1) i1, TermStream t12 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t4 (i3 -> i3 -> t12 t10))) i3) i3, TermStream t12 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i2) i2, TermStream t12 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i) i, TermStream t12 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i1) i1, TermStream t12 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i3) i3, TermStream t12 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i6) i6, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t (i7 -> i7 -> t12 t10))) i7) i7, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t5 (i2 -> i2 -> t12 t10))) i7) i7, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t5 (i2 -> i2 -> t12 t10))) i) i, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t6 (i -> i -> t12 t10))) i7) i7, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t6 (i -> i -> t12 t10))) i) i, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t7 (i1 -> i1 -> t12 t10))) i7) i7, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t7 (i1 -> i1 -> t12 t10))) i) i, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t1 (i6 -> i6 -> t12 t10))) i2) i2, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t1 (i6 -> i6 -> t12 t10))) i) i, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t1 (i6 -> i6 -> t12 t10))) i1) i1, TermStream t12 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t1 (i6 -> i6 -> t12 t10))) i6) i6, TermStream t12 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t5 (i2 -> i2 -> t12 t10))) i2) i2, TermStream t12 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t6 (i -> i -> t12 t10))) i2) i2, TermStream t12 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t7 (i1 -> i1 -> t12 t10))) i2) i2, Build (TW t (i7 -> i7 -> t12 t10)), Build (TW t2 (i5 -> i5 -> t12 t10)), Build (TW t5 (i2 -> i2 -> t12 t10)), Build (TW t6 (i -> i -> t12 t10)), Build (TW t7 (i1 -> i1 -> t12 t10)), Build (TW t4 (i3 -> i3 -> t12 t10)), Build (TW t1 (i6 -> i6 -> t12 t10)), TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i5, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i2, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i1, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i3, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i2, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i1, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i3, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i6, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i7, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i2, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i1, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i6, TermStaticVar (TermSymbol (TermSymbol M b1) b) i2) => SigInfix t12 t11 t10 t9 t8 -> t7 -> t6 -> t5 -> t4 -> t3 -> t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) ((:.) Z (TW t7 (i1 -> i1 -> t12 t10))) (TW t6 (i -> i -> t12 t10))) (TW t5 (i2 -> i2 -> t12 t10))) (TW t4 (i3 -> i3 -> t12 t10))) (TW t3 (i4 -> i4 -> t12 t10))) (TW t2 (i5 -> i5 -> t12 t10))) (TW t1 (i6 -> i6 -> t12 t10))) (TW t (i7 -> i7 -> t12 t10)) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Seq.Align.SemiGlobal.Infix2.SigInfix mL0 xL0 rL0 t_b_0_0 t_u_1_0) (DP.Seq.Align.SemiGlobal.Infix2.SigInfix mR0 xR0 rR0 t_b_0_0 t_u_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Seq.Align.SemiGlobal.Infix2.SigInfix mL0 xL0 rL0 t_b_0_0 t_u_1_0) (DP.Seq.Align.SemiGlobal.Infix2.SigInfix mR0 xR0 rR0 t_b_0_0 t_u_1_0) -- | Very simple pairwise global alignment. The terminal tapes may contain -- the atomic types u and l which means that one may -- align sequences of different types. -- -- In case you want to align nucleotides to amino acids, this version -- should only be used if the nucleotides are already in triplet form and -- have no frameshift within the sequence. Alternatively, specify a -- derived grammar of higher complexity. module DP.Seq.Align.Global.Linear2 -- | Define signature and grammar data SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst SigGlobal :: (s_aUsq -> (:.) ((:.) Z t_l_0__aUss) t_u_1__aUst -> s_aUsq) -> (s_aUsq -> (:.) ((:.) Z t_l_0__aUss) () -> s_aUsq) -> ((:.) ((:.) Z ()) () -> s_aUsq) -> (s_aUsq -> (:.) ((:.) Z ()) t_u_1__aUst -> s_aUsq) -> (Stream m_aUsp s_aUsq -> m_aUsp r_aUsr) -> SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst [align] :: SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst -> (s_aUsq -> (:.) ((:.) Z t_l_0__aUss) t_u_1__aUst -> s_aUsq) [delin] :: SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst -> (s_aUsq -> (:.) ((:.) Z t_l_0__aUss) () -> s_aUsq) [done] :: SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst -> ((:.) ((:.) Z ()) () -> s_aUsq) [indel] :: SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst -> (s_aUsq -> (:.) ((:.) Z ()) t_u_1__aUst -> s_aUsq) [h] :: SigGlobal m_aUsp s_aUsq r_aUsr t_l_0__aUss t_u_1__aUst -> (Stream m_aUsp s_aUsq -> m_aUsp r_aUsr) gGlobal :: ((~#) * * (Fun ((:.) (Arg (Stack (TW t (i -> i -> t5 t3)))) ((:.) ((:.) Z ()) (TermArg b)) -> t4)) (t4 -> (:.) ((:.) Z ()) t1 -> t4), (~#) * * (Fun ((:.) (Arg (Stack (TW t (i -> i -> t5 t3)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t4)) (t4 -> (:.) ((:.) Z t2) () -> t4), (~#) * * (Fun ((:.) (Arg (Stack (TW t (i -> i -> t5 t3)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t4)) (t4 -> (:.) ((:.) Z t2) t1 -> t4), Apply ((:.) (Arg (Stack (TW t (i -> i -> t5 t3)))) ((:.) ((:.) Z ()) (TermArg b)) -> t4), Apply ((:.) (Arg (Stack (TW t (i -> i -> t5 t3)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t4), Apply ((:.) (Arg (Stack (TW t (i -> i -> t5 t3)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t4), TermStream t5 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t (i -> i -> t5 t3))) i) i, TermStream t5 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i) i, TermStream t5 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t (i -> i -> t5 t3))) i) i, TermStream t5 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t (i -> i -> t5 t3))) i) i, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i, TermStaticVar (TermSymbol (TermSymbol M b1) b) i, MkStream t5 S i, MkStream t5 (Stack (TW t (i -> i -> t5 t3))) i, Element (Stack (TW t (i -> i -> t5 t3))) i, Build (TW t (i -> i -> t5 t3)), RuleContext i) => SigGlobal t5 t4 t3 t2 t1 -> t -> b1 -> b -> (:.) Z (TW t (i -> i -> t5 t3)) -- | Generic backtracking scheme via FMLists. backtrack :: Monad m => u -> l -> SigGlobal m (FMList (l, u)) [FMList (l, u)] l u -- | Backtracking with more options backtrackFun :: Monad m => (l -> u -> r) -> (l -> u -> r) -> u -> l -> SigGlobal m (FMList r) [FMList r] l u -- | Turn a single FMList backtracking result into the -- corresponding list. runBacktrack :: FMList r -> [r] instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Seq.Align.Global.Linear2.SigGlobal mL0 xL0 rL0 t_l_0_0 t_u_1_0) (DP.Seq.Align.Global.Linear2.SigGlobal mR0 xR0 rR0 t_l_0_0 t_u_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Seq.Align.Global.Linear2.SigGlobal mL0 xL0 rL0 t_l_0_0 t_u_1_0) (DP.Seq.Align.Global.Linear2.SigGlobal mR0 xR0 rR0 t_l_0_0 t_u_1_0) module DP.Seq.Align.Global.Affine2 -- | Define signature and grammar data SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg SigGotoh :: (s_aWRd -> (:.) ((:.) Z t_b_0__aWRf) t_u_1__aWRg -> s_aWRd) -> (s_aWRd -> (:.) ((:.) Z t_b_0__aWRf) () -> s_aWRd) -> ((:.) ((:.) Z ()) () -> s_aWRd) -> (s_aWRd -> (:.) ((:.) Z t_b_0__aWRf) () -> s_aWRd) -> (s_aWRd -> (:.) ((:.) Z ()) t_u_1__aWRg -> s_aWRd) -> (s_aWRd -> s_aWRd) -> (Stream m_aWRc s_aWRd -> m_aWRc r_aWRe) -> SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg [align] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> (s_aWRd -> (:.) ((:.) Z t_b_0__aWRf) t_u_1__aWRg -> s_aWRd) [contU] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> (s_aWRd -> (:.) ((:.) Z t_b_0__aWRf) () -> s_aWRd) [done] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> ((:.) ((:.) Z ()) () -> s_aWRd) [openL] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> (s_aWRd -> (:.) ((:.) Z t_b_0__aWRf) () -> s_aWRd) [openU] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> (s_aWRd -> (:.) ((:.) Z ()) t_u_1__aWRg -> s_aWRd) [start] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> (s_aWRd -> s_aWRd) [h] :: SigGotoh m_aWRc s_aWRd r_aWRe t_b_0__aWRf t_u_1__aWRg -> (Stream m_aWRc s_aWRd -> m_aWRc r_aWRe) gGotoh :: ((~#) * * (Fun (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6))) -> t7)) (t7 -> t7), (~#) * * (Fun (Arg (Stack (TW t2 (i -> i -> t8 t6))) -> t7)) (t7 -> t7), (~#) * * (Fun (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6))) -> t7)) (t7 -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t7)) (t7 -> (:.) ((:.) Z t5) t4 -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t2 (i -> i -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t7)) (t7 -> (:.) ((:.) Z t5) t4 -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t7)) (t7 -> (:.) ((:.) Z t5) t4 -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t7)) (t7 -> (:.) ((:.) Z t5) () -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t7)) (t7 -> (:.) ((:.) Z t5) () -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t2 (i -> i -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t7)) (t7 -> (:.) ((:.) Z t5) () -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6)))) ((:.) ((:.) Z ()) (TermArg b)) -> t7)) (t7 -> (:.) ((:.) Z ()) t4 -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t2 (i -> i -> t8 t6)))) ((:.) ((:.) Z ()) (TermArg b)) -> t7)) (t7 -> (:.) ((:.) Z ()) t4 -> t7), (~#) * * (Fun ((:.) (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6)))) ((:.) ((:.) Z ()) (TermArg b)) -> t7)) (t7 -> (:.) ((:.) Z t5) () -> t7), Apply ((:.) (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6)))) ((:.) ((:.) Z ()) (TermArg b)) -> t7), Apply ((:.) (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t7), Apply ((:.) (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t7), Apply ((:.) (Arg (Stack (TW t2 (i -> i -> t8 t6)))) ((:.) ((:.) Z ()) (TermArg b)) -> t7), Apply ((:.) (Arg (Stack (TW t2 (i -> i -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t7), Apply ((:.) (Arg (Stack (TW t2 (i -> i -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t7), Apply ((:.) (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6)))) ((:.) ((:.) Z ()) (TermArg b)) -> t7), Apply ((:.) (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) ()) -> t7), Apply ((:.) (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6)))) ((:.) ((:.) Z (TermArg b1)) (TermArg b)) -> t7), Apply (Arg (Stack (TW t1 (i2 -> i2 -> t8 t6))) -> t7), Apply (Arg (Stack (TW t2 (i -> i -> t8 t6))) -> t7), Apply (Arg (Stack (TW t3 (i1 -> i1 -> t8 t6))) -> t7), Element (Stack (TW t1 (i2 -> i2 -> t8 t6))) i3, Element (Stack (TW t1 (i2 -> i2 -> t8 t6))) i2, Element (Stack (TW t1 (i2 -> i2 -> t8 t6))) i, Element (Stack (TW t1 (i2 -> i2 -> t8 t6))) i1, Element (Stack (TW t2 (i -> i -> t8 t6))) i3, Element (Stack (TW t2 (i -> i -> t8 t6))) i2, Element (Stack (TW t2 (i -> i -> t8 t6))) i, Element (Stack (TW t2 (i -> i -> t8 t6))) i1, Element (Stack (TW t3 (i1 -> i1 -> t8 t6))) i3, Element (Stack (TW t3 (i1 -> i1 -> t8 t6))) i2, Element (Stack (TW t3 (i1 -> i1 -> t8 t6))) i, Element (Stack (TW t3 (i1 -> i1 -> t8 t6))) i1, MkStream t8 S i2, MkStream t8 (Stack (TW t1 (i2 -> i2 -> t8 t6))) i3, MkStream t8 (Stack (TW t1 (i2 -> i2 -> t8 t6))) i2, MkStream t8 (Stack (TW t1 (i2 -> i2 -> t8 t6))) i, MkStream t8 (Stack (TW t1 (i2 -> i2 -> t8 t6))) i1, MkStream t8 (Stack (TW t2 (i -> i -> t8 t6))) i3, MkStream t8 (Stack (TW t2 (i -> i -> t8 t6))) i2, MkStream t8 (Stack (TW t2 (i -> i -> t8 t6))) i, MkStream t8 (Stack (TW t2 (i -> i -> t8 t6))) i1, MkStream t8 (Stack (TW t3 (i1 -> i1 -> t8 t6))) i3, MkStream t8 (Stack (TW t3 (i1 -> i1 -> t8 t6))) i2, MkStream t8 (Stack (TW t3 (i1 -> i1 -> t8 t6))) i, MkStream t8 (Stack (TW t3 (i1 -> i1 -> t8 t6))) i1, RuleContext i3, RuleContext i2, RuleContext i, RuleContext i1, TermStream t8 (TermSymbol (TermSymbol M Epsilon) Epsilon) (Elm S i2) i2, TermStream t8 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t1 (i2 -> i2 -> t8 t6))) i1) i1, TermStream t8 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t2 (i -> i -> t8 t6))) i1) i1, TermStream t8 (TermSymbol (TermSymbol M Deletion) b) (Elm (Stack (TW t3 (i1 -> i1 -> t8 t6))) i1) i1, TermStream t8 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t1 (i2 -> i2 -> t8 t6))) i) i, TermStream t8 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t3 (i1 -> i1 -> t8 t6))) i) i, TermStream t8 (TermSymbol (TermSymbol M b1) Deletion) (Elm (Stack (TW t2 (i -> i -> t8 t6))) i) i, TermStream t8 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t1 (i2 -> i2 -> t8 t6))) i2) i2, TermStream t8 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t2 (i -> i -> t8 t6))) i2) i2, TermStream t8 (TermSymbol (TermSymbol M b1) b) (Elm (Stack (TW t3 (i1 -> i1 -> t8 t6))) i2) i2, TermStaticVar (TermSymbol (TermSymbol M Epsilon) Epsilon) i2, TermStaticVar (TermSymbol (TermSymbol M Deletion) b) i1, TermStaticVar (TermSymbol (TermSymbol M b1) Deletion) i, TermStaticVar (TermSymbol (TermSymbol M b1) b) i2, Build (TW t1 (i2 -> i2 -> t8 t6)), Build (TW t2 (i -> i -> t8 t6)), Build (TW t3 (i1 -> i1 -> t8 t6))) => SigGotoh t8 t7 t6 t5 t4 -> t3 -> t2 -> t1 -> t -> b1 -> b -> (:.) ((:.) ((:.) ((:.) Z (TW t3 (i1 -> i1 -> t8 t6))) (TW t2 (i -> i -> t8 t6))) (TW t1 (i2 -> i2 -> t8 t6))) (TW t (i3 -> i3 -> t8 t6)) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.Seq.Align.Global.Affine2.SigGotoh mL0 xL0 rL0 t_b_0_0 t_u_1_0) (DP.Seq.Align.Global.Affine2.SigGotoh mR0 xR0 rR0 t_b_0_0 t_u_1_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.Seq.Align.Global.Affine2.SigGotoh mL0 xL0 rL0 t_b_0_0 t_u_1_0) (DP.Seq.Align.Global.Affine2.SigGotoh mR0 xR0 rR0 t_b_0_0 t_u_1_0) module DP.HMM.States2 data SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU SigHMM :: (() -> s_a10kS) -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) -> (Stream m_a10kR s_a10kS -> m_a10kR r_a10kT) -> SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU [done] :: SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU -> (() -> s_a10kS) [mstay] :: SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) [mtop] :: SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) [pstay] :: SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) [ptom] :: SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU -> (s_a10kS -> t_x_0__a10kU -> s_a10kS) [h] :: SigHMM m_a10kR s_a10kS r_a10kT t_x_0__a10kU -> (Stream m_a10kR s_a10kS -> m_a10kR r_a10kT) gHMM :: ((~#) * * (Fun (Arg ((:!:) (Stack (TW t (i -> i -> t5 t3))) b) -> t4)) (t4 -> t2 -> t4), (~#) * * (Fun (Arg ((:!:) (Stack (TW t1 (i1 -> i1 -> t5 t3))) b) -> t4)) (t4 -> t2 -> t4), Element ((:!:) (Stack (TW t (i -> i -> t5 t3))) b) i, Element ((:!:) (Stack (TW t (i -> i -> t5 t3))) b) i1, Element ((:!:) (Stack (TW t1 (i1 -> i1 -> t5 t3))) b) i, Element ((:!:) (Stack (TW t1 (i1 -> i1 -> t5 t3))) b) i1, MkStream t5 ((:!:) S Epsilon) i1, MkStream t5 ((:!:) (Stack (TW t (i -> i -> t5 t3))) b) i, MkStream t5 ((:!:) (Stack (TW t (i -> i -> t5 t3))) b) i1, MkStream t5 ((:!:) (Stack (TW t1 (i1 -> i1 -> t5 t3))) b) i, MkStream t5 ((:!:) (Stack (TW t1 (i1 -> i1 -> t5 t3))) b) i1, RuleContext i, RuleContext i1, Apply (Arg ((:!:) (Stack (TW t (i -> i -> t5 t3))) b) -> t4), Apply (Arg ((:!:) (Stack (TW t1 (i1 -> i1 -> t5 t3))) b) -> t4), Build (TW t (i -> i -> t5 t3)), Build (TW t1 (i1 -> i1 -> t5 t3))) => SigHMM t5 t4 t3 t2 -> t1 -> t -> b -> (:.) ((:.) Z (TW t1 (i1 -> i1 -> t5 t3))) (TW t (i -> i -> t5 t3)) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, mL0 ~ mR0, xL0 ~ rL0) => ADP.Fusion.Core.TH.Backtrack.ProductBacktracking (DP.HMM.States2.SigHMM mL0 xL0 rL0 t_x_0_0) (DP.HMM.States2.SigHMM mR0 xR0 rR0 t_x_0_0) instance (GHC.Base.Monad mL0, GHC.Base.Monad mR0, GHC.Classes.Eq xL0, GHC.Classes.Ord xL0, GHC.Classes.Ord xR0, mL0 ~ mR0) => ADP.Fusion.Core.TH.Backtrack.ProductCombining (DP.HMM.States2.SigHMM mL0 xL0 rL0 t_x_0_0) (DP.HMM.States2.SigHMM mR0 xR0 rR0 t_x_0_0)