Turn a Base58 value into the corresponding character.
(base58-val=>char val) → char
The correspondence is given in the table in Section `Base58 symbol chart' of Page `Base58Check encoding' of [Wiki]. Since the list *base58-characters* is ordered according to increasing values, this function is essentially nth.
Function:
(defun base58-val=>char (val) (declare (xargs :guard (base58-valuep val))) (let ((__function__ 'base58-val=>char)) (declare (ignorable __function__)) (nth (base58-value-fix val) *base58-characters*)))
Theorem:
(defthm base58-characterp-of-base58-val=>char (b* ((char (base58-val=>char val))) (base58-characterp char)) :rule-classes :rewrite)
Theorem:
(defthm base58-val=>char-of-base58-value-fix-val (equal (base58-val=>char (base58-value-fix val)) (base58-val=>char val)))
Theorem:
(defthm base58-val=>char-base58-value-equiv-congruence-on-val (implies (base58-value-equiv val val-equiv) (equal (base58-val=>char val) (base58-val=>char val-equiv))) :rule-classes :congruence)