Approximate the wires driven by an assignment.
(vl-driven-by-assign x) → drive-names
Function:
(defun vl-driven-by-assign (x) (declare (xargs :guard (vl-assign-p x))) (let ((__function__ 'vl-driven-by-assign)) (declare (ignorable __function__)) (vl-expr-names (vl-assign->lvalue x))))
Theorem:
(defthm string-listp-of-vl-driven-by-assign (implies (and (force (vl-assign-p x))) (b* ((drive-names (vl-driven-by-assign x))) (string-listp drive-names))) :rule-classes :rewrite)