Package set-fold-def: set-fold-def

Information

nameset-fold-def
version1.13
descriptionset-fold-def
authorJoe Hurd <joe@gilith.com>
licenseHOLLight
provenanceHOL Light theory extracted on 2011-09-21
showData.Bool

Files

Defined Constant

Theorem

f b.
    (x y s. ¬(x = y) f x (f y s) = f y (f x s))
    Set.fold f Set.∅ b = b
    x s.
      Set.finite s
      Set.fold f (Set.insert x s) b =
      if Set.∈ x s then Set.fold f s b else f x (Set.fold f s b)

Input Type Operators

Input Constants

Assumptions

T

Set.finite Set.∅

F p. p

x. ¬Set.∈ x Set.∅

t. t ¬t

(¬) = λp. p F

() = λP. P ((select) P)

t. (x. t) t

t. (λx. t x) = t

() = λp. p = λx. T

x. x = x T

n. ¬(Number.Natural.suc n = 0)

() = λp q. p q p

t. (t T) (t F)

p x. p x p ((select) p)

(¬T F) (¬F T)

x y. x = y y = x

t1 t2. t1 t2 t2 t1

s x. Set.finite (Set.delete s x) Set.finite s

s x. Set.finite (Set.insert x s) Set.finite s

() = λp q. (λf. f p q) = λf. f T T

() = λP. q. (x. P x q) q

x s. Set.∈ x s Set.insert x s = s

m n. Number.Natural.suc m = Number.Natural.suc n m = n

() = λp q. r. (p r) (q r) r

x s. Set.delete (Set.insert x s) x = s ¬Set.∈ x s

P Q. (x. P x) Q x. P x Q

x y s. Set.delete (Set.delete s x) y = Set.delete (Set.delete s y) x

s t. s = t x. Set.∈ x s Set.∈ x t

P. P 0 (n. P n P (Number.Natural.suc n)) n. P n

(t. ¬¬t t) (¬T F) (¬F T)

x y s. Set.∈ x (Set.insert y s) x = y Set.∈ x s

s x y. Set.∈ x (Set.delete s y) Set.∈ x s ¬(x = y)

e f. fn. fn 0 = e n. fn (Number.Natural.suc n) = f (fn n) n

P c x y. P (if c then x else y) (c P x) (¬c P y)

t1 t2. (¬(t1 t2) ¬t1 ¬t2) (¬(t1 t2) ¬t1 ¬t2)

t. ((T t) t) ((t T) t) ((F t) ¬t) ((t F) ¬t)

P.
    P Set.∅
    (x s. P s ¬Set.∈ x s Set.finite s P (Set.insert x s))
    s. Set.finite s P s

t. (T t t) (t T t) (F t F) (t F F) (t t t)

t. (T t T) (t T T) (F t t) (t F t) (t t t)

t. (T t t) (t T T) (F t T) (t t T) (t F ¬t)