Mercurial > hg > Members > kono > Proof > category
changeset 1046:60b24b3dc0c6
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 10 Apr 2021 11:39:46 +0900 |
parents | 139d58917093 |
children | cc7103f643b7 |
files | src/ToposEx.agda src/ToposIL.agda |
diffstat | 2 files changed, 34 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ToposEx.agda Fri Apr 09 10:26:01 2021 +0900 +++ b/src/ToposEx.agda Sat Apr 10 11:39:46 2021 +0900 @@ -366,6 +366,19 @@ partialmapClassifier : (b : Obj A) → PartialmapClassifier b partialmapClassifier = {!!} + record SubObject (a : Obj A) : Set (c₁ ⊔ c₂ ⊔ ℓ) where + field + sb : Obj A + sm : Hom A sb a + smono : Mono A sm + + record SubObjectClassifier (b : Obj A) : Set (c₁ ⊔ c₂ ⊔ ℓ) where + field + sm : SubObject b + smc : {a : Obj A} ( d f : Hom A a b) → Mono A d → Hom A a b + pb : {a : Obj A} ( d f : Hom A a b) → (dm : Mono A d ) → Pullback A (smc d f dm) (id1 A _) + uniq : {a : Obj A} ( d f : Hom A a b) → (dm : Mono A d ) → (p : Hom A a b) → Pullback A p (id1 A _) → A [ smc d f dm ≈ p ] + postulate I : Set c₁ small : Small A I
--- a/src/ToposIL.agda Fri Apr 09 10:26:01 2021 +0900 +++ b/src/ToposIL.agda Sat Apr 10 11:39:46 2021 +0900 @@ -17,25 +17,26 @@ -- record IsLogic (c : CCC A) -- (Ω : Obj A) - -- (⊤ : Hom A (CCC.1 c) Ω) + -- (⊤ : Hom A 1 Ω) -- (P : Obj A → Obj A) - -- (_==_ : {a : Obj A} (x y : Hom A (CCC.1 c) a ) → Hom A ( a ∧ a ) Ω) - -- (_∈_ : {a : Obj A} (x : Hom A (CCC.1 c) a ) → Hom A ( a ∧ P a ) Ω) - -- (_|-_ : {a : Obj A} (x : List ( Hom A (CCC.1 c) a ) ) → Hom A {!!} Ω) + -- (_==_ : {a : Obj A} (x y : Hom A 1 a ) → Hom A ( a ∧ a ) Ω) + -- (_∈_ : {a : Obj A} (x : Hom A 1 a ) → Hom A ( a ∧ P a ) Ω) + -- (_|-_ : {a : Obj A} (x : List ( Hom A 1 a ) ) → Hom A {!!} Ω) -- : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) where -- field -- a : {!!} - record InternalLanguage (Ω : Obj A) (⊤ : Hom A (CCC.1 c) Ω) (P : Obj A → Obj A) + record InternalLanguage (Ω : Obj A) (⊤ : Hom A 1 Ω) (P : Obj A → Obj A) : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) where field - _==_ : {a : Obj A} (x y : Hom A (CCC.1 c) a ) → Hom A (CCC.1 c) Ω - _∈_ : {a : Obj A} (x : Hom A (CCC.1 c) a ) (α : Hom A (CCC.1 c) (P a) ) → Hom A (CCC.1 c) Ω + _==_ : {a : Obj A} (x y : Hom A 1 a ) → Hom A 1 Ω + _∈_ : {a : Obj A} (x : Hom A 1 a ) (α : Hom A 1 (P a) ) → Hom A 1 Ω -- { x ∈ a | φ x } : P a - select : {a b : Obj A} (α : Hom A (CCC.1 c) (P a) ) → ( (x : Hom A (CCC.1 c) a ) → Hom A (CCC.1 c) Ω ) → Hom A (CCC.1 c) (P a) + select : {a : Obj A} → ( (x : Hom A 1 a ) → Hom A 1 Ω ) → Hom A 1 (P a) -- isTL : IsLogic c Ω ⊤ P _==_ _∈_ _|-_ - |-_ : {a : Obj A} (p : Hom A (CCC.1 c) Ω ) → Set ℓ - |-_ {a} p = A [ p ≈ ⊤ ] + _|-_ : (List (Hom A 1 Ω)) → (p : Hom A 1 Ω ) → Set ℓ + [] |- p = A [ p ≈ ⊤ ] + (h ∷ t) |- p = {!!} -- ○ b -- b -----------→ 1 @@ -44,7 +45,7 @@ -- ↓ char m ↓ -- a -----------→ Ω - -- (n : ToposNat A (CCC.1 c)) + -- (n : ToposNat A 1) -- open NatD -- open ToposNat n @@ -54,23 +55,23 @@ open import ToposEx A c using ( δmono ) -- f ≡ λ (x ∈ a) → φ x or ∃ (f : b <= a) → f ∙ x ≈ φ x - record Select {a b : Obj A} (Ω : Obj A) (α : Hom A (CCC.1 c) (Ω <= a) ) ( φ : (x : Hom A (CCC.1 c) a ) → Hom A (CCC.1 c) b ) + record Select {a b : Obj A} (Ω : Obj A) ( φ : (x : Hom A 1 a ) → Hom A 1 b ) : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) where field - sl : Hom A (CCC.1 c) (b <= a) - isSelect : (x : Hom A (CCC.1 c) a ) → A [ A [ CCC.ε c o < sl , x > ] ≈ φ x ] - -- isUnique : (x : Hom A (CCC.1 c) a ) → (f : Hom A (CCC.1 c) (b <= a) ) → A [ A [ CCC.ε c o < f , x > ] ≈ φ x ] - -- → A [ sl ≈ f ] + sl : Hom A 1 (b <= a) + isSelect : (x : Hom A 1 a ) → A [ A [ ε o < sl , x > ] ≈ φ x ] + isUnique : (x : Hom A 1 a ) → (f : Hom A 1 (b <= a) ) → A [ A [ ε o < f , x > ] ≈ φ x ] + → A [ sl ≈ f ] -- functional completeness FC : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) - FC = {a b : Obj A} (α : Hom A (CCC.1 c) (b <= a) ) ( φ : (x : Hom A (CCC.1 c) a ) → Hom A (CCC.1 c) b ) → Select b α φ + FC = {a b : Obj A} ( φ : (x : Hom A 1 a ) → Hom A 1 b ) → Select b φ - topos→logic : (t : Topos A c ) → ToposNat A (CCC.1 c) → FC → InternalLanguage (Topos.Ω t) (Topos.⊤ t) (λ a → (Topos.Ω t) <= a) + topos→logic : (t : Topos A c ) → ToposNat A 1 → FC → InternalLanguage (Topos.Ω t) (Topos.⊤ t) (λ a → (Topos.Ω t) <= a) topos→logic t n fc = record { _==_ = λ {b} f g → A [ char t < id1 A b , id1 A b > (δmono t n ) o < f , g > ] - ; _∈_ = λ {a} x α → A [ CCC.ε c o < α , x > ] + ; _∈_ = λ {a} x α → A [ ε o < α , x > ] -- { x ∈ a | φ x } : P a - ; select = λ {a} α φ → Select.sl ( fc α φ ) + ; select = λ {a} φ → Select.sl ( fc φ ) -- ; isTL = {!!} }