(vttree->constraints-acc x context acc) → constraints
Function:
(defun vttree->constraints-acc (x context acc) (declare (xargs :guard (and (vttree-p x) (sv::constraintlist-p acc)))) (let ((__function__ 'vttree->constraints-acc)) (declare (ignorable __function__)) (vttree-case x :none (sv::constraintlist-fix acc) :constraints (revappend-without-guard (if context (constraintlist-add-ctx x.constraints context) x.constraints) (sv::constraintlist-fix acc)) :warnings (sv::constraintlist-fix acc) :context (vttree->constraints-acc x.subtree (or x.ctx context) acc) :branch (vttree->constraints-acc x.right context (vttree->constraints-acc x.left context acc)))))
Theorem:
(defthm constraintlist-p-of-vttree->constraints-acc (b* ((constraints (vttree->constraints-acc x context acc))) (sv::constraintlist-p constraints)) :rule-classes :rewrite)
Theorem:
(defthm vttree->constraints-acc-of-vttree-fix-x (equal (vttree->constraints-acc (vttree-fix x) context acc) (vttree->constraints-acc x context acc)))
Theorem:
(defthm vttree->constraints-acc-vttree-equiv-congruence-on-x (implies (vttree-equiv x x-equiv) (equal (vttree->constraints-acc x context acc) (vttree->constraints-acc x-equiv context acc))) :rule-classes :congruence)
Theorem:
(defthm vttree->constraints-acc-of-constraintlist-fix-acc (equal (vttree->constraints-acc x context (sv::constraintlist-fix acc)) (vttree->constraints-acc x context acc)))
Theorem:
(defthm vttree->constraints-acc-constraintlist-equiv-congruence-on-acc (implies (sv::constraintlist-equiv acc acc-equiv) (equal (vttree->constraints-acc x context acc) (vttree->constraints-acc x context acc-equiv))) :rule-classes :congruence)