(vl-design-from-descriptions x) → design
Function:
(defun vl-design-from-descriptions (x) (declare (xargs :guard (vl-descriptionlist-p x))) (let ((__function__ 'vl-design-from-descriptions)) (declare (ignorable __function__)) (b* (((mv modules udps interfaces programs classes packages configs vardecls taskdecls fundecls paramdecls imports fwdtypedefs typedefs dpiimports dpiexports binds properties sequences) (vl-sort-descriptions x))) (make-vl-design :mods modules :udps udps :interfaces interfaces :programs programs :classes classes :packages packages :configs configs :vardecls vardecls :taskdecls taskdecls :fundecls fundecls :paramdecls paramdecls :imports imports :fwdtypes fwdtypedefs :typedefs typedefs :dpiimports dpiimports :dpiexports dpiexports :binds binds :properties properties :sequences sequences))))
Theorem:
(defthm vl-design-p-of-vl-design-from-descriptions (b* ((design (vl-design-from-descriptions x))) (vl-design-p design)) :rule-classes :rewrite)
Theorem:
(defthm vl-design-from-descriptions-of-vl-descriptionlist-fix-x (equal (vl-design-from-descriptions (vl-descriptionlist-fix x)) (vl-design-from-descriptions x)))
Theorem:
(defthm vl-design-from-descriptions-vl-descriptionlist-equiv-congruence-on-x (implies (vl-descriptionlist-equiv x x-equiv) (equal (vl-design-from-descriptions x) (vl-design-from-descriptions x-equiv))) :rule-classes :congruence)