Recognize the information about the instances that is associated to second-order function names in the sof-instances table.
(sof-instancesp instmap wrld) → yes/no
This is an alist from instantiations to function names. Each pair in the alist maps an instantiation to the corresponding instance.
Function:
(defun sof-instancesp (instmap wrld) (declare (xargs :guard (plist-worldp wrld))) (let ((__function__ 'sof-instancesp)) (declare (ignorable __function__)) (and (alistp instmap) (funvar-inst-listp (alist-keys instmap) wrld) (symbol-listp (alist-vals instmap)))))
Theorem:
(defthm booleanp-of-sof-instancesp (b* ((yes/no (sof-instancesp instmap wrld))) (booleanp yes/no)) :rule-classes :rewrite)