(vl-value-to-string-aux value acc) → acc
Function:
(defun vl-value-to-string-aux (value acc) (declare (xargs :guard (and (natp value) (character-listp acc)))) (let ((__function__ 'vl-value-to-string-aux)) (declare (ignorable __function__)) (if (zp value) (character-list-fix acc) (vl-value-to-string-aux (ash (lnfix value) -8) (cons (code-char (logand value 255)) acc)))))
Theorem:
(defthm character-listp-of-vl-value-to-string-aux (b* ((acc (vl-value-to-string-aux value acc))) (character-listp acc)) :rule-classes :rewrite)
Theorem:
(defthm vl-value-to-string-aux-of-nfix-value (equal (vl-value-to-string-aux (nfix value) acc) (vl-value-to-string-aux value acc)))
Theorem:
(defthm vl-value-to-string-aux-nat-equiv-congruence-on-value (implies (acl2::nat-equiv value value-equiv) (equal (vl-value-to-string-aux value acc) (vl-value-to-string-aux value-equiv acc))) :rule-classes :congruence)
Theorem:
(defthm vl-value-to-string-aux-of-make-character-list-acc (equal (vl-value-to-string-aux value (make-character-list acc)) (vl-value-to-string-aux value acc)))
Theorem:
(defthm vl-value-to-string-aux-charlisteqv-congruence-on-acc (implies (str::charlisteqv acc acc-equiv) (equal (vl-value-to-string-aux value acc) (vl-value-to-string-aux value acc-equiv))) :rule-classes :congruence)