Recognize the possible parameters that describe a Java implementation's support of the double-extended-exponent value set [JLS14:4.2.3].
(doublex-paramp k) → yes/no
A Java implementation
may support a double-extended-exponent value set or not.
If it does, an implementation-dependent constant
Our Java formalization is parameterized over the specifics of this support,
via the value of the nullary function doublex-param,
which is constrained to be either
Function:
(defun doublex-paramp (k) (declare (xargs :guard t)) (let ((__function__ 'doublex-paramp)) (declare (ignorable __function__)) (or (null k) (and (natp k) (>= k 15)))))
Theorem:
(defthm booleanp-of-doublex-paramp (b* ((yes/no (doublex-paramp k))) (booleanp yes/no)) :rule-classes :rewrite)