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