(sp-sse-sqrt x mxcsr) → (mv * * *)
Function:
(defun sp-sse-sqrt (x mxcsr) (declare (type (unsigned-byte 32) x) (type (unsigned-byte 32) mxcsr)) (let ((__function__ 'sp-sse-sqrt)) (declare (ignorable __function__)) (sse-sqrt x mxcsr 8 23)))
Theorem:
(defthm n32p-result-sp-sse-sqrt (unsigned-byte-p 32 (mv-nth 1 (sp-sse-sqrt x mxcsr))) :rule-classes (:rewrite (:type-prescription :corollary (natp (mv-nth 1 (sp-sse-sqrt x mxcsr))) :hints (("Goal" :in-theory '(unsigned-byte-p integer-range-p natp)))) (:linear :corollary (and (<= 0 (mv-nth 1 (sp-sse-sqrt x mxcsr))) (< (mv-nth 1 (sp-sse-sqrt x mxcsr)) 4294967296)) :hints (("Goal" :in-theory '(unsigned-byte-p integer-range-p (:e expt)))))))
Theorem:
(defthm n32p-mxcsr-sp-sse-sqrt (unsigned-byte-p 32 (mv-nth 2 (sp-sse-sqrt x mxcsr))) :rule-classes (:rewrite (:type-prescription :corollary (natp (mv-nth 2 (sp-sse-sqrt x mxcsr))) :hints (("Goal" :in-theory '(unsigned-byte-p integer-range-p natp)))) (:linear :corollary (and (<= 0 (mv-nth 2 (sp-sse-sqrt x mxcsr))) (< (mv-nth 2 (sp-sse-sqrt x mxcsr)) 4294967296)) :hints (("Goal" :in-theory '(unsigned-byte-p integer-range-p (:e expt)))))))