Get the root-parent field from a bip32-key-tree.
(bip32-key-tree->root-parent x) → root-parent
This is an ordinary field accessor created by fty::defprod.
Function:
(defun bip32-key-tree->root-parent$inline (x) (declare (xargs :guard (bip32-key-treep x))) (declare (xargs :guard t)) (let ((__function__ 'bip32-key-tree->root-parent)) (declare (ignorable __function__)) (mbe :logic (b* ((x (and t x)) (root-key (bip32-ext-key-fix (std::da-nth 0 x))) (root-depth (byte-fix (std::da-nth 1 x))) (root-index (ubyte32-fix (std::da-nth 2 x))) (root-parent (byte-list-fix (std::da-nth 3 x))) (index-tree (bip32-index-tree-fix (std::da-nth 4 x)))) (if (or (equal root-depth 0) (not (equal (len root-parent) 4))) (list 0 0 0 0) root-parent)) :exec (std::da-nth 3 x))))
Theorem:
(defthm byte-listp-of-bip32-key-tree->root-parent (b* ((root-parent (bip32-key-tree->root-parent$inline x))) (byte-listp root-parent)) :rule-classes :rewrite)
Theorem:
(defthm bip32-key-tree->root-parent$inline-of-bip32-key-tree-fix-x (equal (bip32-key-tree->root-parent$inline (bip32-key-tree-fix x)) (bip32-key-tree->root-parent$inline x)))
Theorem:
(defthm bip32-key-tree->root-parent$inline-bip32-key-tree-equiv-congruence-on-x (implies (bip32-key-tree-equiv x x-equiv) (equal (bip32-key-tree->root-parent$inline x) (bip32-key-tree->root-parent$inline x-equiv))) :rule-classes :congruence)