• 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
      • Std/system
      • Std/typed-lists
        • Std/typed-lists/character-listp
        • Std/typed-lists/symbol-listp
        • Std/typed-lists/boolean-listp
        • Std/typed-lists/string-listp
        • Std/typed-lists/eqlable-listp
        • Theorems-about-true-list-lists
        • Std/typed-lists/atom-listp
        • Unsigned-byte-listp
          • Defbytelist
            • Defbytelist-standard-instances
              • Ubyte8-list
              • Ubyte4-list
              • Ubyte32-list
              • Ubyte256-list
              • Ubyte128-list
              • Ubyte64-list
              • Ubyte3-list
              • Ubyte2-list
              • Ubyte16-list
              • Ubyte11-list
              • Ubyte1-list
              • Sbyte8-list
              • Sbyte64-list
              • Sbyte4-list
              • Sbyte32-list
              • Sbyte3-list
              • Sbyte256-list
              • Sbyte2-list
              • Sbyte16-list
              • Sbyte128-list
              • Sbyte1-list
              • Defubytelist
              • Defsbytelist
              • Defbytelist-implementation
            • Unsigned-byte-list-fix
          • Cons-listp
          • Cons-list-listp
          • Signed-byte-listp
          • String-or-symbol-listp
        • Std/bitsets
        • Std/testing
        • Std/typed-alists
        • Std/stobjs
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Defbytelist-standard-instances

    Defsbytelist

    Specialized form of defbytelist for generating standard fixtypes of true lists of signed bytes of explicit integer sizes.

    This macro just takes a positive integer as input.

    This macro generates fixtypes called acl2::sbyte<size>-list, where <size> consists of the decimal digits of the size. The recognizer, fixer, and equivalence are called acl2::sbyte<size>-listp, acl2::sbyte<size>-list-fix, and acl2::sbyte<size>-list-equiv.

    This also generates some standardized XDOC parents and short, and no XDOC long.

    Macro: defsbytelist

    (defmacro defsbytelist (size)
     (declare (xargs :guard (posp size)))
     (cons
      'defbytelist
      (cons
       (acl2::packn (list 'acl2::sbyte size '-list))
       (cons
        ':elt-type
        (cons
         (acl2::packn (list 'acl2::sbyte size))
         (cons
          ':pred
          (cons
           (acl2::packn (list 'acl2::sbyte size '-listp))
           (cons
            ':fix
            (cons
             (acl2::packn (list 'acl2::sbyte size '-list-fix))
             (cons
              ':equiv
              (cons
               (acl2::packn (list 'acl2::sbyte size '-list-equiv))
               (cons
                ':parents
                (cons
                 '(defbytelist-standard-instances)
                 (cons
                  ':short
                  (cons
                   (concatenate
                       'string
                       "Fixtype of true lists of signed bytes of size "
                       (coerce (explode-nonnegative-integer size 10 nil)
                               'string)
                       ".")
                   'nil)))))))))))))))