Zulip Chat Archive
Stream: new members
Topic: Extract Subexpression in Proof
Marcus Rossel (Mar 06 2021 at 15:24):
Is it possible to give a name to specific subexpressions in a proof?
E.g. if the goal state is:
⊢(foo bar baz 1 2 3) + (foo bar baz 1 2 3) - (foo bar baz 1 2 3) = (foo bar baz 1 2 3)
... then can I change this somehow to: ?
e : nat
h_e : e = foo bar baz 1 2 3
⊢ e + e - e = e
Kevin Buzzard (Mar 06 2021 at 15:25):
generalize
-- actually that's not quite what you want. How about just set e := foo bar baz 123 with h_e
? I don't know if that changes the goal but you could just rw \l h_e
or change
the goal to e
(set
is definitional).
Marcus Rossel (Mar 06 2021 at 15:27):
The set e := ... with ...
is exactly what I needed. Thanks :)
Marcus Rossel (Mar 06 2021 at 15:27):
set
does change the goal automatically.
Eric Wieser (Mar 06 2021 at 15:55):
Doesn't generalize
work here in exactly the same way?
Kevin Buzzard (Mar 06 2021 at 18:23):
I don't think it would give you h_e
Last updated: Dec 20 2023 at 11:08 UTC