Get the member field from a member-designor-sub.
(member-designor-sub->member x) → member
This is an ordinary field accessor created by fty::defprod.
Function:
(defun member-designor-sub->member$inline (x) (declare (xargs :guard (member-designorp x))) (declare (xargs :guard (equal (member-designor-kind x) :sub))) (mbe :logic (b* ((x (and (equal (member-designor-kind x) :sub) x))) (member-designor-fix (car (cdr x)))) :exec (car (cdr x))))
Theorem:
(defthm member-designorp-of-member-designor-sub->member (b* ((member (member-designor-sub->member$inline x))) (member-designorp member)) :rule-classes :rewrite)
Theorem:
(defthm member-designor-sub->member$inline-of-member-designor-fix-x (equal (member-designor-sub->member$inline (member-designor-fix x)) (member-designor-sub->member$inline x)))
Theorem:
(defthm member-designor-sub->member$inline-member-designor-equiv-congruence-on-x (implies (member-designor-equiv x x-equiv) (equal (member-designor-sub->member$inline x) (member-designor-sub->member$inline x-equiv))) :rule-classes :congruence)
Theorem:
(defthm member-designor-sub->member-when-wrong-kind (implies (not (equal (member-designor-kind x) :sub)) (equal (member-designor-sub->member x) (member-designor-fix nil))))