Zulip Chat Archive

Stream: new members

Topic: Getting witness from existentially quantified statement


George Tsoukalas (Apr 19 2024 at 14:42):

Hi all,

I have a theorem which states the existence of an element satisfying a property, quantified over all elements:

theorem ex
(S : Type*)
(P : S  S  Prop)
:  x,  y, P x y
:= sorry

-- How to make function S → S which takes in x and "outputs" the y which satisfies P x y?

I would like to define a function which maps (x : S) to the y that exists (afforded by theorem ex). How can I go about this? How close is what I am looking for to definitional equivalence of the statement of ex?

Eric Rodriguez (Apr 19 2024 at 14:45):

docs#Exists.choose

George Tsoukalas (Apr 19 2024 at 14:47):

Of course! Thank you!

Sébastien Gouëzel (Apr 19 2024 at 14:48):

Or the choose tactic if you're in the middle of a proof.


Last updated: May 02 2025 at 03:31 UTC