Zulip Chat Archive

Stream: new members

Topic: Never mind


Martin Epstein (Oct 30 2025 at 04:39):

I would like to prove this extremely difficult theorem:

example (n : ) (P :   Prop := fun x => n = x) : P n := by
  sorry

Here is the infoview:

n : 
P :   Prop
 P n

The definition of P has mysteriously vanished. If I enter unfold P then I get the error "Tactic unfold failed: Local variable P has no definition". Is there a way to finish this proof or have I set it up incorrectly somehow?

Wang Jingting (Oct 30 2025 at 04:47):

I think the thing you put after := is something like a default value for an argument of the function, but that's not the only value the argument could take.

Martin Epstein (Oct 30 2025 at 04:47):

I just came up with this solution:

example (n : ) (P :   Prop)
(P_def :  m, P m  m = n) : P n := by
  specialize P_def n
  rw [P_def]

Martin Epstein (Oct 30 2025 at 04:48):

Wang Jingting said:

I think the thing you put after := is something like a default value for an argument of the function, but that's not the only value the argument could take.

Interesting, thanks.


Last updated: Dec 20 2025 at 21:32 UTC