Package list-interval: The list interval function

Information

namelist-interval
version1.32
descriptionThe list interval function
authorJoe Hurd <joe@gilith.com>
licenseMIT
requiresbool
natural
list-length
list-nth
showData.Bool
Data.List
Number.Natural

Files

Defined Constant

Theorems

m. interval m 0 = []

m n. length (interval m n) = n

m n. interval m (suc n) = m :: interval (suc m) n

m n i. i < n nth i (interval m n) = m + i

Input Type Operators

Input Constants

Assumptions

T

length [] = 0

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

t. (x. t) t

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

t. T t t

t. F t T

t. T t t

t. t T T

m. m < 0 F

m. m + 0 = m

() = λp q. p q p

h t. nth 0 (h :: t) = h

h t. length (h :: t) = suc (length t)

m. m = 0 n. m = suc n

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

() = λ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. suc m < suc n m < n

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

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

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

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

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

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

h t n. n < length t nth (suc n) (h :: t) = nth n t