\DOC FORALL_IMP_CONV \TYPE {FORALL_IMP_CONV : conv} \SYNOPSIS

advertisement
\DOC FORALL_IMP_CONV
\TYPE {FORALL_IMP_CONV : conv}
\SYNOPSIS
Moves a universal quantification inwards through an implication.
\KEYWORDS
conversion, quantifier, universal, implication.
\DESCRIBE
When applied to a term of the form {!x. P ==> Q}, where {x} is not free
in
both {P} and {Q}, {FORALL_IMP_CONV} returns a theorem of one of three
forms,
depending on occurrences of the variable {x} in {P} and {Q}. If {x} is
free
in {P} but not in {Q}, then the theorem:
{
|- (!x. P ==> Q) = (?x.P) ==> Q
}
is returned. If {x} is free in {Q} but not in {P}, then the
result is:
{
|- (!x. P ==> Q) = P ==> (!x.Q)
}
And if {x} is free in neither {P} nor {Q}, then the result is:
{
|- (!x. P ==> Q) = (?x.P) ==> (!x.Q)
}
\FAILURE
{FORALL_IMP_CONV} fails if it is applied to a term not of the form
{!x. P ==> Q}, or if it is applied to a term {!x. P ==> Q} in which the
variable {x} is free in both {P} and {Q}.
\SEEALSO
Conv.LEFT_IMP_EXISTS_CONV, Conv.RIGHT_IMP_FORALL_CONV.
\ENDDOC
Download