Basic constructor macro for rw-pair structures.
(make-rw-pair [:hyps <hyps>] [:concl <concl>])
This is the usual way to construct rw-pair structures. It simply conses together a structure with the specified fields.
This macro generates a new rw-pair structure from scratch. See also change-rw-pair, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-rw-pair (&rest args) (std::make-aggregate 'rw-pair args '((:hyps) (:concl)) 'make-rw-pair nil))
Function:
(defun rw-pair (hyps concl) (declare (xargs :guard (and (pseudo-term-listp hyps) (pseudo-termp concl)))) (declare (xargs :guard t)) (let ((__function__ 'rw-pair)) (declare (ignorable __function__)) (b* ((hyps (mbe :logic (pseudo-term-list-fix hyps) :exec hyps)) (concl (mbe :logic (pseudo-term-fix concl) :exec concl))) (list hyps concl))))