Diaconescu’s theorem
Content created by Fredrik Bakke.
Created on 2025-01-07.
Last modified on 2025-01-07.
module foundation.diaconescus-theorem where
Imports
open import foundation.action-on-identifications-functions open import foundation.axiom-of-choice open import foundation.booleans open import foundation.decidable-propositions open import foundation.decidable-types open import foundation.dependent-pair-types open import foundation.law-of-excluded-middle open import foundation.logical-equivalences open import foundation.propositional-truncations open import foundation.propositions open import foundation.universe-levels open import foundation-core.fibers-of-maps open import foundation-core.function-types open import foundation-core.identity-types open import synthetic-homotopy-theory.suspensions-of-propositions open import synthetic-homotopy-theory.suspensions-of-types
Idea
The axiom of choice implies the law of excluded middle. This is often referred to as Diaconescu’s theorem¶.
Theorem
We follow the proof given under Theorem 10.1.14 in [UF13].
Proof. Given a proposition P
, then its
suspension ΣP
is a
set with the property that (N = S) ≃ ΣP
, where N
and S
are the poles of ΣP
. There is a surjection from the
booleans onto the suspension f : bool ↠ ΣP
such that
f true ≐ N
and f false ≐ S
. Its
fiber family is in other words an
inhabited family over ΣP
. Applying the axiom
of choice to this family, we obtain a
mere
section s
of f
which thus exhibits P
as a
logical equivalent to f⁻¹ N = f⁻¹ S
.
The latter is an equation of booleans, and
the booleans have decidable equality so P
must also be decidable.
instance-theorem-Diaconescu : {l : Level} (P : Prop l) → instance-choice₀ ( suspension-set-Prop P) ( fiber map-surjection-bool-suspension) → is-decidable-type-Prop P instance-theorem-Diaconescu P ac-P = rec-trunc-Prop ( is-decidable-Prop P) ( λ s → is-decidable-iff' ( ( iff-equiv (compute-eq-north-south-suspension-Prop P)) ∘iff ( ( λ p → ( inv (pr2 (s north-suspension))) ∙ ( ap map-surjection-bool-suspension p) ∙ ( pr2 (s south-suspension))) , ( ap (pr1 ∘ s)))) ( has-decidable-equality-bool ( pr1 (s north-suspension)) ( pr1 (s south-suspension)))) ( ac-P is-surjective-map-surjection-bool-suspension) theorem-Diaconescu : {l : Level} → level-AC0 l l → LEM l theorem-Diaconescu ac P = instance-theorem-Diaconescu P ( ac (suspension-set-Prop P) (fiber map-surjection-bool-suspension))
References
- [UF13]
- The Univalent Foundations Program. Homotopy Type Theory: Univalent Foundations of Mathematics. Institute for Advanced Study, 2013. URL: https://homotopytypetheory.org/book/, arXiv:1308.0729.
External links
- Diaconescu’s theorem at Mathswitch
Recent changes
- 2025-01-07. Fredrik Bakke. Logic (#1226).