Collect up a vl-exprctxalist-p from a list of vl-portlist-ps.
(vl-portlist-ctxexprs mod x) → alist
Function:
(defun vl-portlist-ctxexprs (mod x) (declare (xargs :guard (and (stringp mod) (vl-portlist-p x)))) (let ((__function__ 'vl-portlist-ctxexprs)) (declare (ignorable __function__)) (mbe :logic (if (atom x) nil (append (vl-port-ctxexprs mod (car x)) (vl-portlist-ctxexprs mod (cdr x)))) :exec (with-local-nrev (vl-portlist-ctxexprs-nrev mod x nrev)))))
Theorem:
(defthm vl-exprctxalist-p-of-vl-portlist-ctxexprs (b* ((alist (vl-portlist-ctxexprs mod x))) (vl-exprctxalist-p alist)) :rule-classes :rewrite)
Theorem:
(defthm vl-portlist-ctxexprs-nrev-removal (equal (vl-portlist-ctxexprs-nrev mod x nrev) (append nrev (vl-portlist-ctxexprs mod x))))
Theorem:
(defthm vl-portlist-ctxexprs-of-str-fix-mod (equal (vl-portlist-ctxexprs (str-fix mod) x) (vl-portlist-ctxexprs mod x)))
Theorem:
(defthm vl-portlist-ctxexprs-streqv-congruence-on-mod (implies (streqv mod mod-equiv) (equal (vl-portlist-ctxexprs mod x) (vl-portlist-ctxexprs mod-equiv x))) :rule-classes :congruence)
Theorem:
(defthm vl-portlist-ctxexprs-of-vl-portlist-fix-x (equal (vl-portlist-ctxexprs mod (vl-portlist-fix x)) (vl-portlist-ctxexprs mod x)))
Theorem:
(defthm vl-portlist-ctxexprs-vl-portlist-equiv-congruence-on-x (implies (vl-portlist-equiv x x-equiv) (equal (vl-portlist-ctxexprs mod x) (vl-portlist-ctxexprs mod x-equiv))) :rule-classes :congruence)