Basic theorems about aig-compose.
Theorem:
(defthm aig-eval-of-aig-compose (equal (aig-eval (aig-compose x al1) al2) (aig-eval x (aig-eval-alist al1 al2))))
Theorem:
(defthm aig-equiv-implies-aig-equiv-aig-compose-1 (implies (aig-equiv x x-equiv) (aig-equiv (aig-compose x al) (aig-compose x-equiv al))) :rule-classes (:congruence))
Theorem:
(defthm aig-alist-equiv-implies-aig-equiv-aig-compose-2 (implies (aig-alist-equiv al al-equiv) (aig-equiv (aig-compose x al) (aig-compose x al-equiv))) :rule-classes (:congruence))
Theorem:
(defthm alist-equiv-implies-equal-aig-compose-2 (implies (alist-equiv env env-equiv) (equal (aig-compose x env) (aig-compose x env-equiv))) :rule-classes (:congruence))