Fix an arbitrary object to a 4vec.
Function:
(defun 4vec-fix$inline (x) (declare (xargs :guard (4vec-p x))) (let ((__function__ '4vec-fix)) (declare (ignorable __function__)) (mbe :logic (if (consp x) (4vec (ifix (car x)) (ifix (cdr x))) (if (integerp x) x (4vec-x))) :exec x)))
Theorem:
(defthm 4vec-p-of-4vec-fix (b* ((newx (4vec-fix$inline x))) (4vec-p newx)) :rule-classes :rewrite)
Theorem:
(defthm 4vec-fix-of-4vec (implies (4vec-p x) (equal (4vec-fix x) x)))