• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Community
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
      • Kestrel-books
        • Crypto-hdwallet
        • Apt
        • Error-checking
        • Fty-extensions
        • Isar
        • Kestrel-utilities
        • Set
        • C
        • Soft
        • Bv
        • Imp-language
        • Ethereum
        • Event-macros
          • Evmac-input-hints-p
          • Evmac-input-print-p
          • Event-macro-input-processing
          • Function-definedness
          • Event-macro-screen-printing
          • Make-event-terse
          • Event-macro-applicability-conditions
          • Event-macro-results
          • Template-generators
          • Event-macro-event-generators
          • Event-macro-proof-preparation
          • Try-event
          • Restore-output?
          • Restore-output
          • Fail-event
          • Cw-event
          • Event-macro-xdoc-constructors
            • Event-macro-xdoc-constructors-user-level
              • Xdoc::evmac-desc-function/lambda/macro
              • Xdoc::evmac-desc-term
              • Xdoc::evmac-topic-design-notes
              • Xdoc::evmac-appcond
              • Xdoc::evmac-desc-input-name
              • Xdoc::evmac-section-redundancy
              • Xdoc::evmac-input-show-only
              • Xdoc::evmac-input-print
              • Xdoc::evmac-desc-input-enable-t/nil
              • Xdoc::evmac-section-appconds
              • Xdoc::evmac-input-hints
                • Xdoc::evmac-section-generated
                • Xdoc::evmac-section-intro
                • Xdoc::evmac-section-inputs
                • Xdoc::evmac-section-form
              • Event-macro-xdoc-constructors-implementation-level
            • Event-macro-intro-macros
          • Java
          • Riscv
          • Bitcoin
          • Zcash
          • Yul
          • ACL2-programming-language
          • Prime-fields
          • Json
          • Syntheto
          • File-io-light
          • Cryptography
          • Number-theory
          • Axe
          • Lists-light
          • Builtins
          • Solidity
          • Helpers
          • Htclient
          • Typed-lists-light
          • Arithmetic-light
        • X86isa
        • Axe
        • Execloader
      • Math
      • Testing-utilities
    • Event-macro-xdoc-constructors-user-level

    Xdoc::evmac-input-hints

    Construct a description of the :hints input for the user documentation of an event macro.

    Macro: evmac-input-hints

    (defmacro xdoc::evmac-input-hints (&key additional)
     (let ((appconds-ref
                (concatenate 'string
                             "`" xdoc::*evmac-section-appconds-title*
                             "' section")))
      (cons
       'xdoc::desc
       (cons
        '"@(':hints') — default @('nil')"
        (cons
         '(xdoc::p "Hints to prove the applicability conditions.")
         (cons
          '(xdoc::p "It must be one of the following:")
          (cons
           (cons
            'xdoc::ul
            (cons
             (cons
              'xdoc::li
              (cons
               '"A "
               (cons
                '(xdoc::seetopic "acl2::keyword-value-listp"
                                 "keyword-value list")
                (cons
                 '" @('(appcond1 hints1 appcond2 hints2 ...)'),
             where each @('appcondk') is a keyword
             that identifies one of the applicability conditions
             listed in the "
                 (cons
                  appconds-ref
                  (cons
                   '" and each @('hintsk') is a list of hints of the kind
             that may appear just after @(':hints') in a @(tsee defthm).
             The hints @('hintsk') are used
             to prove applicability condition @('appcondk').
             The @('appcond1'), @('appcond2'), ... keywords must be all distinct.
             An @('appcondk') keyword is allowed only if
             the corresponding applicability condition is present,
             as specified in the "
                   (cons appconds-ref '("."))))))))
             '((xdoc::li
                "A list of hints of the kind
             that may appear just after @(':hints') in a @(tsee defthm).
             In this case, these same hints are used
             to prove every applicability condition,."))))
           additional)))))))