(netassigns-vars x) → vars
Function:
(defun netassigns-vars (x) (declare (xargs :guard (netassigns-p x))) (let ((__function__ 'netassigns-vars)) (declare (ignorable __function__)) (b* ((x (netassigns-fix x)) ((when (atom x)) nil)) (cons (caar x) (append (driverlist-vars (cdar x)) (netassigns-vars (cdr x)))))))
Theorem:
(defthm svarlist-p-of-netassigns-vars (b* ((vars (netassigns-vars x))) (svarlist-p vars)) :rule-classes :rewrite)
Theorem:
(defthm netassigns-vars-of-acons (equal (netassigns-vars (cons (cons a b) c)) (cons (svar-fix a) (append (driverlist-vars b) (netassigns-vars c)))))
Theorem:
(defthm netassigns-vars-of-append (equal (netassigns-vars (append a b)) (append (netassigns-vars a) (netassigns-vars b))))
Theorem:
(defthm member-lookup-in-netassigns (implies (and (not (member v (netassigns-vars x))) (netassigns-p x)) (not (member v (driverlist-vars (cdr (hons-assoc-equal name x)))))))
Theorem:
(defthm netassign-vars-of-remove-assoc (implies (and (not (member v (netassigns-vars x))) (netassigns-p x)) (not (member v (netassigns-vars (acl2::hons-remove-assoc k x))))))
Theorem:
(defthm netassign-vars-of-fast-alist-clean (implies (and (not (member v (netassigns-vars x))) (netassigns-p x)) (not (member v (netassigns-vars (fast-alist-clean x))))))
Theorem:
(defthm netassigns-vars-of-netassigns-fix-x (equal (netassigns-vars (netassigns-fix x)) (netassigns-vars x)))
Theorem:
(defthm netassigns-vars-netassigns-equiv-congruence-on-x (implies (netassigns-equiv x x-equiv) (equal (netassigns-vars x) (netassigns-vars x-equiv))) :rule-classes :congruence)