FGL binder that checks whether X is syntactically a non-Boolean.
(check-non-booleanp ans x) → *
See fgl-syntactic-checker-binders and see binder for details.
Function:
(defun check-non-booleanp (ans x) (declare (xargs :guard t)) (let ((__function__ 'check-non-booleanp)) (declare (ignorable __function__)) (and (not (booleanp x)) ans t)))
Theorem:
(defthm check-non-booleanp-implies-not-booleanp (implies (check-non-booleanp ans x) (not (booleanp x))) :rule-classes :forward-chaining)