(make-deref-subst idents) → subst
Function:
(defun make-deref-subst (idents) (declare (xargs :guard (ident-listp idents))) (if (endp idents) nil (omap::update (ident-fix (first idents)) (expr-paren (make-expr-unary :op (c$::unop-indir) :arg (make-expr-ident :ident (first idents)))) (make-deref-subst (rest idents)))))
Theorem:
(defthm ident-expr-mapp-of-make-deref-subst (b* ((subst (make-deref-subst idents))) (ident-expr-mapp subst)) :rule-classes :rewrite)