Lift expr-constp to lists.
(expr-list-constp x) → std::bool
This is an ordinary std::deflist. It is
"loose" in that it does not care whether
Function:
(defun expr-list-constp (x) (declare (xargs :guard (expr-listp x))) (let ((__function__ 'expr-list-constp)) (declare (ignorable __function__)) (if (consp x) (and (expr-constp (car x)) (expr-list-constp (cdr x))) t)))
Theorem:
(defthm expr-list-constp-of-expr-list-fix-x (equal (expr-list-constp (expr-list-fix x)) (expr-list-constp x)))
Theorem:
(defthm expr-list-constp-expr-list-equiv-congruence-on-x (implies (expr-list-equiv x x-equiv) (equal (expr-list-constp x) (expr-list-constp x-equiv))) :rule-classes :congruence)