Get the get field from a cstate-result-ok.
(cstate-result-ok->get acl2::x) → get
This is an ordinary field accessor created by fty::defprod.
Function:
(defun cstate-result-ok->get$inline (acl2::x) (declare (xargs :guard (cstate-resultp acl2::x))) (declare (xargs :guard (equal (cstate-result-kind acl2::x) :ok))) (let ((__function__ 'cstate-result-ok->get)) (declare (ignorable __function__)) (mbe :logic (b* ((acl2::x (and (equal (cstate-result-kind acl2::x) :ok) acl2::x))) (cstate-fix acl2::x)) :exec acl2::x)))
Theorem:
(defthm cstatep-of-cstate-result-ok->get (b* ((get (cstate-result-ok->get$inline acl2::x))) (cstatep get)) :rule-classes :rewrite)
Theorem:
(defthm cstate-result-ok->get$inline-of-cstate-result-fix-x (equal (cstate-result-ok->get$inline (cstate-result-fix acl2::x)) (cstate-result-ok->get$inline acl2::x)))
Theorem:
(defthm cstate-result-ok->get$inline-cstate-result-equiv-congruence-on-x (implies (cstate-result-equiv acl2::x x-equiv) (equal (cstate-result-ok->get$inline acl2::x) (cstate-result-ok->get$inline x-equiv))) :rule-classes :congruence)
Theorem:
(defthm cstate-result-ok->get-when-wrong-kind (implies (not (equal (cstate-result-kind acl2::x) :ok)) (equal (cstate-result-ok->get acl2::x) (cstate-fix nil))))