Package unit: The unit type
Information
name | unit |
version | 1.21 |
description | The unit type |
author | Joe Leslie-Hurd <joe@gilith.com> |
license | MIT |
checksum | 098b2cf5bceac9960544b90b9747f4d175bf0fc9 |
requires | bool |
show | Data.Bool Data.Unit |
Files
- Package tarball unit-1.21.tgz
- Theory source file unit.thy (included in the package tarball)
Defined Type Operator
- Data
- Unit
- unit
- Unit
Defined Constant
- Data
- Unit
- ()
- Unit
Theorems
⊦ ∀v. v = ()
⊦ ∀f g. f = g
⊦ ∀e. ∃fn. fn () = e
⊦ ∀e. ∃!fn. fn () = e
⊦ ∀p. p () ⇒ ∀x. p x
⊦ ∀p. (∀x. p x) ⇔ p ()
⊦ ∀p. (∃x. p x) ⇔ p ()
External Type Operators
- →
- bool
External Constants
- =
- select
- Data
- Bool
- ∀
- ∧
- ⇒
- ∃
- ∃!
- ∨
- ¬
- ⊥
- ⊤
- Bool
Assumptions
⊦ ⊤
⊦ ¬⊥ ⇔ ⊤
⊦ ¬⊤ ⇔ ⊥
⊦ ∀t. t ⇒ t
⊦ (∃) = λp. p ((select) p)
⊦ ∀t. (∀x. t) ⇔ t
⊦ (∀) = λp. p = λx. ⊤
⊦ ∀t. ¬¬t ⇔ t
⊦ ∀t. (⊤ ⇔ t) ⇔ t
⊦ ∀t. (t ⇔ ⊤) ⇔ t
⊦ ∀t. ⊤ ∧ t ⇔ t
⊦ ∀t. (⊥ ⇔ t) ⇔ ¬t
⊦ (⇒) = λp q. p ∧ q ⇔ p
⊦ ∀t. (t ⇔ ⊤) ∨ (t ⇔ ⊥)
⊦ ∀x y. x = y ⇔ y = x
⊦ (∧) = λp q. (λf. f p q) = λf. f ⊤ ⊤
⊦ ∀p. ¬(∃x. p x) ⇔ ∀x. ¬p x
⊦ (∃) = λp. ∀q. (∀x. p x ⇒ q) ⇒ q
⊦ ∀f g. (∀x. f x = g x) ⇔ f = g
⊦ (∨) = λp q. ∀r. (p ⇒ r) ⇒ (q ⇒ r) ⇒ r
⊦ ∀p. (∃!x. p x) ⇔ (∃x. p x) ∧ ∀x x'. p x ∧ p x' ⇒ x = x'