(4vmask-subsumes x y) checks whether the 4vmask
Function:
(defun 4vmask-subsumes$inline (x y) (declare (xargs :guard (and (4vmask-p x) (4vmask-p y)))) (let ((__function__ '4vmask-subsumes)) (declare (ignorable __function__)) (not (sparseint-test-bitandc1 (4vmask-fix x) (4vmask-fix y)))))
Theorem:
(defthm booleanp-of-4vmask-subsumes (b* ((subsumesp (4vmask-subsumes$inline x y))) (booleanp subsumesp)) :rule-classes :type-prescription)
Theorem:
(defthm 4vmask-subsumes$inline-of-4vmask-fix-x (equal (4vmask-subsumes$inline (4vmask-fix x) y) (4vmask-subsumes$inline x y)))
Theorem:
(defthm 4vmask-subsumes$inline-4vmask-equiv-congruence-on-x (implies (4vmask-equiv x x-equiv) (equal (4vmask-subsumes$inline x y) (4vmask-subsumes$inline x-equiv y))) :rule-classes :congruence)
Theorem:
(defthm 4vmask-subsumes$inline-of-4vmask-fix-y (equal (4vmask-subsumes$inline x (4vmask-fix y)) (4vmask-subsumes$inline x y)))
Theorem:
(defthm 4vmask-subsumes$inline-4vmask-equiv-congruence-on-y (implies (4vmask-equiv y y-equiv) (equal (4vmask-subsumes$inline x y) (4vmask-subsumes$inline x y-equiv))) :rule-classes :congruence)
Theorem:
(defthm 4vmask-subsumes-implies-masks-equal (implies (and (4vmask-subsumes m1 m2) (equal (4vec-mask m1 x) (4vec-mask m1 y))) (equal (equal (4vec-mask m2 x) (4vec-mask m2 y)) t)))
Theorem:
(defthm 4vmask-subsumes-neg-1-implies-fixes (implies (and (4vmask-subsumes m1 -1) (equal (4vec-mask m1 x) (4vec-mask m1 y))) (equal (equal (4vec-fix x) (4vec-fix y)) t)))
Theorem:
(defthm 4vmask-subsumes-trans-1 (implies (and (4vmask-subsumes a b) (4vmask-subsumes b c)) (4vmask-subsumes a c)))
Theorem:
(defthm 4vmask-subsumes-trans-2 (implies (and (4vmask-subsumes b c) (4vmask-subsumes a b)) (4vmask-subsumes a c)))
Theorem:
(defthm 4vmask-subsumes-self (4vmask-subsumes x x))