Get the position field from a parstate$.
(parstate$->position x) → position
This is an ordinary field accessor created by fty::defprod.
Function:
(defun parstate$->position$inline (x) (declare (xargs :guard (parstate$-p x))) (declare (xargs :guard t)) (mbe :logic (b* ((x (and t x))) (position-fix (car (cdr (car x))))) :exec (car (cdr (car x)))))
Theorem:
(defthm positionp-of-parstate$->position (b* ((position (parstate$->position$inline x))) (positionp position)) :rule-classes :rewrite)
Theorem:
(defthm parstate$->position$inline-of-parstate$-fix-x (equal (parstate$->position$inline (parstate$-fix x)) (parstate$->position$inline x)))
Theorem:
(defthm parstate$->position$inline-parstate$-equiv-congruence-on-x (implies (parstate$-equiv x x-equiv) (equal (parstate$->position$inline x) (parstate$->position$inline x-equiv))) :rule-classes :congruence)