Martin Escardo 2012 \begin{code} {-# OPTIONS --safe --without-K #-} module EffectfulForcing.MFPSAndVariations.Continuity where open import MLTT.Spartan open import MLTT.Athenian Baire : 𝓤₀ ̇ Baire = ℕ → ℕ data _=⟪_⟫_ {X : 𝓤₀ ̇ } : (ℕ → X) → List ℕ → (ℕ → X) → 𝓤₀ ̇ where [] : {α α' : ℕ → X} → α =⟪ [] ⟫ α' _∷_ : {α α' : ℕ → X} {i : ℕ} {s : List ℕ} → α i = α' i → α =⟪ s ⟫ α' → α =⟪ i ∷ s ⟫ α' infix 0 _=⟪_⟫_ infixr 3 _∷_ is-continuous : (Baire → ℕ) → 𝓤₀ ̇ is-continuous f = ∀ α → Σ s ꞉ List ℕ , (∀ α' → α =⟪ s ⟫ α' → f α = f α') continuity-extensional : (f g : Baire → ℕ) → (f ∼ g) → is-continuous f → is-continuous g continuity-extensional f g t c α = (pr₁ (c α) , (λ α' r → g α =⟨ (t α)⁻¹ ⟩ f α =⟨ pr₂(c α) α' r ⟩ f α' =⟨ t α' ⟩ g α' ∎)) Cantor : 𝓤₀ ̇ Cantor = ℕ → 𝟚 data BT (X : 𝓤₀ ̇ ) : 𝓤₀ ̇ where [] : BT X _∷_ : X → (𝟚 → BT X) → BT X data _=⟦_⟧_ {X : 𝓤₀ ̇ } : (ℕ → X) → BT ℕ → (ℕ → X) → 𝓤₀ ̇ where [] : {α α' : ℕ → X} → α =⟦ [] ⟧ α' _∷_ : {α α' : ℕ → X}{i : ℕ}{s : 𝟚 → BT ℕ} → α i = α' i → ((j : 𝟚) → α =⟦ s j ⟧ α') → α =⟦ i ∷ s ⟧ α' is-uniformly-continuous : (Cantor → ℕ) → 𝓤₀ ̇ is-uniformly-continuous f = Σ s ꞉ BT ℕ , (∀ α α' → α =⟦ s ⟧ α' → f α = f α') UC-extensional : (f g : Cantor → ℕ) → (f ∼ g) → is-uniformly-continuous f → is-uniformly-continuous g UC-extensional f g t (u , c) = (u , (λ α α' r → g α =⟨ (t α)⁻¹ ⟩ f α =⟨ c α α' r ⟩ f α' =⟨ t α' ⟩ g α' ∎)) embedding-𝟚-ℕ : 𝟚 → ℕ embedding-𝟚-ℕ ₀ = 0 embedding-𝟚-ℕ ₁ = 1 embedding-C-B : Cantor → Baire embedding-C-B = embedding-𝟚-ℕ ∘_ C-restriction : (Baire → ℕ) → (Cantor → ℕ) C-restriction = _∘ embedding-C-B \end{code} TODO. Formulate the usual notions of (uniform) continuity and prove that they are logically equivalent to the above. TODO completed for continuity in `ContinuityProperties.lagda` by Ayberk Tosun on 2023-06-13. TODO completed for uniform continuity in `ContinuityProperties.lagda` by Ayberk Tosun at 2023-11-16T23:47:43.