aboutsummaryrefslogtreecommitdiffhomepage
path: root/tactics/hiddentac.ml
blob: bc07c9a4d6ea4bd8c9d2e2fb96ccf1abc038680b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
(***********************************************************************)
(*  v      *   The Coq Proof Assistant  /  The Coq Development Team    *)
(* <O___,, *        INRIA-Rocquencourt  &  LRI-CNRS-Orsay              *)
(*   \VV/  *************************************************************)
(*    //   *      This file is distributed under the terms of the      *)
(*         *       GNU Lesser General Public License Version 2.1       *)
(***********************************************************************)

(* $Id$ *)

open Term
open Proof_type
open Tacmach
open Tacentries

let h_clear ids         = v_clear  [(Clause (List.map (fun x -> InHyp x) ids))]
let h_move dep id1 id2  = 
 (if dep then v_move else v_move_dep) [Identifier id1;Identifier id2]
let h_contradiction     = v_contradiction []
let h_reflexivity       = v_reflexivity   []
let h_symmetry          = v_symmetry      []
let h_assumption        = v_assumption    []
let h_absurd c          = v_absurd [(Constr c)]
let h_exact  c          = v_exact  [(Constr c)]
let h_one_constructor i = v_constructor [(Integer i)]
let h_any_constructor   = v_constructor []
let h_transitivity c    = v_transitivity [(Constr c)]
let h_simplest_left     = v_left [(Cbindings [])]
let h_simplest_right    = v_right [(Cbindings [])]
let h_split     c       = v_split [(Constr c);(Cbindings [])]
let h_apply c s         = v_apply  [(Constr c);(Cbindings s)]
let h_simplest_apply c  = v_apply  [(Constr c);(Cbindings [])]
let h_cut      c        = v_cut [(Constr c)]
let h_simplest_elim c   = v_elim [(Constr c);(Cbindings [])]
let h_elimType     c    = v_elimType [(Constr c)]
let h_inductionInt  i   = v_induction[(Integer i)]
let h_inductionId   id  = v_induction[(Identifier id)]
let h_simplest_case   c = v_case [(Constr c);(Cbindings [])]
let h_caseType        c = v_caseType [(Constr c)]
let h_destructInt  i    = v_destruct [(Integer i)]
let h_destructId   id   = v_destruct [(Identifier id)]