Zulip Chat Archive
Stream: general
Topic: Assumptions about data produced by `classical.choice`
Jesse Michael Han (Apr 29 2019 at 17:47):
I think of data produced by a choice principle as a "generic element" satisfying the given specification, so that e.g. it should not be possible to prove that
(classical.choice (by apply_instance) : nat) = 0
Is it inconsistent to assume something like this, though?
Simon Hudon (Apr 29 2019 at 17:50):
If that was inconsistent, wouldn't that mean that you could prove this?
(classical.choice (by apply_instance) : nat) ≠ 0
Jesse Michael Han (Apr 29 2019 at 17:51):
ah yes, you're right
Jesse Michael Han (Apr 29 2019 at 17:53):
I guess Lean really doesn't decide such things (of course this generic nat must be interpreted literally as some nat if we take a model in ZFC, but there's no guarantee which one)
Simon Hudon (Apr 29 2019 at 17:57):
So you can construct a model where it gives you 0 and a different one where it gives you 1
Jesse Michael Han (Apr 29 2019 at 17:57):
another related question: if we can prove P (classical.choice (h : nonempty X) : X)
then is it a (meta)theorem that this lifts to a proof of
(∀ x : X, P x)
?
Simon Hudon (Apr 29 2019 at 18:03):
I don't think that's a theorem but I would think that it is a meta theorem
Kevin Buzzard (Apr 29 2019 at 18:04):
classical.choice
is an axiom; my guess is that any statement you can make about the natural it produces will be independent.
Chris Hughes (Apr 29 2019 at 18:27):
What if P
is λ x, x = (classical.choice (h : nonempty X) : X)
?
Last updated: Dec 20 2023 at 11:08 UTC