Check if the features indicate embedded systems.
That is, if the base is RV32E or RV64E.
Function:
(defun feat-embedp (feat) (declare (xargs :guard (featp feat))) (let ((__function__ 'feat-embedp)) (declare (ignorable __function__)) (or (feat-base-case (feat->base feat) :rv32e) (feat-base-case (feat->base feat) :rv64e))))
Theorem:
(defthm booleanp-of-feat-embedp (b* ((yes/no (feat-embedp feat))) (booleanp yes/no)) :rule-classes :rewrite)
Theorem:
(defthm feat-embedp-of-feat-fix-feat (equal (feat-embedp (feat-fix feat)) (feat-embedp feat)))
Theorem:
(defthm feat-embedp-feat-equiv-congruence-on-feat (implies (feat-equiv feat feat-equiv) (equal (feat-embedp feat) (feat-embedp feat-equiv))) :rule-classes :congruence)