(ppstate->lexemes-read ppstate) → lexemes-read
Function:
(defun ppstate->lexemes-read (ppstate) (declare (xargs :stobjs (ppstate))) (declare (xargs :guard t)) (mbe :logic (if (ppstatep ppstate) (raw-ppstate->lexemes-read ppstate) 0) :exec (raw-ppstate->lexemes-read ppstate)))
Theorem:
(defthm natp-of-ppstate->lexemes-read (b* ((lexemes-read (ppstate->lexemes-read ppstate))) (natp lexemes-read)) :rule-classes (:rewrite :type-prescription))
Theorem:
(defthm ppstate->lexemes-read-of-ppstate-fix-ppstate (equal (ppstate->lexemes-read (ppstate-fix ppstate)) (ppstate->lexemes-read ppstate)))
Theorem:
(defthm ppstate->lexemes-read-ppstate-equiv-congruence-on-ppstate (implies (ppstate-equiv ppstate ppstate-equiv) (equal (ppstate->lexemes-read ppstate) (ppstate->lexemes-read ppstate-equiv))) :rule-classes :congruence)