equal
deleted
inserted
replaced
25 in |
25 in |
26 P.INST_TYPE lambda th thy' |
26 P.INST_TYPE lambda th thy' |
27 end |
27 end |
28 | rp (PSubst(prfs,ctxt,prf)) thy = |
28 | rp (PSubst(prfs,ctxt,prf)) thy = |
29 let |
29 let |
30 val (thy',ths) = foldr (fn (p,(thy,ths)) => |
30 val (thy',ths) = fold_rev (fn p => fn (thy, ths) => |
31 let |
31 let |
32 val (thy',th) = rp' p thy |
32 val (thy',th) = rp' p thy |
33 in |
33 in |
34 (thy',th::ths) |
34 (thy',th::ths) |
35 end) (thy,[]) prfs |
35 end) prfs (thy,[]) |
36 val (thy'',th) = rp' prf thy' |
36 val (thy'',th) = rp' prf thy' |
37 in |
37 in |
38 P.SUBST ths ctxt th thy'' |
38 P.SUBST ths ctxt th thy'' |
39 end |
39 end |
40 | rp (PAbs(prf,v)) thy = |
40 | rp (PAbs(prf,v)) thy = |