(sv::aig-abs-s x) → xabs
Function:
(defun sv::aig-abs-s (x) (declare (xargs :guard (true-listp x))) (let ((__function__ 'sv::aig-abs-s)) (declare (ignorable __function__)) (let ((sign (sv::aig-sign-s x))) (sv::aig-loghead-ns (integer-length-bound-s x) (sv::aig-+-ss sign nil (sv::aig-logxor-ss (sv::aig-sterm sign) x))))))
Theorem:
(defthm sv::true-listp-of-aig-abs-s (b* ((xabs (sv::aig-abs-s x))) (true-listp xabs)) :rule-classes :type-prescription)
Theorem:
(defthm sv::aig-abs-s-correct (b* ((xabs (sv::aig-abs-s x))) (and (equal (sv::aig-list->s xabs env) (abs (sv::aig-list->s x env))))))