Oset of the values of an omap.
Function:
(defun values (map) (declare (xargs :guard (mapp map))) (let ((__function__ 'values)) (declare (ignorable __function__)) (cond ((empty map) nil) (t (mv-let (key val) (head map) (declare (ignore key)) (insert val (values (tail map))))))))
Theorem:
(defthm setp-of-values (b* ((vals (values map))) (setp vals)) :rule-classes :rewrite)
Theorem:
(defthm values-when-empty (implies (empty map) (equal (values map) nil)) :rule-classes (:rewrite :type-prescription))