You can use the Reexpress command to rewrite a
given or a goal in a different but equivalent way. Select the given or
goal that you want to reexpress and give the Reexpress command. A dialog
box will open, offering a number of different ways of reexpressing the
selected statement. (Double-clicking on a given or goal is a shortcut for
selecting it and giving the Reexpress command.) The statement to be
reexpressed appears at the top of the dialog box, and initially the entire
statement is selected. You can apply a reexpression to only part of the
statement by selecting the part you want to reexpress. Selecting works in
the usual way, except that when you drag the mouse across a part of the
statement, what gets selected is the smallest meaningful subexpression
containing the symbols you drag across. For example, if you drag the
mouse across the symbols “x
” in the statement “x
A
y
B”, what will be selected is the
statement “x
A”.
Click on the buttons in the dialog box to perform the indicated
reexpressions on the selected part of the statement.
Once you have reexpressed the statement in the way you want, click the OK button. The new version of the statement will be listed as a variant of the original in the list of givens and goals. A variant of a given or goal is listed below the original and indented. You can select a variant and apply commands to it just like any other given or goal.
Here is what the various buttons in the Reexpress dialog box do:
x(x
A)” as “
y(y
A)”.
”, this button is called
Reexpress Negative. Use it to reexpress the negative statement as an
equivalent positive one. For example, “
x(x
A)” gets reexpressed as
“
x(x
A)” and “
(x
A
x
B)” becomes “x
A
x
B”.
If the “
” symbol is followed by
several quantifiers, pushing this button repeatedly will move the
“
” past the quantifiers one at
a time. When the selected expression does not start with “
”, this button is called Make Negative,
and it reexpresses the expression as an equivalent one starting with
“
”. Often this reverses the
effect of the Reexpress Negative button.
a(a
x
a
y)”, “x
y” gets reexpressed as
“
a(a
x
a
y)”,
and “x
A
B” gets reexpressed as
“x
A
x
B”.
Here is a list of all the reexpressions performed by this button:
| Statements of this form: | Are reexpressed like this: |
A B |
a(a A a B) |
A = |
![]() a(a A)
|
| (a, b) = (c, d) | a = c b = d
|
| A = B | a(a A a B) |
x![]() |
x ≠ x |
x {a1, a2,
...,an} |
x = a1 x = a2 ... x =
an |
x A1 A2 ... An
|
x A1 x A2 ... x An |
x A1 A2 ... An
|
x A1 x A2 ... x An |
x A B |
(x A \ B) (x B \ A)
|
x A \ B |
x A x B |
(a, b) A B |
a A b B |
x A B |
a A b B(x = (a, b)) |
(a, b) R S |
c((a, c) S (c, b) R) |
x R S |
a b c((a, b) S (b, c) R x = (a, c)) |
x U![]() F |
x U![]() A F(x A)
|
x![]() F |
A F(x A)
|
x![]() (A) |
x A |
(a, b) R-1 |
(b, a) R |
x R-1 |
a b(x = (a, b) (b, a) R) |
x {y A | P(y)} |
x A P(x) |
x {f(y) |
y A} |
y A(x = f(y)) |
x (a, b) |
x = {a} x = {a, b} |
x AP(x) |
x(x A P(x))
|
x AP(x) |
x(x A P(x))
|
!xP(x)
|
x(P(x)![]() y(P(y) y = x)) |