(update-ppstate->lexemes-unread lexemes-unread ppstate) → ppstate
Function:
(defun update-ppstate->lexemes-unread (lexemes-unread ppstate) (declare (xargs :stobjs (ppstate))) (declare (xargs :guard (natp lexemes-unread))) (b* ((ppstate (ppstate-fix ppstate))) (raw-update-ppstate->lexemes-unread (nfix lexemes-unread) ppstate)))
Theorem:
(defthm ppstatep-of-update-ppstate->lexemes-unread (b* ((ppstate (update-ppstate->lexemes-unread lexemes-unread ppstate))) (ppstatep ppstate)) :rule-classes :rewrite)
Theorem:
(defthm update-ppstate->lexemes-unread-of-nfix-lexemes-unread (equal (update-ppstate->lexemes-unread (nfix lexemes-unread) ppstate) (update-ppstate->lexemes-unread lexemes-unread ppstate)))
Theorem:
(defthm update-ppstate->lexemes-unread-nat-equiv-congruence-on-lexemes-unread (implies (acl2::nat-equiv lexemes-unread lexemes-unread-equiv) (equal (update-ppstate->lexemes-unread lexemes-unread ppstate) (update-ppstate->lexemes-unread lexemes-unread-equiv ppstate))) :rule-classes :congruence)
Theorem:
(defthm update-ppstate->lexemes-unread-of-ppstate-fix-ppstate (equal (update-ppstate->lexemes-unread lexemes-unread (ppstate-fix ppstate)) (update-ppstate->lexemes-unread lexemes-unread ppstate)))
Theorem:
(defthm update-ppstate->lexemes-unread-ppstate-equiv-congruence-on-ppstate (implies (ppstate-equiv ppstate ppstate-equiv) (equal (update-ppstate->lexemes-unread lexemes-unread ppstate) (update-ppstate->lexemes-unread lexemes-unread ppstate-equiv))) :rule-classes :congruence)