Extend a screen with a message.
(print-message-to-screen message screen) → new-screen
We append the message to the end of the list.
Function:
(defun print-message-to-screen (message screen) (declare (xargs :guard (and (screen-messagep message) (screenp screen)))) (let ((__function__ 'print-message-to-screen)) (declare (ignorable __function__)) (screen (append (screen->messages screen) (list message)))))
Theorem:
(defthm screenp-of-print-message-to-screen (b* ((new-screen (print-message-to-screen message screen))) (screenp new-screen)) :rule-classes :rewrite)
Theorem:
(defthm print-message-to-screen-of-screen-message-fix-message (equal (print-message-to-screen (screen-message-fix message) screen) (print-message-to-screen message screen)))
Theorem:
(defthm print-message-to-screen-screen-message-equiv-congruence-on-message (implies (screen-message-equiv message message-equiv) (equal (print-message-to-screen message screen) (print-message-to-screen message-equiv screen))) :rule-classes :congruence)
Theorem:
(defthm print-message-to-screen-of-screen-fix-screen (equal (print-message-to-screen message (screen-fix screen)) (print-message-to-screen message screen)))
Theorem:
(defthm print-message-to-screen-screen-equiv-congruence-on-screen (implies (screen-equiv screen screen-equiv) (equal (print-message-to-screen message screen) (print-message-to-screen message screen-equiv))) :rule-classes :congruence)