Metamath Proof Explorer


Theorem xpiundi

Description: Distributive law for Cartesian product over indexed union. (Contributed by Mario Carneiro, 27-Apr-2014)

Ref Expression
Assertion xpiundi
|- ( C X. U_ x e. A B ) = U_ x e. A ( C X. B )

Proof

Step Hyp Ref Expression
1 rexcom
 |-  ( E. w e. C E. x e. A E. y e. B z = <. w , y >. <-> E. x e. A E. w e. C E. y e. B z = <. w , y >. )
2 eliun
 |-  ( y e. U_ x e. A B <-> E. x e. A y e. B )
3 2 anbi1i
 |-  ( ( y e. U_ x e. A B /\ z = <. w , y >. ) <-> ( E. x e. A y e. B /\ z = <. w , y >. ) )
4 3 exbii
 |-  ( E. y ( y e. U_ x e. A B /\ z = <. w , y >. ) <-> E. y ( E. x e. A y e. B /\ z = <. w , y >. ) )
5 df-rex
 |-  ( E. y e. U_ x e. A B z = <. w , y >. <-> E. y ( y e. U_ x e. A B /\ z = <. w , y >. ) )
6 df-rex
 |-  ( E. y e. B z = <. w , y >. <-> E. y ( y e. B /\ z = <. w , y >. ) )
7 6 rexbii
 |-  ( E. x e. A E. y e. B z = <. w , y >. <-> E. x e. A E. y ( y e. B /\ z = <. w , y >. ) )
8 rexcom4
 |-  ( E. x e. A E. y ( y e. B /\ z = <. w , y >. ) <-> E. y E. x e. A ( y e. B /\ z = <. w , y >. ) )
9 r19.41v
 |-  ( E. x e. A ( y e. B /\ z = <. w , y >. ) <-> ( E. x e. A y e. B /\ z = <. w , y >. ) )
10 9 exbii
 |-  ( E. y E. x e. A ( y e. B /\ z = <. w , y >. ) <-> E. y ( E. x e. A y e. B /\ z = <. w , y >. ) )
11 7 8 10 3bitri
 |-  ( E. x e. A E. y e. B z = <. w , y >. <-> E. y ( E. x e. A y e. B /\ z = <. w , y >. ) )
12 4 5 11 3bitr4i
 |-  ( E. y e. U_ x e. A B z = <. w , y >. <-> E. x e. A E. y e. B z = <. w , y >. )
13 12 rexbii
 |-  ( E. w e. C E. y e. U_ x e. A B z = <. w , y >. <-> E. w e. C E. x e. A E. y e. B z = <. w , y >. )
14 elxp2
 |-  ( z e. ( C X. B ) <-> E. w e. C E. y e. B z = <. w , y >. )
15 14 rexbii
 |-  ( E. x e. A z e. ( C X. B ) <-> E. x e. A E. w e. C E. y e. B z = <. w , y >. )
16 1 13 15 3bitr4i
 |-  ( E. w e. C E. y e. U_ x e. A B z = <. w , y >. <-> E. x e. A z e. ( C X. B ) )
17 elxp2
 |-  ( z e. ( C X. U_ x e. A B ) <-> E. w e. C E. y e. U_ x e. A B z = <. w , y >. )
18 eliun
 |-  ( z e. U_ x e. A ( C X. B ) <-> E. x e. A z e. ( C X. B ) )
19 16 17 18 3bitr4i
 |-  ( z e. ( C X. U_ x e. A B ) <-> z e. U_ x e. A ( C X. B ) )
20 19 eqriv
 |-  ( C X. U_ x e. A B ) = U_ x e. A ( C X. B )