Recognizer for var-info structures.
(var-infop x) → *
Function:
(defun var-infop (x) (declare (xargs :guard t)) (and (mbe :logic (and (alistp x) (equal (strip-cars x) '(type linkage uid))) :exec (fty::alist-with-carsp x '(type linkage uid))) (b* ((type (cdr (std::da-nth 0 x))) (linkage (cdr (std::da-nth 1 x))) (uid (cdr (std::da-nth 2 x)))) (and (typep type) (linkagep linkage) (uidp uid)))))
Theorem:
(defthm consp-when-var-infop (implies (var-infop x) (consp x)) :rule-classes :compound-recognizer)