(vl-modport-portlist-check-wellformed x ctx warnings internalnames) → (mv warnings internalnames)
Function:
(defun vl-modport-portlist-check-wellformed (x ctx warnings internalnames) (declare (xargs :guard (and (vl-modport-portlist-p x) (vl-modport-p ctx) (vl-warninglist-p warnings) (string-listp internalnames)))) (let ((__function__ 'vl-modport-portlist-check-wellformed)) (declare (ignorable __function__)) (b* (((when (atom x)) (mv (ok) (string-list-fix internalnames))) ((mv warnings internalnames) (vl-modport-port-check-wellformed (car x) ctx warnings internalnames))) (vl-modport-portlist-check-wellformed (cdr x) ctx warnings internalnames))))
Theorem:
(defthm vl-warninglist-p-of-vl-modport-portlist-check-wellformed.warnings (b* (((mv ?warnings ?internalnames) (vl-modport-portlist-check-wellformed x ctx warnings internalnames))) (vl-warninglist-p warnings)) :rule-classes :rewrite)
Theorem:
(defthm string-listp-of-vl-modport-portlist-check-wellformed.internalnames (b* (((mv ?warnings ?internalnames) (vl-modport-portlist-check-wellformed x ctx warnings internalnames))) (string-listp internalnames)) :rule-classes :rewrite)
Theorem:
(defthm vl-modport-portlist-check-wellformed-of-vl-modport-portlist-fix-x (equal (vl-modport-portlist-check-wellformed (vl-modport-portlist-fix x) ctx warnings internalnames) (vl-modport-portlist-check-wellformed x ctx warnings internalnames)))
Theorem:
(defthm vl-modport-portlist-check-wellformed-vl-modport-portlist-equiv-congruence-on-x (implies (vl-modport-portlist-equiv x x-equiv) (equal (vl-modport-portlist-check-wellformed x ctx warnings internalnames) (vl-modport-portlist-check-wellformed x-equiv ctx warnings internalnames))) :rule-classes :congruence)
Theorem:
(defthm vl-modport-portlist-check-wellformed-of-vl-modport-fix-ctx (equal (vl-modport-portlist-check-wellformed x (vl-modport-fix ctx) warnings internalnames) (vl-modport-portlist-check-wellformed x ctx warnings internalnames)))
Theorem:
(defthm vl-modport-portlist-check-wellformed-vl-modport-equiv-congruence-on-ctx (implies (vl-modport-equiv ctx ctx-equiv) (equal (vl-modport-portlist-check-wellformed x ctx warnings internalnames) (vl-modport-portlist-check-wellformed x ctx-equiv warnings internalnames))) :rule-classes :congruence)
Theorem:
(defthm vl-modport-portlist-check-wellformed-of-vl-warninglist-fix-warnings (equal (vl-modport-portlist-check-wellformed x ctx (vl-warninglist-fix warnings) internalnames) (vl-modport-portlist-check-wellformed x ctx warnings internalnames)))
Theorem:
(defthm vl-modport-portlist-check-wellformed-vl-warninglist-equiv-congruence-on-warnings (implies (vl-warninglist-equiv warnings warnings-equiv) (equal (vl-modport-portlist-check-wellformed x ctx warnings internalnames) (vl-modport-portlist-check-wellformed x ctx warnings-equiv internalnames))) :rule-classes :congruence)
Theorem:
(defthm vl-modport-portlist-check-wellformed-of-string-list-fix-internalnames (equal (vl-modport-portlist-check-wellformed x ctx warnings (string-list-fix internalnames)) (vl-modport-portlist-check-wellformed x ctx warnings internalnames)))
Theorem:
(defthm vl-modport-portlist-check-wellformed-string-list-equiv-congruence-on-internalnames (implies (str::string-list-equiv internalnames internalnames-equiv) (equal (vl-modport-portlist-check-wellformed x ctx warnings internalnames) (vl-modport-portlist-check-wellformed x ctx warnings internalnames-equiv))) :rule-classes :congruence)