# Products of equivalence relataions ```agda module foundation.products-equivalence-relations where ``` <details><summary>Imports</summary> ```agda open import foundation.binary-relations open import foundation.dependent-pair-types open import foundation.products-binary-relations open import foundation.universe-levels open import foundation-core.cartesian-product-types open import foundation-core.equivalence-relations ``` </details> ## Idea Given two equivalence relations `R` and `S`, their product is an equivalence relation. ## Definition ### The product of two equivalence relations ```agda module _ {l1 l2 l3 l4 : Level} {A : UU l1} (R : equivalence-relation l2 A) {B : UU l3} (S : equivalence-relation l4 B) where reflexive-product-Relation-Prop : is-reflexive-Relation-Prop ( product-Relation-Prop ( prop-equivalence-relation R) ( prop-equivalence-relation S)) pr1 (reflexive-product-Relation-Prop x) = refl-equivalence-relation R (pr1 x) pr2 (reflexive-product-Relation-Prop x) = refl-equivalence-relation S (pr2 x) symmetric-product-Relation-Prop : is-symmetric-Relation-Prop ( product-Relation-Prop ( prop-equivalence-relation R) ( prop-equivalence-relation S)) pr1 (symmetric-product-Relation-Prop x y (p , q)) = symmetric-equivalence-relation R (pr1 x) (pr1 y) p pr2 (symmetric-product-Relation-Prop x y (p , q)) = symmetric-equivalence-relation S (pr2 x) (pr2 y) q transitive-product-Relation-Prop : is-transitive-Relation-Prop ( product-Relation-Prop ( prop-equivalence-relation R) ( prop-equivalence-relation S)) pr1 (transitive-product-Relation-Prop x y z (p , q) (p' , q')) = transitive-equivalence-relation R (pr1 x) (pr1 y) (pr1 z) p p' pr2 (transitive-product-Relation-Prop x y z (p , q) (p' , q')) = transitive-equivalence-relation S (pr2 x) (pr2 y) (pr2 z) q q' product-equivalence-relation : equivalence-relation (l2 ⊔ l4) (A × B) pr1 product-equivalence-relation = product-Relation-Prop ( prop-equivalence-relation R) ( prop-equivalence-relation S) pr1 (pr2 product-equivalence-relation) = reflexive-product-Relation-Prop pr1 (pr2 (pr2 product-equivalence-relation)) = symmetric-product-Relation-Prop pr2 (pr2 (pr2 product-equivalence-relation)) = transitive-product-Relation-Prop ```