Check if a type is a signed integer type [C:6.2.5/4].
Function:
(defun type-signed-integerp (type) (declare (xargs :guard (typep type))) (let ((__function__ 'type-signed-integerp)) (declare (ignorable __function__)) (and (member-eq (type-kind type) '(:schar :sshort :sint :slong :sllong)) t)))
Theorem:
(defthm booleanp-of-type-signed-integerp (b* ((yes/no (type-signed-integerp type))) (booleanp yes/no)) :rule-classes :rewrite)
Theorem:
(defthm type-signed-integerp-of-type-fix-type (equal (type-signed-integerp (type-fix type)) (type-signed-integerp type)))
Theorem:
(defthm type-signed-integerp-type-equiv-congruence-on-type (implies (type-equiv type type-equiv) (equal (type-signed-integerp type) (type-signed-integerp type-equiv))) :rule-classes :congruence)