| Include (_,path) -> "include " ^ path
| Qed _ -> "qed"
| Drop _ -> "drop"
- | Set (_, name, value) -> sprintf "Set \"%s\" \"%s\"" name value
- | Coercion (_,_) -> "Coercion IMPLEMENT ME!!!!!"
+ | Set (_, name, value) -> sprintf "set \"%s\" \"%s\"" name value
+ | Coercion (_,term) -> sprintf "coercion %s" (pp_term_ast term)
| Alias (_,s) -> pp_alias s
| Obj (_,obj) -> pp_obj obj
let pp_statement = function
| Executable (_, ex) -> pp_executable ex
| Comment (_, c) -> pp_comment c
+
+let pp_cic_command = function
+ | Include (_,path) -> "include " ^ path
+ | Qed _ -> "qed"
+ | Drop _ -> "drop"
+ | Coercion (_,term) -> sprintf "coercion %s" (CicPp.ppterm term)
+ | Set (_, _, _)
+ | Alias (_,_)
+ | Obj (_,_) -> assert false (* not implemented *)
val pp_tactical: (CicAst.term, string) TacticAst.tactical -> string
val pp_alias: TacticAst.alias_spec -> string
+val pp_cic_command: (Cic.term,Cic.obj) TacticAst.command -> string