(vl-maybe-integer-listp x) recognizes lists where every element satisfies maybe-integerp.
(vl-maybe-integer-listp x) → std::bool
This is an ordinary deflist. It is
"strict" in that it requires
Function:
(defun vl-maybe-integer-listp (x) (declare (xargs :guard t)) (let ((__function__ 'vl-maybe-integer-listp)) (declare (ignorable __function__)) (if (consp x) (and (maybe-integerp (car x)) (vl-maybe-integer-listp (cdr x))) (null x))))
Theorem:
(defthm integer-listp-when-no-nils-in-vl-maybe-integer-listp (implies (and (not (member-equal nil x)) (vl-maybe-integer-listp x)) (integer-listp x)))