Gathers the names of all design elements that directly depend on particular descriptions.
(vl-dependent-elements-direct subs design) → superiors
Function:
(defun vl-dependent-elements-direct (subs design) (declare (xargs :guard (and (string-listp subs) (vl-design-p design)))) (let ((__function__ 'vl-dependent-elements-direct)) (declare (ignorable __function__)) (vl-collect-dependencies (string-list-fix subs) (vl-design-upgraph design))))
Theorem:
(defthm return-type-of-vl-dependent-elements-direct (b* ((superiors (vl-dependent-elements-direct subs design))) (and (string-listp superiors) (setp superiors))) :rule-classes :rewrite)
Theorem:
(defthm vl-dependent-elements-direct-of-string-list-fix-subs (equal (vl-dependent-elements-direct (string-list-fix subs) design) (vl-dependent-elements-direct subs design)))
Theorem:
(defthm vl-dependent-elements-direct-string-list-equiv-congruence-on-subs (implies (str::string-list-equiv subs subs-equiv) (equal (vl-dependent-elements-direct subs design) (vl-dependent-elements-direct subs-equiv design))) :rule-classes :congruence)
Theorem:
(defthm vl-dependent-elements-direct-of-vl-design-fix-design (equal (vl-dependent-elements-direct subs (vl-design-fix design)) (vl-dependent-elements-direct subs design)))
Theorem:
(defthm vl-dependent-elements-direct-vl-design-equiv-congruence-on-design (implies (vl-design-equiv design design-equiv) (equal (vl-dependent-elements-direct subs design) (vl-dependent-elements-direct subs design-equiv))) :rule-classes :congruence)