(modalist-vars x) → vars
Function:
(defun modalist-vars (x) (declare (xargs :guard (modalist-p x))) (let ((__function__ 'modalist-vars)) (declare (ignorable __function__)) (b* ((x (modalist-fix x))) (if (atom x) nil (append (module-vars (cdar x)) (modalist-vars (cdr x)))))))
Theorem:
(defthm svarlist-p-of-modalist-vars (b* ((vars (modalist-vars x))) (svarlist-p vars)) :rule-classes :rewrite)
Theorem:
(defthm modalist-vars-of-append (equal (modalist-vars (append a b)) (append (modalist-vars a) (modalist-vars b))))
Theorem:
(defthm modalist-vars-of-modalist-fix-x (equal (modalist-vars (modalist-fix x)) (modalist-vars x)))
Theorem:
(defthm modalist-vars-modalist-equiv-congruence-on-x (implies (modalist-equiv x x-equiv) (equal (modalist-vars x) (modalist-vars x-equiv))) :rule-classes :congruence)