(ocst-leave-conc abnf::cst) → abnf::cstss
Function:
(defun ocst-leave-conc (abnf::cst) (declare (xargs :guard (abnf::treep abnf::cst))) (declare (xargs :guard (ocst-matchp abnf::cst "leave"))) (let ((__function__ 'ocst-leave-conc)) (declare (ignorable __function__)) (abnf::tree-nonleaf->branches abnf::cst)))
Theorem:
(defthm tree-list-listp-of-ocst-leave-conc (b* ((abnf::cstss (ocst-leave-conc abnf::cst))) (abnf::tree-list-listp abnf::cstss)) :rule-classes :rewrite)
Theorem:
(defthm ocst-leave-conc-match (implies (ocst-matchp abnf::cst "leave") (b* ((abnf::cstss (ocst-leave-conc abnf::cst))) (ocst-list-list-conc-matchp abnf::cstss "%s\"leave\""))) :rule-classes :rewrite)
Theorem:
(defthm ocst-leave-conc-of-tree-fix-cst (equal (ocst-leave-conc (abnf::tree-fix abnf::cst)) (ocst-leave-conc abnf::cst)))
Theorem:
(defthm ocst-leave-conc-tree-equiv-congruence-on-cst (implies (abnf::tree-equiv abnf::cst cst-equiv) (equal (ocst-leave-conc abnf::cst) (ocst-leave-conc cst-equiv))) :rule-classes :congruence)