Apply
This always returns an
Function:
(defun lognot-integer-value (val) (declare (xargs :guard (valuep val))) (declare (xargs :guard (value-integerp val))) (let ((__function__ 'lognot-integer-value)) (declare (ignorable __function__)) (if (equal (value-integer->get val) 0) (value-sint 1) (value-sint 0))))
Theorem:
(defthm valuep-of-lognot-integer-value (b* ((resval (lognot-integer-value val))) (valuep resval)) :rule-classes :rewrite)
Theorem:
(defthm lognot-integer-value-of-value-fix-val (equal (lognot-integer-value (value-fix val)) (lognot-integer-value val)))
Theorem:
(defthm lognot-integer-value-value-equiv-congruence-on-val (implies (value-equiv val val-equiv) (equal (lognot-integer-value val) (lognot-integer-value val-equiv))) :rule-classes :congruence)