Specification of the circuit.
The specification is a predicate over a list of field elements. The predicate is defined as bit-listp, i.e. the recognizer of lists of bits.
Function:
(defun boolean-assert-all-spec (xs prime) (declare (xargs :guard (and (primep prime) (pfield::fe-listp xs prime)))) (declare (ignore prime)) (let ((__function__ 'boolean-assert-all-spec)) (declare (ignorable __function__)) (bit-listp xs)))
Theorem:
(defthm booleanp-of-boolean-assert-all-spec (b* ((yes/no (boolean-assert-all-spec xs prime))) (booleanp yes/no)) :rule-classes :rewrite)