List of lifting theorems for a set of relations.
(lift-thm-called-lift-thms rels wrld) → called-lift-thms
These are used as rewrite rules in the caller's lifting theorem.
Function:
(defun lift-thm-called-lift-thms (rels wrld) (declare (xargs :guard (and (name-setp rels) (plist-worldp wrld)))) (let ((__function__ 'lift-thm-called-lift-thms)) (declare (ignorable __function__)) (b* (((when (emptyp rels)) nil) (rel (head rels)) (rel-pred (lift-rel-name rel wrld))) (cons (acl2::packn-pos (list 'definition-satp-to- rel-pred) rel-pred) (lift-thm-called-lift-thms (tail rels) wrld)))))
Theorem:
(defthm symbol-listp-of-lift-thm-called-lift-thms (b* ((called-lift-thms (lift-thm-called-lift-thms rels wrld))) (symbol-listp called-lift-thms)) :rule-classes :rewrite)