(nat-listp x) recognizes lists where every element satisfies natp.
(nat-listp x) → std::bool
This is an ordinary deflist. It is
"loose" in that it does not care whether
Function:
(defun nat-listp (x) (declare (xargs :guard t)) (let ((__function__ 'nat-listp)) (declare (ignorable __function__)) (if (consp x) (and (natp (car x)) (nat-listp (cdr x))) t)))