Pretty-print a vl-reportcard-p.
(vl-print-reportcard x &key (elide '3) (ps 'ps)) → ps
See also vl-reportcard-to-string.
Function:
(defun vl-print-reportcard-fn (x elide ps) (declare (xargs :stobjs (ps))) (declare (xargs :guard (and (vl-reportcard-p x) (maybe-natp elide)))) (let ((__function__ 'vl-print-reportcard)) (declare (ignorable __function__)) (b* ((x (vl-reportcard-fix x)) (x-shrink (hons-shrink-alist x nil)) (- (fast-alist-free x-shrink)) (x-sorted (mergesort x-shrink))) (vl-print-reportcard-aux x-sorted elide))))
Theorem:
(defthm vl-print-reportcard-fn-of-vl-reportcard-fix-x (equal (vl-print-reportcard-fn (vl-reportcard-fix x) elide ps) (vl-print-reportcard-fn x elide ps)))
Theorem:
(defthm vl-print-reportcard-fn-vl-reportcard-equiv-congruence-on-x (implies (vl-reportcard-equiv x x-equiv) (equal (vl-print-reportcard-fn x elide ps) (vl-print-reportcard-fn x-equiv elide ps))) :rule-classes :congruence)
Theorem:
(defthm vl-print-reportcard-fn-of-maybe-natp-fix-elide (equal (vl-print-reportcard-fn x (maybe-natp-fix elide) ps) (vl-print-reportcard-fn x elide ps)))
Theorem:
(defthm vl-print-reportcard-fn-maybe-nat-equiv-congruence-on-elide (implies (acl2::maybe-nat-equiv elide elide-equiv) (equal (vl-print-reportcard-fn x elide ps) (vl-print-reportcard-fn x elide-equiv ps))) :rule-classes :congruence)