Abstract a
(abs-system tree) → sys
Function:
(defun abs-system (tree) (declare (xargs :guard (abnf::treep tree))) (let ((__function__ 'abs-system)) (declare (ignorable __function__)) (b* (((okf (abnf::tree-list-tuple2 sub)) (check-tree-nonleaf-2 tree "system")) ((okf defs) (abs-*-definition sub.1st)) ((okf constraints) (abs-*-constraint sub.2nd))) (make-system :definitions defs :constraints constraints))))
Theorem:
(defthm system-resultp-of-abs-system (b* ((sys (abs-system tree))) (system-resultp sys)) :rule-classes :rewrite)
Theorem:
(defthm abs-system-of-tree-fix-tree (equal (abs-system (abnf::tree-fix tree)) (abs-system tree)))
Theorem:
(defthm abs-system-tree-equiv-congruence-on-tree (implies (abnf::tree-equiv tree tree-equiv) (equal (abs-system tree) (abs-system tree-equiv))) :rule-classes :congruence)