Mercurial > hg > Members > kono > Proof > category
changeset 1041:c3e6fddb04e8
internal language written
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 09 Apr 2021 09:05:59 +0900 |
parents | d252240ccd1e |
children | a929a58a389d |
files | src/ToposIL.agda |
diffstat | 1 files changed, 14 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ToposIL.agda Thu Apr 08 16:19:00 2021 +0900 +++ b/src/ToposIL.agda Fri Apr 09 09:05:59 2021 +0900 @@ -26,7 +26,7 @@ -- field -- a : {!!} - record Logic (c : CCC A) : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) where + record Logic : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) where field Ω : Obj A ⊤ : Hom A (CCC.1 c) Ω @@ -34,9 +34,10 @@ _==_ : {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) Ω -- { x ∈ a | φ x } : P a - select : {a : Obj A} (α : Hom A (CCC.1 c) (P a) ) → ( (x : Hom A (CCC.1 c) a ) → Set c₁) → Hom A (CCC.1 c) (P a) - _|-_ : {a : Obj A} (x : List ( Hom A (CCC.1 c) a ) ) → Hom 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) -- isTL : IsLogic c Ω ⊤ P _==_ _∈_ _|-_ + _|-_ : {a : Obj A} (p : Hom A (CCC.1 c) (Ω t )) → Set ℓ + _|-_ {a} p = A [ p ≈ Topos.⊤ t ] -- ○ b -- b -----------→ 1 @@ -54,21 +55,24 @@ open import ToposEx A c t n using ( δmono ) -- λ (x ∈ a) → φ x - record Select (P : Obj A → Obj A ) {a : Obj A} (α : Hom A (CCC.1 c) (P a) ) ( φ : (x : Hom A (CCC.1 c) a ) → ? ) + record Select {a b : Obj A} (α : Hom A (CCC.1 c) ((Topos.Ω t) <= a) ) ( φ : (x : Hom A (CCC.1 c) a ) → Hom A (CCC.1 c) b ) : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) where field - sl : Hom A (CCC.1 c) (P a) - isSelect : (x : Hom A (CCC.1 c) a ) → A [ A [ CCC.ε c o {!!} ] ≈ φ x ] + sl : Hom A (CCC.1 c) (b <= a) + isSelect : (x : Hom A (CCC.1 c) a ) → A [ A [ CCC.ε c o < sl , x > ] ≈ φ x ] - topos→logic : Logic c - topos→logic = record { + -- functional completeness + FC : Set ( suc c₁ ⊔ suc c₂ ⊔ suc ℓ ) + FC = {a b : Obj A} (α : Hom A (CCC.1 c) ((Topos.Ω t) <= a) ) ( φ : (x : Hom A (CCC.1 c) a ) → Hom A (CCC.1 c) b ) → Select α φ + + topos→logic : FC → Logic + topos→logic fc = record { Ω = Topos.Ω t ; ⊤ = Topos.⊤ t ; P = λ a → (Topos.Ω t) <= a ; _==_ = λ {b} f g → A [ char t < id1 A b , id1 A b > δmono o < f , g > ] ; _∈_ = λ {a} x α → A [ CCC.ε c o < α , x > ] -- { x ∈ a | φ x } : P a - ; select = λ {a} α φ → Select.sl {!!} - ; _|-_ = λ {a} x → {!!} + ; select = λ {a} α φ → Select.sl ( fc α φ ) -- ; isTL = {!!} }