Graph of downward dependencies. Fast alist.
(vl-design-downgraph x) → graph
Function:
(defun vl-design-downgraph (x) (declare (xargs :guard (vl-design-p x))) (let ((__function__ 'vl-design-downgraph)) (declare (ignorable __function__)) (b* (((vl-immdepgraph graph) (vl-design-immdeps x))) (make-fast-alist graph.deps))))
Theorem:
(defthm vl-depgraph-p-of-vl-design-downgraph (b* ((graph (vl-design-downgraph x))) (vl-depgraph-p graph)) :rule-classes :rewrite)
Theorem:
(defthm alist-values-are-sets-p-of-vl-design-downgraph (b* ((graph (vl-design-downgraph x))) (depgraph::alist-values-are-sets-p graph)) :rule-classes :rewrite)
Theorem:
(defthm vl-design-downgraph-of-vl-design-fix-x (equal (vl-design-downgraph (vl-design-fix x)) (vl-design-downgraph x)))
Theorem:
(defthm vl-design-downgraph-vl-design-equiv-congruence-on-x (implies (vl-design-equiv x x-equiv) (equal (vl-design-downgraph x) (vl-design-downgraph x-equiv))) :rule-classes :congruence)