File: DISCH_ALL.doc

package info (click to toggle)
hol-light 20120602-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 23,452 kB
  • sloc: ml: 348,797; cpp: 438; java: 279; makefile: 252; sh: 183; yacc: 108; perl: 78; ansic: 57; sed: 39
file content (40 lines) | stat: -rw-r--r-- 922 bytes parent folder | download | duplicates (7)
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
\DOC DISCH_ALL

\TYPE {DISCH_ALL : thm -> thm}

\SYNOPSIS
Discharges all hypotheses of a theorem.

\KEYWORDS
rule, discharge, assumption, implication.

\DESCRIBE
{
         A1, ..., An |- t
   ----------------------------  DISCH_ALL
    |- A1 ==> ... ==> An ==> t
}

\FAILURE
{DISCH_ALL} will not fail if there are no hypotheses to discharge, it will
simply return the theorem unchanged.

\EXAMPLE
{
  # end_itlist CONJ (map ASSUME [`p:bool`; `q:bool`; `r:bool`]);;
  val it : thm = p, q, r |- p /\ q /\ r

  # DISCH_ALL it;;
  val it : thm = |- r ==> q ==> p ==> p /\ q /\ r
}

\COMMENTS
Users should not rely on the hypotheses being discharged in any particular
order.  Two or more alpha-convertible hypotheses will be discharged by a
single implication; users should not rely on which hypothesis appears in the
implication.

\SEEALSO
DISCH, DISCH_TAC, DISCH_THEN, STRIP_TAC, UNDISCH, UNDISCH_ALL, UNDISCH_TAC.

\ENDDOC