Lift tterm-constant to lists.
(tterm-constant-list values) → terms
Function:
(defun tterm-constant-list (values) (declare (xargs :guard (value-listp values))) (let ((__function__ 'tterm-constant-list)) (declare (ignorable __function__)) (cond ((endp values) nil) (t (cons (tterm-constant (car values)) (tterm-constant-list (cdr values)))))))
Theorem:
(defthm tterm-listp-of-tterm-constant-list (b* ((terms (tterm-constant-list values))) (tterm-listp terms)) :rule-classes :rewrite)
Theorem:
(defthm tterm-constant-list-of-value-list-fix-values (equal (tterm-constant-list (value-list-fix values)) (tterm-constant-list values)))
Theorem:
(defthm tterm-constant-list-value-list-equiv-congruence-on-values (implies (value-list-equiv values values-equiv) (equal (tterm-constant-list values) (tterm-constant-list values-equiv))) :rule-classes :congruence)