| C.AImplicit _ -> assert false
| C.AAppl (_, []) -> assert false
-and xats frm vs =
- let map v = F.fprintf frm "{%a}" xat v in
- List.iter map vs
+and xats frm = function
+ | [] -> F.fprintf frm "{}"
+ | vs ->
+ let map v = F.fprintf frm "{%a}" xat v in
+ List.iter map vs
in
xat frm t
| T.Statement _ :: l
| T.Qed _ :: l ->
xl frm l
+ | T.Reflexivity _ :: l ->
+ F.fprintf frm "\\Reflexivity"; xl frm l
+ | T.Exact (t, _) :: l ->
+ F.fprintf frm "\\Exact{%a}" xat t; xl frm l
| T.Intros (_, [r], _) :: l ->
F.fprintf frm "\\Intro{%a}{%a}" xx r xl l
| T.LetIn (r, v, _) :: l ->
| T.Elim _ :: _ -> assert false
| T.Cut _ :: _ -> assert false
-and xls frm ls =
- let map l = F.fprintf frm "{%a}" xl l in
- List.iter map (List.rev ls)
+and xls frm = function
+ | [] -> F.fprintf frm "{}"
+ | ls ->
+ let map l = F.fprintf frm "{%a}" xl l in
+ List.iter map (List.rev ls)
in
F.fprintf frm "%a@\n" xl l