(names->paths names) → new-paths
Function:
(defun names->paths (names) (declare (xargs :guard (namelist-p names))) (let ((__function__ 'names->paths)) (declare (ignorable __function__)) (if (atom names) nil (cons (make-path-wire :name (car names)) (names->paths (cdr names))))))
Theorem:
(defthm pathlist-p-of-names->paths (b* ((new-paths (names->paths names))) (pathlist-p new-paths)) :rule-classes :rewrite)
Theorem:
(defthm names->paths-of-namelist-fix-names (equal (names->paths (namelist-fix names)) (names->paths names)))
Theorem:
(defthm names->paths-namelist-equiv-congruence-on-names (implies (namelist-equiv names names-equiv) (equal (names->paths names) (names->paths names-equiv))) :rule-classes :congruence)