• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Community
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
      • Kestrel-books
        • Crypto-hdwallet
        • Apt
        • Error-checking
        • Fty-extensions
        • Isar
        • Kestrel-utilities
        • Set
        • Soft
        • C
        • Bv
        • Imp-language
        • Event-macros
        • Java
        • Bitcoin
          • Bip32
          • Bech32
          • Bip39
            • *bip39-english-words*
            • Bip39-mnemonic-to-seed
            • Bip39-entropy-to-word-indexes
            • Bip39-entropy
            • Bip39-word-indexes-to-words
            • Bip39-words-to-mnemonic
            • Bip39-entropy-to-seed
            • Bip39-entropy-to-mnemonic
            • Bip39-english-words-bound-p
              • Bip39-entropy-size-p
            • Bip44
            • Base58
            • Bip43
            • Bytes
            • Base58check
            • Cryptography
            • Bip-350
            • Bip-173
          • Ethereum
          • Yul
          • Zcash
          • ACL2-programming-language
          • Prime-fields
          • Json
          • Syntheto
          • File-io-light
          • Cryptography
          • Number-theory
          • Lists-light
          • Axe
          • Builtins
          • Solidity
          • Helpers
          • Htclient
          • Typed-lists-light
          • Arithmetic-light
        • X86isa
        • Axe
        • Execloader
      • Math
      • Testing-utilities
    • Bip39

    Bip39-english-words-bound-p

    Check if all the strings in a list have a length less than or equal to 8, which is the maximum length in the English wordlist.

    Signature
    (bip39-english-words-bound-p strings) → yes/no
    Arguments
    strings — Guard (string-listp strings).
    Returns
    yes/no — Type (booleanp yes/no).

    The maximum length of the words in the English wordlist is 8. This function is used to prove upper bounds on the length of the menmonic, based on the lengths of the words in the English wordlist and on the maximum number of words in a mnemonic. See bip39-entropy-to-mnemonic.

    Definitions and Theorems

    Function: bip39-english-words-bound-p

    (defun bip39-english-words-bound-p (strings)
      (declare (xargs :guard (string-listp strings)))
      (or (endp strings)
          (and (<= (length (car strings)) 8)
               (bip39-english-words-bound-p (cdr strings)))))

    Theorem: booleanp-of-bip39-english-words-bound-p

    (defthm booleanp-of-bip39-english-words-bound-p
      (b* ((yes/no (bip39-english-words-bound-p strings)))
        (booleanp yes/no))
      :rule-classes :rewrite)