(vl-lucid-slices-append-bits x ctx) → bits
Function:
(defun vl-lucid-slices-append-bits (x ctx) (declare (xargs :guard (and (vl-lucidocclist-p x) (any-p ctx)))) (declare (xargs :guard (and (vl-lucid-all-slices-p x) (vl-lucid-all-slices-resolved-p x)))) (let ((__function__ 'vl-lucid-slices-append-bits)) (declare (ignorable __function__)) (if (atom x) nil (append (vl-lucid-resolved-slice->bits (car x) ctx) (vl-lucid-slices-append-bits (cdr x) ctx)))))
Theorem:
(defthm integer-listp-of-vl-lucid-slices-append-bits (b* ((bits (vl-lucid-slices-append-bits x ctx))) (integer-listp bits)) :rule-classes :rewrite)
Theorem:
(defthm true-listp-of-vl-lucid-slices-append-bits (b* ((bits (vl-lucid-slices-append-bits x ctx))) (true-listp bits)) :rule-classes :type-prescription)
Theorem:
(defthm vl-lucid-slices-append-bits-of-vl-lucidocclist-fix-x (equal (vl-lucid-slices-append-bits (vl-lucidocclist-fix x) ctx) (vl-lucid-slices-append-bits x ctx)))
Theorem:
(defthm vl-lucid-slices-append-bits-vl-lucidocclist-equiv-congruence-on-x (implies (vl-lucidocclist-equiv x x-equiv) (equal (vl-lucid-slices-append-bits x ctx) (vl-lucid-slices-append-bits x-equiv ctx))) :rule-classes :congruence)
Theorem:
(defthm vl-lucid-slices-append-bits-of-identity-ctx (equal (vl-lucid-slices-append-bits x (identity ctx)) (vl-lucid-slices-append-bits x ctx)))
Theorem:
(defthm vl-lucid-slices-append-bits-equal-congruence-on-ctx (implies (equal ctx ctx-equiv) (equal (vl-lucid-slices-append-bits x ctx) (vl-lucid-slices-append-bits x ctx-equiv))) :rule-classes :congruence)