Mercurial > hg > Members > kono > Proof > ZF-in-agda
view src/zfc.agda @ 1477:88fdc41868f9
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 29 Jun 2024 15:57:38 +0900 |
parents | 76df157f6a3f |
children |
line wrap: on
line source
{-# OPTIONS --cubical-compatible --safe #-} module zfc where open import Level open import Relation.Binary open import Relation.Nullary open import logic record IsZFC {n m : Level } (ZFSet : Set n) (_∋_ : ( A x : ZFSet ) → Set m) (_≈_ : Rel ZFSet m) (∅ : ZFSet) : Set (suc (n ⊔ suc m)) where field -- ∀ X [ ∅ ∉ X → (∃ f : X → ⋃ X ) → ∀ A ∈ X ( f ( A ) ∈ A ) ] choice-func : (X : ZFSet ) → {x : ZFSet } → ¬ ( x ≈ ∅ ) → ( X ∋ x ) → ZFSet choice : (X : ZFSet ) → {A : ZFSet } → ( X∋A : X ∋ A ) → (not : ¬ ( A ≈ ∅ )) → A ∋ choice-func X not X∋A record ZFC {n m : Level } : Set (suc (n ⊔ suc m)) where field ZFSet : Set n _∋_ : ( A x : ZFSet ) → Set m _≈_ : ( A B : ZFSet ) → Set m ∅ : ZFSet isZFC : IsZFC ZFSet _∋_ _≈_ ∅