Transform a translation unit ensemble.
(simpadd0-transunit-ensemble tunits gin state) → (mv new-tunits gout)
Function:
(defun simpadd0-transunit-ensemble (tunits gin state) (declare (xargs :stobjs (state))) (declare (xargs :guard (and (transunit-ensemblep tunits) (simpadd0-ginp gin)))) (declare (xargs :guard (transunit-ensemble-unambp tunits))) (let ((__function__ 'simpadd0-transunit-ensemble)) (declare (ignorable __function__)) (b* (((simpadd0-gin gin) gin) ((transunit-ensemble tunits) tunits) ((mv new-map (simpadd0-gout gout-map)) (simpadd0-filepath-transunit-map tunits.unwrap gin state))) (mv (transunit-ensemble new-map) (make-simpadd0-gout :events gout-map.events :thm-name nil :thm-index gout-map.thm-index :names-to-avoid gout-map.names-to-avoid)))))
Theorem:
(defthm transunit-ensemblep-of-simpadd0-transunit-ensemble.new-tunits (b* (((mv ?new-tunits ?gout) (simpadd0-transunit-ensemble tunits gin state))) (transunit-ensemblep new-tunits)) :rule-classes :rewrite)
Theorem:
(defthm simpadd0-goutp-of-simpadd0-transunit-ensemble.gout (b* (((mv ?new-tunits ?gout) (simpadd0-transunit-ensemble tunits gin state))) (simpadd0-goutp gout)) :rule-classes :rewrite)
Theorem:
(defthm transunit-ensemble-unambp-of-simpadd0-transunit-ensemble (b* (((mv ?new-tunits ?gout) (simpadd0-transunit-ensemble tunits gin state))) (transunit-ensemble-unambp new-tunits)))
Theorem:
(defthm simpadd0-transunit-ensemble-of-transunit-ensemble-fix-tunits (equal (simpadd0-transunit-ensemble (c$::transunit-ensemble-fix tunits) gin state) (simpadd0-transunit-ensemble tunits gin state)))
Theorem:
(defthm simpadd0-transunit-ensemble-transunit-ensemble-equiv-congruence-on-tunits (implies (c$::transunit-ensemble-equiv tunits tunits-equiv) (equal (simpadd0-transunit-ensemble tunits gin state) (simpadd0-transunit-ensemble tunits-equiv gin state))) :rule-classes :congruence)
Theorem:
(defthm simpadd0-transunit-ensemble-of-simpadd0-gin-fix-gin (equal (simpadd0-transunit-ensemble tunits (simpadd0-gin-fix gin) state) (simpadd0-transunit-ensemble tunits gin state)))
Theorem:
(defthm simpadd0-transunit-ensemble-simpadd0-gin-equiv-congruence-on-gin (implies (simpadd0-gin-equiv gin gin-equiv) (equal (simpadd0-transunit-ensemble tunits gin state) (simpadd0-transunit-ensemble tunits gin-equiv state))) :rule-classes :congruence)