(vl-gatetype-string x) → str
Function:
(defun vl-gatetype-string (x) (declare (xargs :guard (vl-gatetype-p x))) (let ((__function__ 'vl-gatetype-string)) (declare (ignorable __function__)) (case (vl-gatetype-fix x) (:vl-cmos "cmos") (:vl-rcmos "rcmos") (:vl-bufif0 "bufif0") (:vl-bufif1 "bufif1") (:vl-notif0 "notif0") (:vl-notif1 "notif1") (:vl-nmos "nmos") (:vl-pmos "pmos") (:vl-rnmos "rnmos") (:vl-rpmos "rpmos") (:vl-and "and") (:vl-nand "nand") (:vl-or "or") (:vl-nor "nor") (:vl-xor "xor") (:vl-xnor "xnor") (:vl-buf "buf") (:vl-not "not") (:vl-tranif0 "tranif0") (:vl-tranif1 "tranif1") (:vl-rtranif1 "rtranif1") (:vl-rtranif0 "rtranif0") (:vl-tran "tran") (:vl-rtran "rtran") (:vl-pulldown "pulldown") (:vl-pullup "pullup") (otherwise (or (impossible) "")))))
Theorem:
(defthm stringp-of-vl-gatetype-string (b* ((str (vl-gatetype-string x))) (stringp str)) :rule-classes :type-prescription)
Theorem:
(defthm vl-gatetype-string-of-vl-gatetype-fix-x (equal (vl-gatetype-string (vl-gatetype-fix x)) (vl-gatetype-string x)))
Theorem:
(defthm vl-gatetype-string-vl-gatetype-equiv-congruence-on-x (implies (vl-gatetype-equiv x x-equiv) (equal (vl-gatetype-string x) (vl-gatetype-string x-equiv))) :rule-classes :congruence)