Build a gout without a theorem name.
This is used for constructs for which we do not generate proofs yet. The events, theorem index, and variable-type map are taken from a gin, as they result from previous transformations.
Function:
(defun gout-no-thm (gin) (declare (xargs :guard (ginp gin))) (let ((__function__ 'gout-no-thm)) (declare (ignorable __function__)) (b* (((gin gin) gin)) (make-gout :events gin.events :thm-index gin.thm-index :thm-name nil :vartys gin.vartys))))
Theorem:
(defthm goutp-of-gout-no-thm (b* ((gout (gout-no-thm gin))) (goutp gout)) :rule-classes :rewrite)
Theorem:
(defthm gout-no-thm-of-gin-fix-gin (equal (gout-no-thm (gin-fix gin)) (gout-no-thm gin)))
Theorem:
(defthm gout-no-thm-gin-equiv-congruence-on-gin (implies (gin-equiv gin gin-equiv) (equal (gout-no-thm gin) (gout-no-thm gin-equiv))) :rule-classes :congruence)