Disjoint subtypes
Content created by Louis Wasserman.
Created on 2025-02-25.
Last modified on 2025-02-25.
module foundation.disjoint-subtypes where
Imports
open import foundation.cartesian-product-types open import foundation.dependent-pair-types open import foundation.empty-types open import foundation.intersections-subtypes open import foundation.propositions open import foundation.subtypes open import foundation.universe-levels
Idea
Two subtypes are disjoint¶ if their intersection is empty.
Definition
module _ {l1 l2 l3 : Level} {A : UU l1} (B : subtype l2 A) (C : subtype l3 A) where disjoint-subtype-Prop : Prop (l1 ⊔ l2 ⊔ l3) disjoint-subtype-Prop = Π-Prop A (λ a → is-empty-Prop (is-in-subtype B a × is-in-subtype C a)) disjoint-subtype : UU (l1 ⊔ l2 ⊔ l3) disjoint-subtype = type-Prop disjoint-subtype-Prop
Properties
A subtype disjoint from itself is empty
module _ {l1 l2 : Level} {A : UU l1} (B : subtype l2 A) where is-empty-disjoint-subtype-self : disjoint-subtype B B → is-empty (type-subtype B) is-empty-disjoint-subtype-self H (b , b∈B) = H b (b∈B , b∈B)
External links
- Disjoint sets at Wikidata
Recent changes
- 2025-02-25. Louis Wasserman. Disjoint subtypes (#1344).