• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Community
    • Std
      • Std/lists
      • Omaps
      • Std/alists
      • Obags
      • Std/util
      • Std/strings
      • Std/osets
      • Std/io
      • Std/basic
        • Maybe-stringp
        • Maybe-natp
        • Two-nats-measure
        • Impossible
        • Bytep
          • Byte
          • Bytes-as-digits-in-base-256
            • Bebytes=>nat
              • Bebytes=>nat-injectivity+
              • Bebytes=>nat-injectivity*
              • Bebytes=>nat-injectivity
              • Nat=>bebytes+-of-bebytes=>nat
              • Nat=>bebytes*-of-bebytes=>nat
              • Nat=>bebytes-of-bebytes=>nat
              • Bebytes=>nat-of-nat=>bebytes+
              • Bebytes=>nat-of-nat=>bebytes*
              • Bebytes=>nat-of-nat=>bebytes
            • Lebytes=>nat
            • Nat=>bebytes
            • Nat=>lebytes
            • Nat=>bebytes*
            • Nat=>lebytes*
            • Nat=>lebytes+
            • Nat=>bebytes+
            • Bits/bytes-digit-grouping
          • Bytep-additional-theorems
        • Nat-list-measure
        • Maybe-posp
        • Nibblep
        • Organize-symbols-by-pkg
        • Organize-symbols-by-name
        • Lnfix
        • Good-valuep
        • Streqv
        • Chareqv
        • Symbol-package-name-non-cl
        • Arith-equivs
        • Induction-schemes
        • Maybe-integerp
        • Char-fix
        • Pos-fix
        • Symbol-package-name-lst
        • Mbt$
        • Maybe-bitp
        • Good-pseudo-termp
        • Str-fix
        • Maybe-string-fix
        • Nonkeyword-listp
        • Lifix
        • Bfix
        • Std/basic/if*
        • Impliez
        • Tuplep
        • Std/basic/intern-in-package-of-symbol
        • Lbfix
        • Std/basic/symbol-name-lst
        • True
        • Std/basic/rfix
        • Std/basic/realfix
        • Std/basic/member-symbol-name
        • Std/basic/fix
        • False
        • Std/basic/nfix
        • Std/basic/ifix
      • Std/system
      • Std/typed-lists
      • Std/bitsets
      • Std/testing
      • Std/typed-alists
      • Std/stobjs
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
    • Testing-utilities
  • Bytes-as-digits-in-base-256

Bebytes=>nat

Convert a big-endian list of bytes, seen as digits in base 256, to their value.

Signature
(bebytes=>nat digits) → nat
Arguments
digits — Guard (byte-listp digits).
Returns
nat — Type (natp nat).

Definitions and Theorems

Function: bebytes=>nat

(defun bebytes=>nat (digits)
  (declare (xargs :guard (byte-listp digits)))
  (let ((__function__ 'bebytes=>nat))
    (declare (ignorable __function__))
    (bendian=>nat 256 digits)))

Theorem: natp-of-bebytes=>nat

(defthm natp-of-bebytes=>nat
  (b* ((nat (bebytes=>nat digits)))
    (natp nat))
  :rule-classes :rewrite)

Theorem: bebytes=>nat-of-byte-list-fix-digits

(defthm bebytes=>nat-of-byte-list-fix-digits
  (equal (bebytes=>nat (byte-list-fix digits))
         (bebytes=>nat digits)))

Theorem: bebytes=>nat-byte-list-equiv-congruence-on-digits

(defthm bebytes=>nat-byte-list-equiv-congruence-on-digits
  (implies (byte-list-equiv digits digits-equiv)
           (equal (bebytes=>nat digits)
                  (bebytes=>nat digits-equiv)))
  :rule-classes :congruence)

Subtopics

Bebytes=>nat-injectivity+
Bebytes=>nat-injectivity*
Bebytes=>nat-injectivity
Nat=>bebytes+-of-bebytes=>nat
Nat=>bebytes*-of-bebytes=>nat
Nat=>bebytes-of-bebytes=>nat
Bebytes=>nat-of-nat=>bebytes+
Bebytes=>nat-of-nat=>bebytes*
Bebytes=>nat-of-nat=>bebytes