let set_ppterm f = ppterm := f;;
-let ppterm ?(context=[]) ?(subst=[]) ?(metasenv=[]) t =
+let ppterm ~context ~subst ~metasenv t =
!ppterm ~context ~subst ~metasenv t
;;
;;
let ppobj = function
- | (u,_,_,_,NCic.Fixpoint (b, fl, _)) ->
- "let rec "^NUri.string_of_uri u^"\n"^
+ | (u,_,metasenv,subst,NCic.Fixpoint (b, fl, _)) ->
+ NUri.string_of_uri u^"\n"^
+ "let rec "^
String.concat "\nand "
(List.map (fun (_,name,n,ty,bo) ->
- name ^ " on " ^ string_of_int n ^ " : " ^ ppterm ty ^ " :=\n"^
- ppterm bo) fl)
- | (u,_,_,_,NCic.Inductive (b, _,tl, _)) -> "inductive"
- | (u,_,_,_,NCic.Constant (_,_,_, _, _)) -> "constant"
+ name ^ " on " ^ string_of_int n ^ " : " ^
+ ppterm ~metasenv ~subst ~context:[] ty ^ " :=\n"^
+ ppterm ~metasenv ~subst ~context:[] bo) fl)
+ | (u,_,_,_,NCic.Inductive (b, _,tyl, _)) -> "inductive"
+ | (u,_,metasenv,subst,NCic.Constant (_,name,None,ty, _)) ->
+ "axiom " ^ name ^ " : " ^
+ ppterm ~metasenv ~subst ~context:[] ty ^ "\n"
+ | (u,_,metasenv,subst,NCic.Constant (_,name,Some bo,ty, _)) ->
+ "definition " ^ name ^ " : " ^
+ ppterm ~metasenv ~subst ~context:[] ty ^ ":=\n"^
+ ppterm ~metasenv ~subst ~context:[] bo ^ "\n"
;;
-
-
-