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 NCic.metasenv -> NCic.substitution -> (* metasenv, substitution *)
49 int * NCic.conjecture -> (* sequent *)
50 Gdome.document (* Math ML *)
52 val mml_of_cic_object:
53 Cic.obj -> (* object *)
54 Gdome.document * (* Math ML *)
55 (Cic.annobj * (* annobj *)
56 ((Cic.id, Cic.term) Hashtbl.t * (* id -> term *)
57 (Cic.id, Cic.id option) Hashtbl.t * (* id -> father id *)
58 (Cic.id, Cic.conjecture) Hashtbl.t * (* id -> conjecture *)
59 (Cic.id, Cic.hypothesis) Hashtbl.t * (* id -> hypothesis *)
60 (Cic.id, Cic2acic.sort_kind) Hashtbl.t * (* ids_to_inner_sorts *)
61 (Cic.id, Cic2acic.anntypes) Hashtbl.t)) (* ids_to_inner_types *)
63 val nmml_of_cic_object: NCic.obj -> Gdome.document
66 map_unicode_to_tex:bool -> int -> Cic.metasenv -> Cic.context -> Cic.term ->
68 val txt_of_cic_sequent:
69 map_unicode_to_tex:bool -> int -> Cic.metasenv -> Cic.conjecture -> string
70 val txt_of_cic_sequent_conclusion:
71 map_unicode_to_tex:bool -> output_type:[`Pattern | `Term] -> int ->
72 Cic.metasenv -> Cic.conjecture -> string
74 (* columns, params, object *)
75 val txt_of_cic_object:
76 map_unicode_to_tex:bool ->
77 ?skip_thm_and_qed:bool -> ?skip_initial_lambdas:int ->
78 int -> GrafiteAst.inline_param list -> Cic.obj ->
81 (* params, uri or baseuri *)
82 val txt_of_inline_macro:
83 map_unicode_to_tex:bool -> GrafiteAst.inline_param list -> string ->
87 map_unicode_to_tex:bool ->
90 (Cic.term, Cic.lazy_term) GrafiteAst.macro -> string
92 (* columns, rendering depth, context, term *)
93 val procedural_txt_of_cic_term:
94 map_unicode_to_tex:bool -> int -> GrafiteAst.inline_param list ->
95 Cic.context -> Cic.term ->