Evaluation semantics of symbol-name.
Function:
(defun eval-symbol-name (x) (declare (xargs :guard (valuep x))) (let ((__function__ 'eval-symbol-name)) (declare (ignorable __function__)) (value-string (if (value-case x :symbol) (symbol-value->name (value-symbol->get x)) ""))))
Theorem:
(defthm valuep-of-eval-symbol-name (b* ((result (eval-symbol-name x))) (valuep result)) :rule-classes :rewrite)
Theorem:
(defthm eval-symbol-name-of-value-fix-x (equal (eval-symbol-name (value-fix x)) (eval-symbol-name x)))
Theorem:
(defthm eval-symbol-name-value-equiv-congruence-on-x (implies (value-equiv x x-equiv) (equal (eval-symbol-name x) (eval-symbol-name x-equiv))) :rule-classes :congruence)