Get the modinsts to add to some module that arise from a vl-bind, annotated with attributes that say where they came from.
(vl-bindintent->modinsts x) → insts
Function:
(defun vl-bindintent->modinsts (x) (declare (xargs :guard (vl-bindintent-p x))) (let ((__function__ 'vl-bindintent->modinsts)) (declare (ignorable __function__)) (b* (((vl-bindintent x)) ((vl-bind x.source))) (vl-bindelim-modinstlist-add-atts x.source.modinsts x))))
Theorem:
(defthm vl-modinstlist-p-of-vl-bindintent->modinsts (b* ((insts (vl-bindintent->modinsts x))) (vl-modinstlist-p insts)) :rule-classes :rewrite)
Theorem:
(defthm vl-bindintent->modinsts-of-vl-bindintent-fix-x (equal (vl-bindintent->modinsts (vl-bindintent-fix x)) (vl-bindintent->modinsts x)))
Theorem:
(defthm vl-bindintent->modinsts-vl-bindintent-equiv-congruence-on-x (implies (vl-bindintent-equiv x x-equiv) (equal (vl-bindintent->modinsts x) (vl-bindintent->modinsts x-equiv))) :rule-classes :congruence)