Function:
(defun const-aidentp (const gcc) (declare (xargs :guard (and (constp const) (booleanp gcc)))) (declare (ignorable const)) (let ((__function__ 'const-aidentp)) (declare (ignorable __function__)) (const-case const :int t :float t :enum (ident-aidentp (const-enum->unwrap const) gcc) :char t)))
Theorem:
(defthm booleanp-of-const-aidentp (b* ((fty::result (const-aidentp const gcc))) (booleanp fty::result)) :rule-classes :rewrite)
Theorem:
(defthm const-aidentp-of-const-fix-const (equal (const-aidentp (const-fix const) gcc) (const-aidentp const gcc)))
Theorem:
(defthm const-aidentp-const-equiv-congruence-on-const (implies (const-equiv const const-equiv) (equal (const-aidentp const gcc) (const-aidentp const-equiv gcc))) :rule-classes :congruence)
Theorem:
(defthm const-aidentp-of-bool-fix-gcc (equal (const-aidentp const (bool-fix gcc)) (const-aidentp const gcc)))
Theorem:
(defthm const-aidentp-iff-congruence-on-gcc (implies (iff gcc gcc-equiv) (equal (const-aidentp const gcc) (const-aidentp const gcc-equiv))) :rule-classes :congruence)