• Top
    • Documentation
    • Books
    • Recursion-and-induction
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
      • Sv
      • Vwsim
      • Fgl
      • Vl
        • Syntax
        • Loader
        • Warnings
        • Getting-started
        • Utilities
        • Printer
        • Kit
        • Mlib
        • Transforms
          • Unparameterization
          • Elaborate
          • Addnames
          • Annotate
          • Clean-warnings
            • Vl-interfacelist-clean-warnings
            • Vl-programlist-clean-warnings
            • Vl-packagelist-clean-warnings
            • Vl-modulelist-clean-warnings
            • Vl-configlist-clean-warnings
            • Vl-classlist-clean-warnings
            • Vl-udplist-clean-warnings
            • Vl-design-clean-warnings
            • Vl-clean-warnings
              • Vl-warning-sort
            • Vl-interface-clean-warnings
            • Vl-program-clean-warnings
            • Vl-package-clean-warnings
            • Vl-module-clean-warnings
            • Vl-config-clean-warnings
            • Vl-udp-clean-warnings
            • Vl-class-clean-warnings
          • Eliminitial
          • Custom-transform-hooks
          • Problem-modules
      • X86isa
      • Svl
      • Rtl
    • Software-verification
    • Testing-utilities
    • Math
  • Clean-warnings

Vl-clean-warnings

Sort and remove duplicates from a list of warnings.

Signature
(vl-clean-warnings x) → ans
Arguments
x — Guard (vl-warninglist-p x).
Returns
ans — Type (vl-warninglist-p ans).

Definitions and Theorems

Function: vl-clean-warnings

(defun
    vl-clean-warnings (x)
    (declare (xargs :guard (vl-warninglist-p x)))
    (let ((__function__ 'vl-clean-warnings))
         (declare (ignorable __function__))
         (acl2::remove-adjacent-duplicates
              (vl-warning-sort (list-fix (vl-warninglist-fix x))))))

Theorem: vl-warninglist-p-of-vl-clean-warnings

(defthm vl-warninglist-p-of-vl-clean-warnings
        (b* ((ans (vl-clean-warnings x)))
            (vl-warninglist-p ans))
        :rule-classes :rewrite)

Theorem: vl-clearn-warnings-under-iff

(defthm vl-clearn-warnings-under-iff
        (iff (vl-clean-warnings x) (consp x)))

Theorem: vl-clean-warnings-of-vl-warninglist-fix-x

(defthm vl-clean-warnings-of-vl-warninglist-fix-x
        (equal (vl-clean-warnings (vl-warninglist-fix x))
               (vl-clean-warnings x)))

Theorem: vl-clean-warnings-vl-warninglist-equiv-congruence-on-x

(defthm vl-clean-warnings-vl-warninglist-equiv-congruence-on-x
        (implies (vl-warninglist-equiv x x-equiv)
                 (equal (vl-clean-warnings x)
                        (vl-clean-warnings x-equiv)))
        :rule-classes :congruence)

Subtopics

Vl-warning-sort
Mergesort warnings using vl-warning-<