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