• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
      • Sv
        • Svex-stvs
        • Svex-decomposition-methodology
        • Sv-versus-esim
        • Svex-decomp
        • Svex-compose-dfs
        • Svex-compilation
        • Moddb
        • Svmods
        • Svstmt
          • Svstmt-case
          • Svstmt-while
          • Svstmt-p
          • Svstmt-if
          • Svstmt-equiv
          • Svstmt-xcond
          • Svstmt-scope
          • Svstmt-assign
          • Svstmt-compile
          • Svstmt-constraints
          • Svstmt-jump
          • Svstmtlist
          • Svstmt-kind
          • Svstmt.lisp
            • Svstmt-write
            • Svstmt-writelist-vars
            • Svstmt-write-vars
            • Svstmt-writelist
            • Svjump-p
            • Svstmt-fix
            • Svstmt-count
          • Sv-tutorial
          • Expressions
          • Symbolic-test-vector
          • Vl-to-svex
        • Fgl
        • Vwsim
        • Vl
        • X86isa
        • Svl
        • Rtl
      • Software-verification
      • Math
      • Testing-utilities
    • Svstmt.lisp

    Svjump-p

    This is an ordinary defenum.

    Function: svjump-p

    (defun svjump-p (x)
      (declare (xargs :guard t))
      (or (eq x ':break)
          (eq x ':continue)
          (eq x ':return)))

    Theorem: type-when-svjump-p

    (defthm type-when-svjump-p
      (implies (svjump-p x)
               (if (symbolp x)
                   (if (not (equal x 't))
                       (not (equal x 'nil))
                     'nil)
                 'nil))
      :rule-classes :compound-recognizer)