Get the size field from a dirabsdeclor-array-static1.
(dirabsdeclor-array-static1->size x) → size
This is an ordinary field accessor created by fty::defprod.
Function:
(defun dirabsdeclor-array-static1->size$inline (x) (declare (xargs :guard (dirabsdeclorp x))) (declare (xargs :guard (equal (dirabsdeclor-kind x) :array-static1))) (mbe :logic (b* ((x (and (equal (dirabsdeclor-kind x) :array-static1) x))) (expr-fix (cdr (cdr (cdr x))))) :exec (cdr (cdr (cdr x)))))
Theorem:
(defthm exprp-of-dirabsdeclor-array-static1->size (b* ((size (dirabsdeclor-array-static1->size$inline x))) (exprp size)) :rule-classes :rewrite)
Theorem:
(defthm dirabsdeclor-array-static1->size$inline-of-dirabsdeclor-fix-x (equal (dirabsdeclor-array-static1->size$inline (dirabsdeclor-fix x)) (dirabsdeclor-array-static1->size$inline x)))
Theorem:
(defthm dirabsdeclor-array-static1->size$inline-dirabsdeclor-equiv-congruence-on-x (implies (dirabsdeclor-equiv x x-equiv) (equal (dirabsdeclor-array-static1->size$inline x) (dirabsdeclor-array-static1->size$inline x-equiv))) :rule-classes :congruence)
Theorem:
(defthm dirabsdeclor-array-static1->size-when-wrong-kind (implies (not (equal (dirabsdeclor-kind x) :array-static1)) (equal (dirabsdeclor-array-static1->size x) (expr-fix nil))))