(remove-nonstrings x) → filtered-x
Function:
(defun remove-nonstrings (x) (declare (xargs :guard t)) (let ((__function__ 'remove-nonstrings)) (declare (ignorable __function__)) (cond ((atom x) nil) ((stringp (car x)) (cons (car x) (remove-nonstrings (cdr x)))) (t (remove-nonstrings (cdr x))))))
Theorem:
(defthm string-listp-of-remove-nonstrings (b* ((filtered-x (remove-nonstrings x))) (string-listp filtered-x)) :rule-classes :rewrite)