- P.fprintf och "%a" (name err) a
- | B.GRef (_, s) ->
- P.fprintf och "$%s" (U.string_of_uri s)
- | B.Cast (_, u, t) ->
- P.fprintf och "{%a}.%a" (pp_term st e) u (pp_term st e) t
- | B.Appl (_, v, t) ->
- P.fprintf och "(%a).%a" (pp_term st e) v (pp_term st e) t
- | B.Bind (a, B.Abst (n, w), t) ->
- let f a =
- let ee = B.push e B.empty a (B.abst n w) in
- P.fprintf och "%a[%a:%a].%a" (pp_level st) n (name C.err) a (pp_term st e) w (pp_term st ee) t
- in
- rename f e a
- | B.Bind (a, B.Abbr v, t) ->
- let f a =
- let ee = B.push e B.empty a (B.abbr v) in
- P.fprintf och "[%a=%a].%a" (name C.err) a (pp_term st e) v (pp_term st ee) t
- in
- rename f e a
- | B.Bind (a, B.Void, t) ->
- let f a =
- let ee = B.push e B.empty a B.Void in
- P.fprintf och "[%a].%a" (name C.err) a (pp_term st ee) t
- in
- rename f e a
+ KP.fprintf och "%a" (name err) a
+ | B.GRef (_, s) ->
+ KP.fprintf och "$%s" (U.string_of_uri s)
+ | B.Cast (_, u, t) ->
+ KP.fprintf och "{%a}.%a" (pp_term st e) u (pp_term st e) t
+ | B.Appl (_, v, t) ->
+ KP.fprintf och "(%a).%a" (pp_term st e) v (pp_term st e) t
+ | B.Bind (a, B.Abst (x, n, w), t) ->
+ let a = R.alpha B.mem e a in
+ let ee = B.push e B.empty a (B.abst x n w) in
+ KP.fprintf och "%a%a[%a:%a].%a" (pp_level st) n pp_reduced x (name C.start) a (pp_term st e) w (pp_term st ee) t
+ | B.Bind (a, B.Abbr v, t) ->
+ let a = R.alpha B.mem e a in
+ let ee = B.push e B.empty a (B.abbr v) in
+ KP.fprintf och "[%a=%a].%a" (name C.start) a (pp_term st e) v (pp_term st ee) t
+ | B.Bind (a, B.Void, t) ->
+ let a = R.alpha B.mem e a in
+ let ee = B.push e B.empty a B.Void in
+ KP.fprintf och "[%a].%a" (name C.start) a (pp_term st ee) t