A 2vec is a 4vec that has no X or Z bits.
(2vec x) → *
Function:
(defun 2vec$inline (x) (declare (xargs :guard (integerp x))) (let ((__function__ '2vec)) (declare (ignorable __function__)) (mbe :logic (4vec x x) :exec x)))
Theorem:
(defthm 4vec-p-of-2vec (4vec-p (2vec x)))
Theorem:
(defthm 4vec->upper-of-2vec (equal (4vec->upper (2vec x)) (ifix x)))
Theorem:
(defthm 4vec->lower-of-2vec (equal (4vec->lower (2vec x)) (ifix x)))
Theorem:
(defthm equal-of-2vec (equal (equal (2vec x) y) (and (4vec-p y) (equal (4vec->upper y) (ifix x)) (equal (4vec->lower y) (ifix x)))))