Function:
(defun vl-lucid-warning-type-fn (warning tag) (declare (xargs :guard (symbolp warning))) (let ((__function__ 'vl-lucid-warning-type)) (declare (ignorable __function__)) (if (eq tag :vl-vardecl) (intern$ (cat (symbol-name warning) "-VARIABLE") "KEYWORD") (mbe :logic (acl2::symbol-fix warning) :exec warning))))
Theorem:
(defthm symbolp-of-vl-lucid-warning-type (b* ((type (vl-lucid-warning-type-fn warning tag))) (symbolp type)) :rule-classes :type-prescription)
Theorem:
(defthm vl-lucid-warning-type-fn-of-symbol-fix-warning (equal (vl-lucid-warning-type-fn (acl2::symbol-fix warning) tag) (vl-lucid-warning-type-fn warning tag)))
Theorem:
(defthm vl-lucid-warning-type-fn-symbol-equiv-congruence-on-warning (implies (acl2::symbol-equiv warning warning-equiv) (equal (vl-lucid-warning-type-fn warning tag) (vl-lucid-warning-type-fn warning-equiv tag))) :rule-classes :congruence)