1 (* Copyright (C) 2000-2002, HELM Team.
3 * This file is part of HELM, an Hypertextual, Electronic
4 * Library of Mathematics, developed at the Computer Science
5 * Department, University of Bologna, Italy.
7 * HELM is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
12 * HELM is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with HELM; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
22 * For details, see the HELM World-Wide-Web page,
23 * http://cs.unibo.it/helm/.
26 (***************************************************************************)
30 (* Andrea Asperti <asperti@cs.unibo.it> *)
34 (***************************************************************************)
36 val mml_of_cic_sequent:
37 Cic.metasenv -> (* metasenv *)
38 Cic.conjecture -> (* sequent *)
39 Gdome.document * (* Math ML *)
40 Cic.conjecture * (* unshared sequent *)
41 (Cic.annconjecture * (* annsequent *)
42 ((Cic.id, Cic.term) Hashtbl.t * (* id -> term *)
43 (Cic.id, Cic.id option) Hashtbl.t * (* id -> father id *)
44 (Cic.id, Cic.hypothesis) Hashtbl.t * (* id -> hypothesis *)
45 (Cic.id, Cic2acic.sort_kind) Hashtbl.t)) (* ids_to_inner_sorts *)
47 val nmml_of_cic_sequent:
48 #NCicCoercion.status ->
49 NCic.metasenv -> NCic.substitution -> (* metasenv, substitution *)
50 int * NCic.conjecture -> (* sequent *)
51 Gdome.document (* Math ML *)
53 val mml_of_cic_object:
54 Cic.obj -> (* object *)
55 Gdome.document * (* Math ML *)
56 (Cic.annobj * (* annobj *)
57 ((Cic.id, Cic.term) Hashtbl.t * (* id -> term *)
58 (Cic.id, Cic.id option) Hashtbl.t * (* id -> father id *)
59 (Cic.id, Cic.conjecture) Hashtbl.t * (* id -> conjecture *)
60 (Cic.id, Cic.hypothesis) Hashtbl.t * (* id -> hypothesis *)
61 (Cic.id, Cic2acic.sort_kind) Hashtbl.t * (* ids_to_inner_sorts *)
62 (Cic.id, Cic2acic.anntypes) Hashtbl.t)) (* ids_to_inner_types *)
64 val nmml_of_cic_object: #NCicCoercion.status -> NCic.obj -> Gdome.document
67 map_unicode_to_tex:bool -> int -> Cic.metasenv -> Cic.context -> Cic.term ->
69 val txt_of_cic_sequent:
70 map_unicode_to_tex:bool -> int -> Cic.metasenv -> Cic.conjecture -> string
71 val txt_of_cic_sequent_conclusion:
72 map_unicode_to_tex:bool -> output_type:[`Pattern | `Term] -> int ->
73 Cic.metasenv -> Cic.conjecture -> string
75 (* columns, params, object *)
76 val txt_of_cic_object:
77 map_unicode_to_tex:bool ->
78 ?skip_thm_and_qed:bool -> ?skip_initial_lambdas:int ->
79 int -> GrafiteAst.inline_param list -> Cic.obj ->
82 (* params, uri or baseuri *)
83 val txt_of_inline_macro:
84 map_unicode_to_tex:bool -> GrafiteAst.inline_param list -> string ->
88 map_unicode_to_tex:bool ->
91 (Cic.term, Cic.lazy_term) GrafiteAst.macro -> string
93 (* columns, rendering depth, context, term *)
94 val procedural_txt_of_cic_term:
95 map_unicode_to_tex:bool -> int -> GrafiteAst.inline_param list ->
96 Cic.context -> Cic.term ->