(smtp-cst-string-conc2-rep cst) → csts
Function:
(defun smtp-cst-string-conc2-rep (cst) (declare (xargs :guard (treep cst))) (declare (xargs :guard (and (smtp-cst-matchp cst "string") (equal (smtp-cst-string-conc? cst) 2)))) (let ((__function__ 'smtp-cst-string-conc2-rep)) (declare (ignorable __function__)) (tree-list-fix (nth 0 (smtp-cst-string-conc2 cst)))))
Theorem:
(defthm tree-listp-of-smtp-cst-string-conc2-rep (b* ((csts (smtp-cst-string-conc2-rep cst))) (tree-listp csts)) :rule-classes :rewrite)
Theorem:
(defthm smtp-cst-string-conc2-rep-match (implies (and (smtp-cst-matchp cst "string") (equal (smtp-cst-string-conc? cst) 2)) (b* ((csts (smtp-cst-string-conc2-rep cst))) (smtp-cst-list-rep-matchp csts "quoted-string"))) :rule-classes :rewrite)
Theorem:
(defthm smtp-cst-string-conc2-rep-of-tree-fix-cst (equal (smtp-cst-string-conc2-rep (tree-fix cst)) (smtp-cst-string-conc2-rep cst)))
Theorem:
(defthm smtp-cst-string-conc2-rep-tree-equiv-congruence-on-cst (implies (tree-equiv cst cst-equiv) (equal (smtp-cst-string-conc2-rep cst) (smtp-cst-string-conc2-rep cst-equiv))) :rule-classes :congruence)