Package natural-sub: Natural number subtraction

Information

namenatural-sub
version1.20
descriptionNatural number subtraction
authorJoe Hurd <joe@gilith.com>
licenseMIT
requiresbool
natural-def
natural-thm
natural-dest
natural-order
natural-add
natural-mult
showData.Bool
Number.Natural

Files

Defined Constant

Theorems

m. m - 0 = m

n. n - n = 0

n. suc n - 1 = n

m n. m + n - m = n

m n. m + n - n = m

n. ¬(n = 0) pre n = n - 1

m n. n m n + (m - n) = m

m n. n m m - n + n = m

m n. n < m m - suc n = pre (m - n)

m n. n < m suc (m - suc n) = m - n

m n. n m suc (m - n) = suc m - n

m n. n m (m - n = 0 m = n)

m n. n m pre (suc m - n) = m - n

m n. n m suc m - suc n = m - n

m n p. n m m + p - (n + p) = m - n

m n p. p n m + n - (m + p) = n - p

m n p. n m (m - n) * p = m * p - n * p

m n p. p n m * (n - p) = m * n - m * p

Input Type Operators

Input Constants

Assumptions

¬

¬

t. t t

p. p

(¬) = λp. p

() = λp. p ((select) p)

t. (x. t) t

() = λp. p = λx.

t. t

t. t t

t. t

n. ¬(suc n = 0)

m. m < 0

n. pre (suc n) = n

m. m + 0 = m

() = λp q. p q p

m. suc m = m + 1

x y. x = y y = x

m n. m * n = n * m

m n. m + n = n + m

m n. m < n m n

m n. m < suc n m n

m n. suc m n m < n

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

() = λp. q. (x. p x q) q

m n. m + suc n = suc (m + n)

m n. suc m + n = suc (m + n)

m n. suc m < suc n m < n

m n. m + n = m n = 0

m n. m n d. n = m + d

m n p. m + (n + p) = m + n + p

p. (x. y. p x y) y. x. p x (y x)

P. P 0 (n. P n P (suc n)) n. P n

m n p. m * (n + p) = m * n + m * p

(∃!) = λp. () p x y. p x p y x = y

e f. ∃!fn. fn 0 = e n. fn (suc n) = f (fn n) n