Fixer for values of type
Function:
(defun sint-fix (x) (declare (xargs :guard (sintp x))) (let ((__function__ 'sint-fix)) (declare (ignorable __function__)) (mbe :logic (b* ((get (sint-integer-fix (std::da-nth 0 (cdr x))))) (cons :sint (list get))) :exec x)))
Theorem:
(defthm sintp-of-sint-fix (b* ((fixed-x (sint-fix x))) (sintp fixed-x)) :rule-classes :rewrite)
Theorem:
(defthm sint-fix-when-sintp (implies (sintp x) (equal (sint-fix x) x)))