Builds the vl-duperhs-alistp for a list of assignments.
(vl-make-duperhs-alist x) → alist
Function:
(defun vl-make-duperhs-alist (x) (declare (xargs :guard (vl-assignlist-p x))) (let ((__function__ 'vl-make-duperhs-alist)) (declare (ignorable __function__)) (b* ((alist (len x)) (alist (vl-make-duperhs-alist-aux x alist)) (ans (hons-shrink-alist alist nil))) (fast-alist-free alist) (fast-alist-free ans) ans)))
Theorem:
(defthm vl-duperhs-alistp-of-vl-make-duperhs-alist (implies (and (force (vl-assignlist-p x))) (b* ((alist (vl-make-duperhs-alist x))) (vl-duperhs-alistp alist))) :rule-classes :rewrite)