(ext-declon-list-rename c$::ext-declon-list subst) → fty::result
Function:
(defun ext-declon-list-rename (c$::ext-declon-list subst) (declare (xargs :guard (and (ext-declon-listp c$::ext-declon-list) (ident-ident-alistp subst)))) (let ((__function__ 'ext-declon-list-rename)) (declare (ignorable __function__)) (if (endp c$::ext-declon-list) nil (cons (ext-declon-rename (car c$::ext-declon-list) subst) (ext-declon-list-rename (cdr c$::ext-declon-list) subst)))))
Theorem:
(defthm ext-declon-listp-of-ext-declon-list-rename (b* ((fty::result (ext-declon-list-rename c$::ext-declon-list subst))) (ext-declon-listp fty::result)) :rule-classes :rewrite)
Theorem:
(defthm ext-declon-list-rename-type-prescription (true-listp (ext-declon-list-rename c$::ext-declon-list subst)) :rule-classes :type-prescription)
Theorem:
(defthm ext-declon-list-rename-when-atom (implies (atom c$::ext-declon-list) (equal (ext-declon-list-rename c$::ext-declon-list subst) nil)))
Theorem:
(defthm ext-declon-list-rename-of-cons (equal (ext-declon-list-rename (cons c$::ext-declon c$::ext-declon-list) subst) (cons (ext-declon-rename c$::ext-declon subst) (ext-declon-list-rename c$::ext-declon-list subst))))
Theorem:
(defthm ext-declon-list-rename-of-append (equal (ext-declon-list-rename (append acl2::x acl2::y) subst) (append (ext-declon-list-rename acl2::x subst) (ext-declon-list-rename acl2::y subst))))
Theorem:
(defthm consp-of-ext-declon-list-rename (equal (consp (ext-declon-list-rename c$::ext-declon-list subst)) (consp c$::ext-declon-list)))
Theorem:
(defthm len-of-ext-declon-list-rename (equal (len (ext-declon-list-rename c$::ext-declon-list subst)) (len c$::ext-declon-list)))
Theorem:
(defthm nth-of-ext-declon-list-rename (equal (nth acl2::n (ext-declon-list-rename c$::ext-declon-list subst)) (if (< (nfix acl2::n) (len c$::ext-declon-list)) (ext-declon-rename (nth acl2::n c$::ext-declon-list) subst) nil)))
Theorem:
(defthm ext-declon-list-rename-of-revappend (equal (ext-declon-list-rename (revappend acl2::x acl2::y) subst) (revappend (ext-declon-list-rename acl2::x subst) (ext-declon-list-rename acl2::y subst))))
Theorem:
(defthm ext-declon-list-rename-of-reverse (equal (ext-declon-list-rename (reverse c$::ext-declon-list) subst) (reverse (ext-declon-list-rename c$::ext-declon-list subst))))
Theorem:
(defthm ext-declon-list-rename-of-ext-declon-list-fix-ext-declon-list (equal (ext-declon-list-rename (ext-declon-list-fix c$::ext-declon-list) subst) (ext-declon-list-rename c$::ext-declon-list subst)))
Theorem:
(defthm ext-declon-list-rename-ext-declon-list-equiv-congruence-on-ext-declon-list (implies (c$::ext-declon-list-equiv c$::ext-declon-list ext-declon-list-equiv) (equal (ext-declon-list-rename c$::ext-declon-list subst) (ext-declon-list-rename ext-declon-list-equiv subst))) :rule-classes :congruence)
Theorem:
(defthm ext-declon-list-rename-of-ident-ident-alist-fix-subst (equal (ext-declon-list-rename c$::ext-declon-list (ident-ident-alist-fix subst)) (ext-declon-list-rename c$::ext-declon-list subst)))
Theorem:
(defthm ext-declon-list-rename-ident-ident-alist-equiv-congruence-on-subst (implies (ident-ident-alist-equiv subst subst-equiv) (equal (ext-declon-list-rename c$::ext-declon-list subst) (ext-declon-list-rename c$::ext-declon-list subst-equiv))) :rule-classes :congruence)