Perform skip-detection on a module.
(sd-analyze-module x) → probs
Function:
(defun sd-analyze-module (x) (declare (xargs :guard (vl-module-p x))) (let ((__function__ 'sd-analyze-module)) (declare (ignorable __function__)) (sd-problem-sort (sd-analyze-module-aux x))))
Theorem:
(defthm sd-problemlist-p-of-sd-analyze-module (implies (and (force (vl-module-p x))) (b* ((probs (sd-analyze-module x))) (sd-problemlist-p probs))) :rule-classes :rewrite)
Theorem:
(defthm true-listp-of-sd-analyze-module (true-listp (sd-analyze-module x)) :rule-classes :type-prescription)