Print a list of zero or more characters or escape sequences usable in string-literals.
(print-s-char-list schars pstate) → new-pstate
Function:
(defun print-s-char-list (schars pstate) (declare (xargs :guard (and (s-char-listp schars) (pristatep pstate)))) (let ((__function__ 'print-s-char-list)) (declare (ignorable __function__)) (b* (((when (endp schars)) (pristate-fix pstate)) (pstate (print-s-char (car schars) pstate))) (print-s-char-list (cdr schars) pstate))))
Theorem:
(defthm pristatep-of-print-s-char-list (b* ((new-pstate (print-s-char-list schars pstate))) (pristatep new-pstate)) :rule-classes :rewrite)
Theorem:
(defthm print-s-char-list-of-s-char-list-fix-schars (equal (print-s-char-list (s-char-list-fix schars) pstate) (print-s-char-list schars pstate)))
Theorem:
(defthm print-s-char-list-s-char-list-equiv-congruence-on-schars (implies (s-char-list-equiv schars schars-equiv) (equal (print-s-char-list schars pstate) (print-s-char-list schars-equiv pstate))) :rule-classes :congruence)
Theorem:
(defthm print-s-char-list-of-pristate-fix-pstate (equal (print-s-char-list schars (pristate-fix pstate)) (print-s-char-list schars pstate)))
Theorem:
(defthm print-s-char-list-pristate-equiv-congruence-on-pstate (implies (pristate-equiv pstate pstate-equiv) (equal (print-s-char-list schars pstate) (print-s-char-list schars pstate-equiv))) :rule-classes :congruence)