1 ==================== Typechecked ====================
3 _/\_ n_tr3K a_tr3L b_tr3M -> \ tpl_B1 ->
4 MkAFE{-r3S,x-}{i} {_@_ n_tr3K _@_ a_tr3L _@_ b_tr3M tpl_B1}
6 _/\_ a_tr3O b_tr3P -> \ tpl_B1 ->
7 MkFG{-r3U,x-}{i} {_@_ a_tr3O _@_ b_tr3P tpl_B1}
9 _/\_ a_tr3R -> \ tpl_B1 -> MkOL{-r3W,x-}{i} {_@_ a_tr3R tpl_B1}
10 AbsBinds [taRj, taRm] [] [([taRj, taRm], sNd{-r3u,x-}, sNd_aR9)]
11 sNd_aR9 (f_r3F, s_r3G) = s_r3G
12 AbsBinds [taRL, taRP] [] [([taRL, taRP], mAp{-r3v,x-}, mAp_aRp)]
13 mAp_aRp f_r3z PrelBase.[]{-5i,w-}{i} = PrelBase.[]{-5i,w-}{i} taRP
14 mAp_aRp f_r3B (x_r3C PrelBase.:{-55,w-}{i} xs_r3D)
15 = PrelBase.:{-55,w-}{i} taRP (f_r3B x_r3C) (mAp_aRp f_r3B xs_r3D)
19 [([taS5, taS6], ranOAL{-r3s,x-}, ranOAL_aS0)]
20 ranOAL_aS0 (MkOL{-r3W,x-}{i} xs_r3x)
21 = mAp{-r3v,x-} [(taS5, taS6), taS6] sNd{-r3u,x-} [taS5, taS6]
26 [([taSy, taSz, taSA], ranAFE{-r3t,x-}, ranAFE_aSp)]
27 ranAFE_aSp (MkAFE{-r3S,x-}{i} nfs_r3I)
28 = ranOAL{-r3s,x-} [taSy, FG{-r3V,x-} taSz taSA] nfs_r3I
32 [([taT1, taT3, taT2], $d1{-rTd,x-}, d.Eval_aSN)]
33 d.Eval_aSN = ({-dict-} [] [])
34 AbsBinds [taT4, taT5] [] [([taT4, taT5], $d2{-rTc,x-}, d.Eval_aSU)]
35 d.Eval_aSU = ({-dict-} [] [])
36 AbsBinds [taT6] [] [([taT6], $d3{-rTb,x-}, d.Eval_aT0)]
37 d.Eval_aT0 = ({-dict-} [] [])
39 ghc: module version changed to 1; reason: no old .hi file
40 _interface_ ShouldSucceed 1
44 PrelBase 1 :: $d2 1 $d38 1 $d40 1 $d42 1 $d45 1 $d47 1 Eval 1;
47 ShouldSucceed mAp ranAFE ranOAL sNd AFE(MkAFE) FG(MkFG) OL(MkOL);
49 instance _forall_ [n a b] => {PrelBase.Eval (AFE n a b)} = $d1;
50 instance _forall_ [a b] => {PrelBase.Eval (FG a b)} = $d2;
51 instance _forall_ [a] => {PrelBase.Eval (OL a)} = $d3;
53 1 $d1 _:_ _forall_ [n a b] => {PrelBase.Eval (AFE n a b)} ;;
54 1 $d2 _:_ _forall_ [a b] => {PrelBase.Eval (FG a b)} ;;
55 1 $d3 _:_ _forall_ [a] => {PrelBase.Eval (OL a)} ;;
56 1 data AFE n a b = MkAFE (OL (n, FG a b)) ;
57 1 data FG a b = MkFG (OL (a, b)) ;
58 1 data OL a = MkOL [a] ;
59 1 mAp _:_ _forall_ [ta tb] => (ta -> tb) -> [ta] -> [tb] ;;
60 1 ranAFE _:_ _forall_ [ta tb tc] => AFE ta tb tc -> [FG tb tc] ;;
61 1 ranOAL _:_ _forall_ [ta tb] => OL (ta, tb) -> [tb] ;;
62 1 sNd _:_ _forall_ [ta tb] => (ta, tb) -> tb ;;