(vl-genelementlist->modinsts x) → modinsts
Function:
(defun vl-genelementlist->modinsts (x) (declare (xargs :guard (vl-genelementlist-p x))) (let ((__function__ 'vl-genelementlist->modinsts)) (declare (ignorable __function__)) (b* (((when (atom x)) nil) (x1 (car x))) (vl-genelement-case x1 :vl-genbase (if (eq (tag x1.item) :vl-modinst) (cons x1.item (vl-genelementlist->modinsts (cdr x))) (vl-genelementlist->modinsts (cdr x))) :otherwise (vl-genelementlist->modinsts (cdr x))))))
Theorem:
(defthm vl-modinstlist-p-of-vl-genelementlist->modinsts (b* ((modinsts (vl-genelementlist->modinsts x))) (vl-modinstlist-p modinsts)) :rule-classes :rewrite)
Theorem:
(defthm vl-sort-genelements-aux-is-vl-genelementlist->modinsts (equal (mv-nth 7 (vl-sort-genelements-aux x portdecls assigns aliases vardecls paramdecls fundecls taskdecls modinsts gateinsts alwayses initials finals typedefs imports fwdtypedefs modports genvars assertions cassertions properties sequences clkdecls gclkdecls defaultdisables dpiimports dpiexports binds classes covergroups elabtasks letdecls generates)) (append (rev (vl-modinstlist-fix modinsts)) (vl-genelementlist->modinsts x))))
Theorem:
(defthm vl-genelementlist->modinsts-of-vl-genelementlist-fix-x (equal (vl-genelementlist->modinsts (vl-genelementlist-fix x)) (vl-genelementlist->modinsts x)))
Theorem:
(defthm vl-genelementlist->modinsts-vl-genelementlist-equiv-congruence-on-x (implies (vl-genelementlist-equiv x x-equiv) (equal (vl-genelementlist->modinsts x) (vl-genelementlist->modinsts x-equiv))) :rule-classes :congruence)