Function:
(defun uid-equal$inline (x y) (declare (xargs :guard (and (uidp x) (uidp y)))) (mbe :logic (uid-equiv x y) :exec (= (the unsigned-byte (uid->uid x)) (the unsigned-byte (uid->uid y)))))
Theorem:
(defthm uid-equal$inline-of-uid-fix-x (equal (uid-equal$inline (uid-fix x) y) (uid-equal$inline x y)))
Theorem:
(defthm uid-equal$inline-uid-equiv-congruence-on-x (implies (uid-equiv x x-equiv) (equal (uid-equal$inline x y) (uid-equal$inline x-equiv y))) :rule-classes :congruence)
Theorem:
(defthm uid-equal$inline-of-uid-fix-y (equal (uid-equal$inline x (uid-fix y)) (uid-equal$inline x y)))
Theorem:
(defthm uid-equal$inline-uid-equiv-congruence-on-y (implies (uid-equiv y y-equiv) (equal (uid-equal$inline x y) (uid-equal$inline x y-equiv))) :rule-classes :congruence)