Function:
(defun lhatom->svex (x) (declare (xargs :guard (lhatom-p x))) (let ((__function__ 'lhatom->svex)) (declare (ignorable __function__)) (lhatom-case x :z (svex-quote (4vec-z)) :var (svex-rsh x.rsh (svex-var x.name)))))
Theorem:
(defthm svex-p-of-lhatom->svex (b* ((xx (lhatom->svex x))) (svex-p xx)) :rule-classes :rewrite)
Theorem:
(defthm lhatom->svex-of-lhatom-fix-x (equal (lhatom->svex (lhatom-fix x)) (lhatom->svex x)))
Theorem:
(defthm lhatom->svex-lhatom-equiv-congruence-on-x (implies (lhatom-equiv x x-equiv) (equal (lhatom->svex x) (lhatom->svex x-equiv))) :rule-classes :congruence)
Theorem:
(defthm lhatom->svex-correct (equal (svex-eval (lhatom->svex x) env) (lhatom-eval x env)))