Package list-interval: The list interval function

Information

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

Files

Defined Constant

Theorems

m. interval m 0 = []

m n. length (interval m n) = n

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

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

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

Input Type Operators

Input Constants

Assumptions

¬

length [] = 0

t. t t

p. p

m. ¬(m < 0)

(¬) = λp. p

() = λ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

t. t

m. m + 0 = m

f. map f [] = []

t. t ¬t

() = λp q. p q p

t. (t ) (t )

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

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

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

f h t. map f (h :: t) = f h :: map f t

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 (h :: t) (suc n) = nth t n