Metamath Proof Explorer


Theorem eloprabga

Description: The law of concretion for operation class abstraction. Compare elopab . (Contributed by NM, 14-Sep-1999) Remove unnecessary distinct variable conditions. (Revised by David Abernethy, 19-Jun-2012) (Revised by Mario Carneiro, 19-Dec-2013) Avoid ax-10 , ax-11 . (Revised by Wolf Lammen, 15-Oct-2024)

Ref Expression
Hypothesis eloprabga.1 x=Ay=Bz=Cφψ
Assertion eloprabga AVBWCXABCxyz|φψ

Proof

Step Hyp Ref Expression
1 eloprabga.1 x=Ay=Bz=Cφψ
2 elex AVAV
3 elex BWBV
4 elex CXCV
5 opex ABCV
6 simpr AVBVCVw=ABCw=ABC
7 6 eqeq1d AVBVCVw=ABCw=xyzABC=xyz
8 eqcom ABC=xyzxyz=ABC
9 vex xV
10 vex yV
11 vex zV
12 9 10 11 otth2 xyz=ABCx=Ay=Bz=C
13 8 12 bitri ABC=xyzx=Ay=Bz=C
14 7 13 bitrdi AVBVCVw=ABCw=xyzx=Ay=Bz=C
15 14 anbi1d AVBVCVw=ABCw=xyzφx=Ay=Bz=Cφ
16 1 pm5.32i x=Ay=Bz=Cφx=Ay=Bz=Cψ
17 15 16 bitrdi AVBVCVw=ABCw=xyzφx=Ay=Bz=Cψ
18 17 3exbidv AVBVCVw=ABCxyzw=xyzφxyzx=Ay=Bz=Cψ
19 df-oprab xyz|φ=w|xyzw=xyzφ
20 19 eleq2i wxyz|φww|xyzw=xyzφ
21 abid ww|xyzw=xyzφxyzw=xyzφ
22 20 21 bitr2i xyzw=xyzφwxyz|φ
23 eleq1 w=ABCwxyz|φABCxyz|φ
24 22 23 bitrid w=ABCxyzw=xyzφABCxyz|φ
25 24 adantl AVBVCVw=ABCxyzw=xyzφABCxyz|φ
26 19.41vvv xyzx=Ay=Bz=Cψxyzx=Ay=Bz=Cψ
27 elisset AVxx=A
28 elisset BVyy=B
29 elisset CVzz=C
30 27 28 29 3anim123i AVBVCVxx=Ayy=Bzz=C
31 3exdistr xyzx=Ay=Bz=Cxx=Ayy=Bzz=C
32 19.41v xx=Ayy=Bzz=Cxx=Ayy=Bzz=C
33 19.41v yy=Bzz=Cyy=Bzz=C
34 33 anbi2i xx=Ayy=Bzz=Cxx=Ayy=Bzz=C
35 31 32 34 3bitri xyzx=Ay=Bz=Cxx=Ayy=Bzz=C
36 3anass xx=Ayy=Bzz=Cxx=Ayy=Bzz=C
37 35 36 bitr4i xyzx=Ay=Bz=Cxx=Ayy=Bzz=C
38 30 37 sylibr AVBVCVxyzx=Ay=Bz=C
39 38 biantrurd AVBVCVψxyzx=Ay=Bz=Cψ
40 26 39 bitr4id AVBVCVxyzx=Ay=Bz=Cψψ
41 40 adantr AVBVCVw=ABCxyzx=Ay=Bz=Cψψ
42 18 25 41 3bitr3d AVBVCVw=ABCABCxyz|φψ
43 42 expcom w=ABCAVBVCVABCxyz|φψ
44 5 43 vtocle AVBVCVABCxyz|φψ
45 2 3 4 44 syl3an AVBWCXABCxyz|φψ