Check if the account keys in a tree comply with the BIP 44 wallet structure.
This is similar to bip44-compliant-addresses-p.
Theorem:
(defthm bip44-compliant-accounts-p-suff (implies (and (natp account-index-limit) (bip44-compliant-accounts-for-limit-p tree coin-index account-index-limit)) (bip44-compliant-accounts-p tree coin-index)))
Theorem:
(defthm booleanp-of-bip44-compliant-accounts-p (b* ((yes/no (bip44-compliant-accounts-p tree coin-index))) (booleanp yes/no)) :rule-classes :rewrite)
Theorem:
(defthm bip44-compliant-accounts-p-of-bip32-key-tree-fix-tree (equal (bip44-compliant-accounts-p (bip32-key-tree-fix tree) coin-index) (bip44-compliant-accounts-p tree coin-index)))
Theorem:
(defthm bip44-compliant-accounts-p-bip32-key-tree-equiv-congruence-on-tree (implies (bip32-key-tree-equiv tree tree-equiv) (equal (bip44-compliant-accounts-p tree coin-index) (bip44-compliant-accounts-p tree-equiv coin-index))) :rule-classes :congruence)
Theorem:
(defthm bip44-compliant-accounts-p-of-ubyte32-fix-coin-index (equal (bip44-compliant-accounts-p tree (ubyte32-fix coin-index)) (bip44-compliant-accounts-p tree coin-index)))
Theorem:
(defthm bip44-compliant-accounts-p-ubyte32-equiv-congruence-on-coin-index (implies (acl2::ubyte32-equiv coin-index coin-index-equiv) (equal (bip44-compliant-accounts-p tree coin-index) (bip44-compliant-accounts-p tree coin-index-equiv))) :rule-classes :congruence)