(vl-size-to-unsigned-logic x) → type
Function:
(defun vl-size-to-unsigned-logic (x) (declare (xargs :guard (posp x))) (let ((__function__ 'vl-size-to-unsigned-logic)) (declare (ignorable __function__)) (hons-copy (make-vl-coretype :name :vl-logic :pdims (list (vl-range->dimension (make-vl-range :msb (vl-make-index (1- (pos-fix x))) :lsb (vl-make-index 0))))))))
Theorem:
(defthm vl-datatype-p-of-vl-size-to-unsigned-logic (b* ((type (vl-size-to-unsigned-logic x))) (vl-datatype-p type)) :rule-classes :rewrite)
Theorem:
(defthm vl-size-to-unsigned-logic-type-ok (b* ((common-lisp::?type (vl-size-to-unsigned-logic x))) (vl-datatype-resolved-p type)))
Theorem:
(defthm vl-size-to-unsigned-logic-of-pos-fix-x (equal (vl-size-to-unsigned-logic (pos-fix x)) (vl-size-to-unsigned-logic x)))
Theorem:
(defthm vl-size-to-unsigned-logic-pos-equiv-congruence-on-x (implies (acl2::pos-equiv x x-equiv) (equal (vl-size-to-unsigned-logic x) (vl-size-to-unsigned-logic x-equiv))) :rule-classes :congruence)