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
|
\DOC SELECT_RULE
\TYPE {SELECT_RULE : thm -> thm}
\SYNOPSIS
Introduces an epsilon term in place of an existential quantifier.
\KEYWORDS
rule, epsilon.
\DESCRIBE
The inference rule {SELECT_RULE} expects a theorem asserting the
existence of a value {x} such that {P} holds. The equivalent assertion
that the epsilon term {@x.P} denotes a value of {x} for
which {P} holds is returned as a theorem.
{
A |- ?x. P
------------------ SELECT_RULE
A |- P[(@x.P)/x]
}
\FAILURE
Fails if applied to a theorem the conclusion of which is not
existentially quantified.
\EXAMPLE
The axiom {INFINITY_AX} in the theory {ind} is of the form:
{
|- ?f. ONE_ONE f /\ ~ONTO f
}
\noindent Applying {SELECT_RULE} to this theorem returns the following.
{
# SELECT_RULE INFINITY_AX;;
val it : thm =
|- ONE_ONE (@f. ONE_ONE f /\ ~ONTO f) /\ ~ONTO (@f. ONE_ONE f /\ ~ONTO f)
}
\USES
May be used to introduce an epsilon term to permit rewriting with a
constant defined using the epsilon operator.
\SEEALSO
CHOOSE, SELECT_AX, SELECT_CONV.
\ENDDOC
|