(update-parstate->gcc gcc parstate) → parstate
Function:
(defun update-parstate->gcc (gcc parstate) (declare (xargs :stobjs (parstate))) (declare (xargs :guard (booleanp gcc))) (let ((__function__ 'update-parstate->gcc)) (declare (ignorable __function__)) (b* ((parstate (parstate-fix parstate))) (raw-update-parstate->gcc (bool-fix gcc) parstate))))
Theorem:
(defthm parstatep-of-update-parstate->gcc (b* ((parstate (update-parstate->gcc gcc parstate))) (parstatep parstate)) :rule-classes :rewrite)
Theorem:
(defthm update-parstate->gcc-of-bool-fix-gcc (equal (update-parstate->gcc (bool-fix gcc) parstate) (update-parstate->gcc gcc parstate)))
Theorem:
(defthm update-parstate->gcc-iff-congruence-on-gcc (implies (iff gcc gcc-equiv) (equal (update-parstate->gcc gcc parstate) (update-parstate->gcc gcc-equiv parstate))) :rule-classes :congruence)
Theorem:
(defthm update-parstate->gcc-of-parstate-fix-parstate (equal (update-parstate->gcc gcc (parstate-fix parstate)) (update-parstate->gcc gcc parstate)))
Theorem:
(defthm update-parstate->gcc-parstate-equiv-congruence-on-parstate (implies (parstate-equiv parstate parstate-equiv) (equal (update-parstate->gcc gcc parstate) (update-parstate->gcc gcc parstate-equiv))) :rule-classes :congruence)