(vl-pp-distitem x &key (ps 'ps)) → ps
Function:
(defun vl-pp-distitem-fn (x ps) (declare (xargs :stobjs (ps))) (declare (xargs :guard (vl-distitem-p x))) (let ((__function__ 'vl-pp-distitem)) (declare (ignorable __function__)) (b* (((vl-distitem x))) (vl-ps-seq (if x.right (vl-ps-seq (vl-print "[") (vl-pp-expr x.left) (vl-print ":") (vl-pp-expr x.right) (vl-print "]")) (vl-pp-expr x.left)) (if (and (vl-distweighttype-equiv x.type :vl-weight-each) (vl-expr-resolved-p x.weight) (equal (vl-resolved->val x.weight) 1)) ps (vl-ps-seq (vl-print " ") (vl-print-str (vl-distweighttype-string x.type)) (vl-print " ") (vl-pp-expr x.weight)))))))
Theorem:
(defthm vl-pp-distitem-fn-of-vl-distitem-fix-x (equal (vl-pp-distitem-fn (vl-distitem-fix x) ps) (vl-pp-distitem-fn x ps)))
Theorem:
(defthm vl-pp-distitem-fn-vl-distitem-equiv-congruence-on-x (implies (vl-distitem-equiv x x-equiv) (equal (vl-pp-distitem-fn x ps) (vl-pp-distitem-fn x-equiv ps))) :rule-classes :congruence)