(vl-operandinfo-usertypes-ok x) → *
Function:
(defun vl-operandinfo-usertypes-ok (x) (declare (xargs :guard (vl-operandinfo-p x))) (let ((__function__ 'vl-operandinfo-usertypes-ok)) (declare (ignorable __function__)) (b* (((vl-operandinfo x))) (and (vl-datatype-resolved-p x.type) (vl-seltrace-usertypes-ok x.seltrace) (vl-datatype-resolved-p x.hidtype) (consp x.hidtrace)))))
Theorem:
(defthm vl-operandinfo-usertypes-ok-implies (implies (vl-operandinfo-usertypes-ok x) (b* (((vl-operandinfo x))) (and (vl-datatype-resolved-p x.type) (vl-seltrace-usertypes-ok x.seltrace) (vl-datatype-resolved-p x.hidtype) (consp x.hidtrace)))))
Theorem:
(defthm vl-operandinfo-usertypes-ok-of-vl-operandinfo-fix-x (equal (vl-operandinfo-usertypes-ok (vl-operandinfo-fix x)) (vl-operandinfo-usertypes-ok x)))
Theorem:
(defthm vl-operandinfo-usertypes-ok-vl-operandinfo-equiv-congruence-on-x (implies (vl-operandinfo-equiv x x-equiv) (equal (vl-operandinfo-usertypes-ok x) (vl-operandinfo-usertypes-ok x-equiv))) :rule-classes :congruence)