| Left _ -> current_size + 4
| LetIn (_, term, ident) ->
countterm (current_size + 5 + String.length ident) term
- | Reduce _ -> assert false (* TODO *)
+ | Reduce _
+ | ReduceAt _ -> assert false (* TODO *)
| Reflexivity _ -> current_size + 11
| Replace (_, t1, t2) ->
let size1 = countterm (current_size + 14) t1 in (* replace, with *)
Box.smallskip;
Box.Text([],"=")]);
Box.indent (ast2astBox term)])
- | Reduce _ -> assert false (* TODO *)
+ | Reduce _
+ | ReduceAt _ -> assert false (* TODO *)
| Reflexivity _ -> Box.Text([],"reflexivity")
| Replace (_, t1, t2) ->
Box.V([],
| Reduce (_, kind, Some (terms, `Everywhere)) ->
sprintf "%s in hyp %s" (pp_reduction_kind kind)
(String.concat ", " (List.map pp_term_ast terms))
+ | ReduceAt (_, kind, id, term) ->
+ sprintf "%s %s at %s" (pp_reduction_kind kind) id
+ (pp_term_ast term)
| Reflexivity _ -> "reflexivity"
| Replace (_, t1, t2) ->
sprintf "replace %s with %s" (pp_term_ast t1) (pp_term_ast t2)