Generate the combination operator.
(tailrec-gen-combine-op combine q r) → combine-op
This is obtained by abstracting
Function:
(defun tailrec-gen-combine-op (combine q r) (declare (xargs :guard (and (pseudo-termp combine) (symbolp q) (symbolp r)))) (let ((__function__ 'tailrec-gen-combine-op)) (declare (ignorable __function__)) (make-lambda (list q r) combine)))
Theorem:
(defthm pseudo-lambdap-of-tailrec-gen-combine-op (implies (and (pseudo-termp combine) (symbolp q) (symbolp r)) (b* ((combine-op (tailrec-gen-combine-op combine q r))) (pseudo-lambdap combine-op))) :rule-classes :rewrite)