Entry Value
Name foldr_with_cons_nil
Conclusion !l. foldr CONS [] l = l
Constructive Proof Yes
Axiom
N|A
Classical Lemmas N|A
Constructive Lemmas
  • T
  • !x. x = x
  • !p1 p2 q1 q2. (p1 ==> p2) /\ (q1 ==> q2) ==> p1 /\ q1 ==> p2 /\ q2
  • !p1 p2 q1 q2. (p1 ==> p2) /\ (q1 ==> q2) ==> p1 \/ q1 ==> p2 \/ q2
  • !t. (!x. t) <=> t
  • !p q. (!x. p x ==> q x) ==> (?x. p x) ==> (?x. q x)
  • !f b h t. foldr f b (CONS h t) = f h (foldr f b t)
  • !f b. foldr f b [] = b
  • !p. p [] /\ (!h t. p t ==> p (CONS h t)) ==> (!l. p l)
  • !l h t. APPEND (CONS h t) l = CONS h (APPEND t l)
  • !l1 l2. foldr CONS l2 l1 = APPEND l1 l2
  • !l. APPEND [] l = l
  • !l. APPEND l [] = l
  • T <=> (\p. p) = (\p. p)
  • (/\) = (\p q. (\f. f p q) = (\f. f T T))
  • (==>) = (\p q. p /\ q <=> p)
  • (\/) = (\p q. !r. (p ==> r) ==> (q ==> r) ==> r)
  • (!) = (\p. p = (\x. T))
  • (?) = (\p. !q. (!x. p x ==> q) ==> q)
  • Contained Package list-fold-thm
    Comment Standard HOL library retrieved from OpenTheory
    Back to main package pageBack to contained package page