Get the sign? field from a dexpo.
(dexpo->sign? x) → sign?
This is an ordinary field accessor created by fty::defprod.
Function:
(defun dexpo->sign?$inline (x) (declare (xargs :guard (dexpop x))) (declare (xargs :guard t)) (mbe :logic (b* ((x (and t x))) (sign-option-fix (car (cdr x)))) :exec (car (cdr x))))
Theorem:
(defthm sign-optionp-of-dexpo->sign? (b* ((sign? (dexpo->sign?$inline x))) (sign-optionp sign?)) :rule-classes :rewrite)
Theorem:
(defthm dexpo->sign?$inline-of-dexpo-fix-x (equal (dexpo->sign?$inline (dexpo-fix x)) (dexpo->sign?$inline x)))
Theorem:
(defthm dexpo->sign?$inline-dexpo-equiv-congruence-on-x (implies (dexpo-equiv x x-equiv) (equal (dexpo->sign?$inline x) (dexpo->sign?$inline x-equiv))) :rule-classes :congruence)