(svtv-override-triple-test-only-p triple spec) → *
Function:
(defun svtv-override-triple-test-only-p (triple spec) (declare (xargs :guard (and (svtv-override-triple-p triple) (svex-env-p spec)))) (let ((__function__ 'svtv-override-triple-test-only-p)) (declare (ignorable __function__)) (b* (((svtv-override-triple triple))) (svex-case triple.test :call nil :otherwise (or (svex-case triple.val :quote) (equal (svex-eval triple.val spec) (4vec-x)))))))
Theorem:
(defthm svtv-override-triple-test-only-p-correct (implies (and (svtv-override-triple-test-only-p triple spec) (svex-envs-1mask-equiv env1 env2)) (equal (equal (svtv-override-triple-envs-match triple env1 spec) (svtv-override-triple-envs-match triple env2 spec)) t)))
Theorem:
(defthm svtv-override-triple-test-only-p-of-svtv-override-triple-fix-triple (equal (svtv-override-triple-test-only-p (svtv-override-triple-fix triple) spec) (svtv-override-triple-test-only-p triple spec)))
Theorem:
(defthm svtv-override-triple-test-only-p-svtv-override-triple-equiv-congruence-on-triple (implies (svtv-override-triple-equiv triple triple-equiv) (equal (svtv-override-triple-test-only-p triple spec) (svtv-override-triple-test-only-p triple-equiv spec))) :rule-classes :congruence)
Theorem:
(defthm svtv-override-triple-test-only-p-of-svex-env-fix-spec (equal (svtv-override-triple-test-only-p triple (svex-env-fix spec)) (svtv-override-triple-test-only-p triple spec)))
Theorem:
(defthm svtv-override-triple-test-only-p-svex-env-equiv-congruence-on-spec (implies (svex-env-equiv spec spec-equiv) (equal (svtv-override-triple-test-only-p triple spec) (svtv-override-triple-test-only-p triple spec-equiv))) :rule-classes :congruence)