Evaluation semantics of realpart.
Function:
(defun eval-realpart (x) (declare (xargs :guard (valuep x))) (let ((__function__ 'eval-realpart)) (declare (ignorable __function__)) (value-number (if (value-case x :number) (realpart (value-number->get x)) 0))))
Theorem:
(defthm valuep-of-eval-realpart (b* ((result (eval-realpart x))) (valuep result)) :rule-classes :rewrite)
Theorem:
(defthm eval-realpart-of-value-fix-x (equal (eval-realpart (value-fix x)) (eval-realpart x)))
Theorem:
(defthm eval-realpart-value-equiv-congruence-on-x (implies (value-equiv x x-equiv) (equal (eval-realpart x) (eval-realpart x-equiv))) :rule-classes :congruence)