Makes an empty elabscopes at the same nesting depth as the given scopestack.
(vl-elabscopes-init-ss ss) → init-scopes
Function:
(defun vl-elabscopes-init-ss (ss) (declare (xargs :guard (vl-scopestack-p ss))) (let ((__function__ 'vl-elabscopes-init-ss)) (declare (ignorable __function__)) (make-list (vl-scopestack-nesting-level ss) :initial-element (cons nil (make-vl-elabscope)))))
Theorem:
(defthm vl-elabscopes-p-of-vl-elabscopes-init-ss (b* ((init-scopes (vl-elabscopes-init-ss ss))) (vl-elabscopes-p init-scopes)) :rule-classes :rewrite)
Theorem:
(defthm vl-elabscopes-init-ss-of-vl-scopestack-fix-ss (equal (vl-elabscopes-init-ss (vl-scopestack-fix ss)) (vl-elabscopes-init-ss ss)))
Theorem:
(defthm vl-elabscopes-init-ss-vl-scopestack-equiv-congruence-on-ss (implies (vl-scopestack-equiv ss ss-equiv) (equal (vl-elabscopes-init-ss ss) (vl-elabscopes-init-ss ss-equiv))) :rule-classes :congruence)