Package list-zipwith-thm: Properties of the list zipWith function

Information

namelist-zipwith-thm
version1.27
descriptionProperties of the list zipWith function
authorJoe Hurd <joe@gilith.com>
licenseMIT
provenanceHOL Light theory extracted on 2012-01-28
requiresbool
natural
list-def
list-length
list-zipwith-def
showData.Bool
Data.List
Number.Natural

Files

Theorem

f l1 l2 n. length l1 = n length l2 = n length (zipWith f l1 l2) = n

Input Type Operators

Input Constants

Assumptions

T

length [] = 0

F p. p

(¬) = λp. p F

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

t. F t F

t. T t t

t. t F F

t. F t T

t. T t t

n. ¬(suc n = 0)

f. zipWith f [] [] = []

() = λp q. p q p

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

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

m n. suc m = suc n m = n

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

P. P [] (a0 a1. P a1 P (a0 :: a1)) x. P x

f h1 h2 t1 t2.
    length t1 = length t2
    zipWith f (h1 :: t1) (h2 :: t2) = f h1 h2 :: zipWith f t1 t2