Get the subpath field from a path-scope.
This is an ordinary field accessor created by defprod.
Function:
(defun path-scope->subpath$inline (x) (declare (xargs :guard (path-p x))) (declare (xargs :guard (equal (path-kind x) :scope))) (let ((__function__ 'path-scope->subpath)) (declare (ignorable __function__)) (mbe :logic (b* ((x (and (equal (path-kind x) :scope) x))) (path-fix (cdr x))) :exec (cdr x))))
Theorem:
(defthm path-p-of-path-scope->subpath (b* ((subpath (path-scope->subpath$inline x))) (path-p subpath)) :rule-classes :rewrite)
Theorem:
(defthm path-scope->subpath$inline-of-path-fix-x (equal (path-scope->subpath$inline (path-fix x)) (path-scope->subpath$inline x)))
Theorem:
(defthm path-scope->subpath$inline-path-equiv-congruence-on-x (implies (path-equiv x x-equiv) (equal (path-scope->subpath$inline x) (path-scope->subpath$inline x-equiv))) :rule-classes :congruence)
Theorem:
(defthm path-scope->subpath-when-wrong-kind (implies (not (equal (path-kind x) :scope)) (equal (path-scope->subpath x) (path-fix nil))))