Basic theorems about expr-list-purep, generated by std::deflist.
Theorem:
(defthm expr-list-purep-of-cons (equal (expr-list-purep (cons acl2::a acl2::x)) (and (expr-purep acl2::a) (expr-list-purep acl2::x))) :rule-classes ((:rewrite)))
Theorem:
(defthm expr-list-purep-of-cdr-when-expr-list-purep (implies (expr-list-purep (double-rewrite acl2::x)) (expr-list-purep (cdr acl2::x))) :rule-classes ((:rewrite)))
Theorem:
(defthm expr-list-purep-when-not-consp (implies (not (consp acl2::x)) (expr-list-purep acl2::x)) :rule-classes ((:rewrite)))
Theorem:
(defthm expr-purep-of-car-when-expr-list-purep (implies (expr-list-purep acl2::x) (iff (expr-purep (car acl2::x)) (or (consp acl2::x) (expr-purep nil)))) :rule-classes ((:rewrite)))
Theorem:
(defthm expr-list-purep-of-append (equal (expr-list-purep (append acl2::a acl2::b)) (and (expr-list-purep acl2::a) (expr-list-purep acl2::b))) :rule-classes ((:rewrite)))
Theorem:
(defthm expr-list-purep-of-list-fix (equal (expr-list-purep (list-fix acl2::x)) (expr-list-purep acl2::x)) :rule-classes ((:rewrite)))
Theorem:
(defthm expr-list-purep-of-rev (equal (expr-list-purep (rev acl2::x)) (expr-list-purep (list-fix acl2::x))) :rule-classes ((:rewrite)))