Metamath Proof Explorer


Theorem xpwdomg

Description: Weak dominance of a Cartesian product. (Contributed by Stefan O'Rear, 13-Feb-2015) (Revised by Mario Carneiro, 25-Jun-2015)

Ref Expression
Assertion xpwdomg A*BC*DA×C*B×D

Proof

Step Hyp Ref Expression
1 brwdom3i A*BfaAbBa=fb
2 1 adantr A*BC*DfaAbBa=fb
3 brwdom3i C*DgcCdDc=gd
4 3 adantl A*BC*DgcCdDc=gd
5 relwdom Rel*
6 5 brrelex1i A*BAV
7 5 brrelex1i C*DCV
8 xpexg AVCVA×CV
9 6 7 8 syl2an A*BC*DA×CV
10 9 adantr A*BC*DaAbBa=fbcCdDc=gdA×CV
11 5 brrelex2i A*BBV
12 5 brrelex2i C*DDV
13 xpexg BVDVB×DV
14 11 12 13 syl2an A*BC*DB×DV
15 14 adantr A*BC*DaAbBa=fbcCdDc=gdB×DV
16 pm3.2 bBa=fbdDc=gdbBa=fbdDc=gd
17 16 ralimdv bBa=fbcCdDc=gdcCbBa=fbdDc=gd
18 17 com12 cCdDc=gdbBa=fbcCbBa=fbdDc=gd
19 18 ralimdv cCdDc=gdaAbBa=fbaAcCbBa=fbdDc=gd
20 19 impcom aAbBa=fbcCdDc=gdaAcCbBa=fbdDc=gd
21 pm3.2 a=fbc=gda=fbc=gd
22 21 reximdv a=fbdDc=gddDa=fbc=gd
23 22 com12 dDc=gda=fbdDa=fbc=gd
24 23 reximdv dDc=gdbBa=fbbBdDa=fbc=gd
25 24 impcom bBa=fbdDc=gdbBdDa=fbc=gd
26 25 2ralimi aAcCbBa=fbdDc=gdaAcCbBdDa=fbc=gd
27 20 26 syl aAbBa=fbcCdDc=gdaAcCbBdDa=fbc=gd
28 eqeq1 x=acx=fbgdac=fbgd
29 vex aV
30 vex cV
31 29 30 opth ac=fbgda=fbc=gd
32 28 31 bitrdi x=acx=fbgda=fbc=gd
33 32 2rexbidv x=acbBdDx=fbgdbBdDa=fbc=gd
34 33 ralxp xA×CbBdDx=fbgdaAcCbBdDa=fbc=gd
35 27 34 sylibr aAbBa=fbcCdDc=gdxA×CbBdDx=fbgd
36 35 r19.21bi aAbBa=fbcCdDc=gdxA×CbBdDx=fbgd
37 vex bV
38 vex dV
39 37 38 op1std y=bd1sty=b
40 39 fveq2d y=bdf1sty=fb
41 37 38 op2ndd y=bd2ndy=d
42 41 fveq2d y=bdg2ndy=gd
43 40 42 opeq12d y=bdf1styg2ndy=fbgd
44 43 eqeq2d y=bdx=f1styg2ndyx=fbgd
45 44 rexxp yB×Dx=f1styg2ndybBdDx=fbgd
46 36 45 sylibr aAbBa=fbcCdDc=gdxA×CyB×Dx=f1styg2ndy
47 46 adantll A*BC*DaAbBa=fbcCdDc=gdxA×CyB×Dx=f1styg2ndy
48 10 15 47 wdom2d A*BC*DaAbBa=fbcCdDc=gdA×C*B×D
49 48 expr A*BC*DaAbBa=fbcCdDc=gdA×C*B×D
50 49 exlimdv A*BC*DaAbBa=fbgcCdDc=gdA×C*B×D
51 50 ex A*BC*DaAbBa=fbgcCdDc=gdA×C*B×D
52 51 exlimdv A*BC*DfaAbBa=fbgcCdDc=gdA×C*B×D
53 2 4 52 mp2d A*BC*DA×C*B×D