(vl-scopeinfo->itemnames x design) → names
Function:
(defun vl-scopeinfo->itemnames (x design) (declare (xargs :guard (and (vl-scopeinfo-p x) (vl-maybe-design-p design)))) (let ((__function__ 'vl-scopeinfo->itemnames)) (declare (ignorable __function__)) (b* (((vl-scopeinfo x))) (append (alist-keys x.locals) (alist-keys x.imports) (vl-import-stars-itemnames x.star-packages design)))))
Theorem:
(defthm string-listp-of-vl-scopeinfo->itemnames (b* ((names (vl-scopeinfo->itemnames x design))) (string-listp names)) :rule-classes :rewrite)
Theorem:
(defthm vl-scopeinfo->itemnames-present-when-lookup (implies (and (mv-nth 1 (vl-scopeinfo-find-item name x design)) (stringp name)) (member name (vl-scopeinfo->itemnames x design))))
Theorem:
(defthm vl-scopeinfo->itemnames-of-vl-scopeinfo-fix-x (equal (vl-scopeinfo->itemnames (vl-scopeinfo-fix x) design) (vl-scopeinfo->itemnames x design)))
Theorem:
(defthm vl-scopeinfo->itemnames-vl-scopeinfo-equiv-congruence-on-x (implies (vl-scopeinfo-equiv x x-equiv) (equal (vl-scopeinfo->itemnames x design) (vl-scopeinfo->itemnames x-equiv design))) :rule-classes :congruence)
Theorem:
(defthm vl-scopeinfo->itemnames-of-vl-maybe-design-fix-design (equal (vl-scopeinfo->itemnames x (vl-maybe-design-fix design)) (vl-scopeinfo->itemnames x design)))
Theorem:
(defthm vl-scopeinfo->itemnames-vl-maybe-design-equiv-congruence-on-design (implies (vl-maybe-design-equiv design design-equiv) (equal (vl-scopeinfo->itemnames x design) (vl-scopeinfo->itemnames x design-equiv))) :rule-classes :congruence)