The ACL2 integer value of
(schar-format->min schar-format uchar-format) → min
Based on the discussion in schar-format,
this is either
Like schar-format->max,
this function also depends on the
Function:
(defun schar-format->min (schar-format uchar-format) (declare (xargs :guard (and (schar-formatp schar-format) (uchar-formatp uchar-format)))) (let ((__function__ 'schar-format->min)) (declare (ignorable __function__)) (if (and (equal (signed-format-kind (schar-format->signed schar-format)) :twos-complement) (not (schar-format->trap schar-format))) (- (expt 2 (1- (uchar-format->size uchar-format)))) (- (1- (expt 2 (1- (uchar-format->size uchar-format))))))))
Theorem:
(defthm integerp-of-schar-format->min (b* ((min (schar-format->min schar-format uchar-format))) (integerp min)) :rule-classes :rewrite)
Theorem:
(defthm schar-format->min-type-prescription (b* ((common-lisp::?min (schar-format->min schar-format uchar-format))) (and (integerp min) (< min 0))) :rule-classes :type-prescription)
Theorem:
(defthm schar-format->min-upper-bound (b* ((common-lisp::?min (schar-format->min schar-format uchar-format))) (<= min -127)) :rule-classes ((:linear :trigger-terms ((schar-format->min schar-format uchar-format)))))
Theorem:
(defthm schar-format->min-of-schar-format-fix-schar-format (equal (schar-format->min (schar-format-fix schar-format) uchar-format) (schar-format->min schar-format uchar-format)))
Theorem:
(defthm schar-format->min-schar-format-equiv-congruence-on-schar-format (implies (schar-format-equiv schar-format schar-format-equiv) (equal (schar-format->min schar-format uchar-format) (schar-format->min schar-format-equiv uchar-format))) :rule-classes :congruence)
Theorem:
(defthm schar-format->min-of-uchar-format-fix-uchar-format (equal (schar-format->min schar-format (uchar-format-fix uchar-format)) (schar-format->min schar-format uchar-format)))
Theorem:
(defthm schar-format->min-uchar-format-equiv-congruence-on-uchar-format (implies (uchar-format-equiv uchar-format uchar-format-equiv) (equal (schar-format->min schar-format uchar-format) (schar-format->min schar-format uchar-format-equiv))) :rule-classes :congruence)