Get the let-binding field from a smtlink-hint.
(smtlink-hint->let-binding x) → let-binding
This is an ordinary field accessor created by defprod.
Function:
(defun smtlink-hint->let-binding$inline (x) (declare (xargs :guard (smtlink-hint-p x))) (declare (xargs :guard t)) (let ((acl2::__function__ 'smtlink-hint->let-binding)) (declare (ignorable acl2::__function__)) (mbe :logic (b* ((x (and t x))) (let-binding-fix (cdr (std::da-nth 3 x)))) :exec (cdr (std::da-nth 3 x)))))
Theorem:
(defthm let-binding-p-of-smtlink-hint->let-binding (b* ((let-binding (smtlink-hint->let-binding$inline x))) (let-binding-p let-binding)) :rule-classes :rewrite)
Theorem:
(defthm smtlink-hint->let-binding$inline-of-smtlink-hint-fix-x (equal (smtlink-hint->let-binding$inline (smtlink-hint-fix x)) (smtlink-hint->let-binding$inline x)))
Theorem:
(defthm smtlink-hint->let-binding$inline-smtlink-hint-equiv-congruence-on-x (implies (smtlink-hint-equiv x x-equiv) (equal (smtlink-hint->let-binding$inline x) (smtlink-hint->let-binding$inline x-equiv))) :rule-classes :congruence)