Entry |
Value |
Name |
EX_APPEND |
Conclusion |
!p l1 l2. EX p (APPEND l1 l2) <=> EX p l1 \/ EX p l2 |
Constructive Proof |
No |
Axiom |
!t. t \/ ~t
(\a. a = (\b. (\c. c) = (\c. c))) (\d. (\e. d e) = d) |
Classical Lemmas |
!t1 t2. ~(t1 /\ t2) <=> ~t1 \/ ~t2!t1 t2. ~(t1 ==> t2) <=> t1 /\ ~t2!t1 t2. ~(t1 \/ t2) <=> ~t1 /\ ~t2!t. ~ ~t <=> t!t. (t <=> T) \/ (t <=> F)!p l. ~EX p l <=> ALL (\x. ~p x) l!p l. EX p l <=> (?x. x IN set_of_list l /\ p x)!p. (?x. ~p x) <=> ~(!x. p x)!p. ~(!x. p x) <=> (?x. ~p x)!p. ~(?x. p x) <=> (!x. ~p x) |
Constructive Lemmas |
T!x y s. x IN y INSERT s <=> x = y \/ x IN s!x y. x = y <=> y = x!x y. x = y ==> y = x!h t. set_of_list (CONS h t) = h INSERT set_of_list t!x s t. x INSERT s UNION t = x INSERT (s UNION t)!x s. x INSERT s = {y | y = x \/ y IN s}!x s. {x} UNION s = x INSERT s!x. ~(x IN {})!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!p q r. (p \/ q) /\ r <=> p /\ r \/ q /\ r!t1 t2 t3. (t1 \/ t2) \/ t3 <=> t1 \/ t2 \/ t3!t1 t2. ~(t1 /\ t2) <=> ~t1 \/ ~t2!t1 t2. ~(t1 ==> t2) <=> t1 /\ ~t2!t1 t2. ~(t1 \/ t2) <=> ~t1 /\ ~t2!t1 t2. t1 \/ t2 <=> t2 \/ t1!t. (!x. t) <=> t!t. ~ ~t <=> t!t. F /\ t <=> F!t. T /\ t <=> t!t. t /\ F <=> F!t. t /\ T <=> t!t. t /\ t <=> t!t. (F <=> t) <=> ~t!t. (T <=> t) <=> t!t. (t <=> F) <=> ~t!t. (t <=> T) <=> t!t. F ==> t <=> T!t. T ==> t <=> t!t. t ==> F <=> ~t!t. t ==> T <=> T!t. F \/ t <=> t!t. T \/ t <=> T!t. t \/ F <=> t!t. t \/ T <=> T!t. t \/ t <=> t!t. t ==> t!t. (t <=> T) \/ (t <=> F)!f y. (\x. f x) y = f y!f g. (!x. f x = g x) <=> f = g!f g. (!x. f x = g x) ==> f = g!t. (\x. t x) = t!p h t. ALL p (CONS h t) <=> p h /\ ALL p t!p h t. EX p (CONS h t) <=> p h \/ EX p t!p a. (?x. a = x /\ p x) <=> p a!p x. x IN GSPEC p <=> p x!p x. x IN {y | p y} <=> p x!p q. (?x. p x \/ q x) <=> (?x. p x) \/ (?x. q x)!p q. (!x. p x ==> q x) ==> (?x. p x) ==> (?x. q x)!p l. ~EX p l <=> ALL (\x. ~p x) l!p l. ALL p l <=> (!x. x IN set_of_list l ==> p x)!p l. EX p l <=> (?x. x IN set_of_list l /\ p x)!p. ~EX p []!p. (?x. ~p x) <=> ~(!x. p x)!p. ~(!x. p x) <=> (?x. ~p x)!p. ~(?x. p x) <=> (!x. ~p x)!p. ALL p []!p. (!x y. p x y) <=> (!y x. p x y)!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. set_of_list (APPEND l1 l2) = set_of_list l1 UNION set_of_list l2!l. APPEND [] l = l!s t x. x IN s UNION t <=> x IN s \/ x IN t!s t u. (s UNION t) UNION u = s UNION t UNION u!s t. (!x. x IN s <=> x IN t) <=> s = t!s t. s UNION t = {x | x IN s \/ x IN t}!s t. s UNION t = t UNION s!s t. (!x. x IN s <=> x IN t) ==> s = t!s. {} UNION s = s!s. s UNION {} = sF <=> (!p. p)T <=> (\p. p) = (\p. p)~F <=> T~T <=> F(~) = (\p. p ==> F)(/\) = (\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){} = {x | F}set_of_list [] = {} |
Contained Package |
list-append-thm |
Comment |
Standard HOL library retrieved from OpenTheory |