summaryrefslogtreecommitdiff
path: root/AAC_print.mli
blob: bacd806cbdc97ef8c173242050f5109e67a9fcb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
(***************************************************************************)
(*  This is part of aac_tactics, it is distributed under the terms of the  *)
(*         GNU Lesser General Public License version 3                     *)
(*              (see file LICENSE for more details)                        *)
(*                                                                         *)
(*       Copyright 2009-2010: Thomas Braibant, Damien Pous.                *)
(***************************************************************************)

(** Pretty printing functions we use for the aac_instances
    tactic. *)


(** The main printing function. {!print} uses the [Term.rel_context]
    to rename the variables, and rebuilds raw Coq terms (for the given
    context, and the terms in the environment). In order to do so, it
    requires the information gathered by the {!AAC_theory.Trans} module.*)
val print :
  AAC_coq.Relation.t ->
  AAC_theory.Trans.ir ->
  (int * AAC_matcher.Terms.t * AAC_matcher.Subst.t AAC_search_monad.m) AAC_search_monad.m ->
  Term.rel_context  ->
  Proof_type.tactic