Martin Escardo and Tom de Jong, August 2024 Moved from the file InjectiveTypes.CounterExamples on 12 September 2024. \begin{code} {-# OPTIONS --safe --without-K #-} open import UF.PropTrunc module Apartness.Properties (pt : propositional-truncations-exist) where open import MLTT.Spartan open import Apartness.Definition open import UF.ClassicalLogic open import UF.FunExt open import UF.Size open import UF.Subsingletons open import UF.Subsingletons-FunExt open Apartness pt open PropositionalTruncation pt \end{code} We define an apartness relation to be nontrivial if it tells two points apart. \begin{code} has-two-points-apart : {X : π€ Μ } β Apartness X π₯ β π₯ β π€ Μ has-two-points-apart {π€} {π₯} {X} (_β―_ , Ξ±) = Ξ£ (x , y) κ X Γ X , (x β― y) Nontrivial-Apartness : π€ Μ β (π₯ : Universe) β π₯ βΊ β π€ Μ Nontrivial-Apartness X π₯ = Ξ£ a κ Apartness X π₯ , has-two-points-apart a \end{code} Assuming weak excluded middle, every type with two distinct points can be equipped with a nontrivial apartness relation. \begin{code} WEM-gives-that-type-with-two-distinct-points-has-nontrivial-apartness : funext π€ π€β β {X : π€ Μ } β has-two-distinct-points X β typal-WEM π€ β Nontrivial-Apartness X π€ WEM-gives-that-type-with-two-distinct-points-has-nontrivial-apartness {π€} fe {X} htdp wem = Ξ³ where s : (x y z : X) β x β y β (x β z) + (y β z) s x y z d = Cases (wem (x β z)) (Ξ» (a : Β¬ (x β z)) β inr (Ξ» {refl β a d})) (Ξ» (b : ¬¬ (x β z)) β inl (three-negations-imply-one b)) c : is-cotransitive _β _ c x y z d = β£ s x y z d β£ Ξ³ : Nontrivial-Apartness X π€ Ξ³ = (_β _ , ((Ξ» x y β negations-are-props fe) , β -is-irrefl , (Ξ» x y β β -sym) , c)) , htdp WEM-gives-that-type-with-two-distinct-points-has-nontrivial-apartnessβΊ : funext π€ π€β β {X : π€ βΊ Μ } β is-locally-small X β has-two-distinct-points X β typal-WEM π€ β Nontrivial-Apartness X π€ WEM-gives-that-type-with-two-distinct-points-has-nontrivial-apartnessβΊ {π€} fe {X} ls ((xβ , xβ) , d) wem = Ξ³ where _β―_ : X β X β π€ Μ x β― y = x β β¦ ls β§ y s : (x y z : X) β x β― y β (x β― z) + (y β― z) s x y z a = Cases (wem (x β― z)) (inr β f) (inl β g) where f : Β¬ (x β― z) β y β― z f = contrapositive (Ξ» (e : y οΌβ¦ ls β§ z) β transport (x β―_) (οΌβ¦ ls β§-gives-οΌ e) a) g : ¬¬ (x β― z) β x β― z g = three-negations-imply-one c : is-cotransitive _β―_ c x y z d = β£ s x y z d β£ Ξ³ : Nontrivial-Apartness X π€ Ξ³ = (_β―_ , (Ξ» x y β negations-are-props fe) , (Ξ» x β β β¦ ls β§-irrefl) , (Ξ» x y β β β¦ ls β§-sym) , c) , (xβ , xβ) , β -gives-β β¦ ls β§ d \end{code} In particular, weak excluded middle yields a nontrivial apartness relation on any universe. \begin{code} WEM-gives-non-trivial-apartness-on-universe : funext (π€ βΊ) π€β β typal-WEM (π€ βΊ) β Nontrivial-Apartness (π€ Μ ) (π€ βΊ) WEM-gives-non-trivial-apartness-on-universe fe = WEM-gives-that-type-with-two-distinct-points-has-nontrivial-apartness fe universe-has-two-distinct-points \end{code} Further properties of apartness relations can be found in the following file InjectiveTypes.CounterExamples. In particular, it is shown that the universe can't have any nontrivial apartness unless weak excluded middle holds.