(vl-genblob-scope-portdecl-alist scope acc) → alist
Function:
(defun vl-genblob-scope-portdecl-alist (scope acc) (declare (xargs :guard (vl-genblob-p scope))) (let ((__function__ 'vl-genblob-scope-portdecl-alist)) (declare (ignorable __function__)) (b* (((vl-genblob scope)) (acc (vl-portdecllist-alist scope.portdecls acc))) acc)))
Theorem:
(defthm return-type-of-vl-genblob-scope-portdecl-alist (b* ((alist (vl-genblob-scope-portdecl-alist scope acc))) (implies (vl-portdecl-alist-p acc) (vl-portdecl-alist-p alist))) :rule-classes :rewrite)
Theorem:
(defthm vl-genblob-scope-portdecl-alist-lookup-acc-elim (implies (syntaxp (not (equal acc ''nil))) (equal (hons-assoc-equal name (vl-genblob-scope-portdecl-alist scope acc)) (or (hons-assoc-equal name (vl-genblob-scope-portdecl-alist scope nil)) (hons-assoc-equal name acc)))))
Theorem:
(defthm vl-genblob-scope-portdecl-alist-correct (implies (stringp name) (equal (hons-assoc-equal name (vl-genblob-scope-portdecl-alist scope nil)) (b* ((item (vl-genblob-scope-find-portdecl name scope))) (and item (cons name item))))))
Theorem:
(defthm vl-genblob-scope-portdecl-alist-of-vl-genblob-fix-scope (equal (vl-genblob-scope-portdecl-alist (vl-genblob-fix scope) acc) (vl-genblob-scope-portdecl-alist scope acc)))
Theorem:
(defthm vl-genblob-scope-portdecl-alist-vl-genblob-equiv-congruence-on-scope (implies (vl-genblob-equiv scope scope-equiv) (equal (vl-genblob-scope-portdecl-alist scope acc) (vl-genblob-scope-portdecl-alist scope-equiv acc))) :rule-classes :congruence)