• Top
    • Documentation
    • Books
    • Recursion-and-induction
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
        • Symbolic-test-vectors
        • Esim-primitives
        • E-conversion
        • Esim-steps
        • Patterns
        • Mod-internal-paths
        • Defmodules
        • Esim-simplify-update-fns
        • Esim-tutorial
        • Esim-vl
          • Esim-vl-find-io
          • Esim-vl-iopattern-p
            • Esim-vl-iopattern-entrylist->basenames
            • Esim-vl-iopattern-entry-p
            • Esim-vl-iopattern-entrylist-p
            • Esim-vl-iopattern-entry->basename
              • All-equalp-of-vl-emodwirelist->basenames
            • Esim-vl-designwires
            • Esim-vl-wirealist
            • Esim-vl-annotations
        • Vl2014
        • Sv
        • Vwsim
        • Fgl
        • Vl
        • X86isa
        • Svl
        • Rtl
      • Software-verification
      • Testing-utilities
      • Math
    • Esim-vl-iopattern-p

    Esim-vl-iopattern-entry->basename

    (esim-vl-iopattern-entry->basename x) returns the basename that is shared by all the members of a esim-vl-iopattern-entry-p.

    For instance, it returns "A" for (A[0] A[1] ... A[N]).

    Definitions and Theorems

    Function: esim-vl-iopattern-entry->basename

    (defun esim-vl-iopattern-entry->basename (x)
           (declare (xargs :guard (esim-vl-iopattern-entry-p x)))
           (mbe :logic (string-fix (vl-emodwire->basename (car x)))
                :exec (vl-emodwire->basename (car x))))

    Theorem: stringp-of-esim-vl-iopattern-entry->basename

    (defthm stringp-of-esim-vl-iopattern-entry->basename
            (stringp (esim-vl-iopattern-entry->basename x))
            :rule-classes :type-prescription)