Evaluate a list of element of hex strings after the first one.
(eval-hex-string-rest-element-list elems) → bytes
This is done element-wise: each element is turned into a byte, and the order is preserved.
Function:
(defun eval-hex-string-rest-element-list (elems) (declare (xargs :guard (hex-string-rest-element-listp elems))) (let ((__function__ 'eval-hex-string-rest-element-list)) (declare (ignorable __function__)) (cond ((endp elems) nil) (t (cons (eval-hex-string-rest-element (car elems)) (eval-hex-string-rest-element-list (cdr elems)))))))
Theorem:
(defthm ubyte8-listp-of-eval-hex-string-rest-element-list (b* ((bytes (eval-hex-string-rest-element-list elems))) (ubyte8-listp bytes)) :rule-classes :rewrite)
Theorem:
(defthm eval-hex-string-rest-element-list-of-hex-string-rest-element-list-fix-elems (equal (eval-hex-string-rest-element-list (hex-string-rest-element-list-fix elems)) (eval-hex-string-rest-element-list elems)))
Theorem:
(defthm eval-hex-string-rest-element-list-hex-string-rest-element-list-equiv-congruence-on-elems (implies (hex-string-rest-element-list-equiv elems elems-equiv) (equal (eval-hex-string-rest-element-list elems) (eval-hex-string-rest-element-list elems-equiv))) :rule-classes :congruence)