1\DOC EXISTS_IMP_CONV
2
3\TYPE {EXISTS_IMP_CONV : conv}
4
5\SYNOPSIS
6Moves an existential quantification inwards through an implication.
7
8\KEYWORDS
9conversion, quantifier, existential, implication.
10
11\DESCRIBE
12When applied to a term of the form {?x. P ==> Q}, where {x} is not free in
13both {P} and {Q}, {EXISTS_IMP_CONV} returns a theorem of one of three forms,
14depending on occurrences of the variable {x} in {P} and {Q}.  If {x} is free
15in {P} but not in {Q}, then the theorem:
16{
17   |- (?x. P ==> Q) = (!x.P) ==> Q
18}
19is returned.  If {x} is free in {Q} but not in {P}, then the
20result is:
21{
22   |- (?x. P ==> Q) = P ==> (?x.Q)
23}
24And if {x} is free in neither {P} nor {Q}, then the result is:
25{
26   |- (?x. P ==> Q) = (!x.P) ==> (?x.Q)
27}
28
29
30\FAILURE
31{EXISTS_IMP_CONV} fails if it is applied to a term not of the form
32{?x. P ==> Q}, or if it is applied to a term {?x. P ==> Q} in which the
33variable {x} is free in both {P} and {Q}.
34
35\SEEALSO
36Conv.LEFT_IMP_FORALL_CONV, Conv.RIGHT_IMP_EXISTS_CONV.
37\ENDDOC
38