Metamath Proof Explorer


Theorem vtocl3gaf

Description: Implicit substitution of 3 classes for 3 setvar variables. (Contributed by NM, 10-Aug-2013) (Revised by Mario Carneiro, 11-Oct-2016)

Ref Expression
Hypotheses vtocl3gaf.a 𝑥 𝐴
vtocl3gaf.b 𝑦 𝐴
vtocl3gaf.c 𝑧 𝐴
vtocl3gaf.d 𝑦 𝐵
vtocl3gaf.e 𝑧 𝐵
vtocl3gaf.f 𝑧 𝐶
vtocl3gaf.1 𝑥 𝜓
vtocl3gaf.2 𝑦 𝜒
vtocl3gaf.3 𝑧 𝜃
vtocl3gaf.4 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) )
vtocl3gaf.5 ( 𝑦 = 𝐵 → ( 𝜓𝜒 ) )
vtocl3gaf.6 ( 𝑧 = 𝐶 → ( 𝜒𝜃 ) )
vtocl3gaf.7 ( ( 𝑥𝑅𝑦𝑆𝑧𝑇 ) → 𝜑 )
Assertion vtocl3gaf ( ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) → 𝜃 )

Proof

Step Hyp Ref Expression
1 vtocl3gaf.a 𝑥 𝐴
2 vtocl3gaf.b 𝑦 𝐴
3 vtocl3gaf.c 𝑧 𝐴
4 vtocl3gaf.d 𝑦 𝐵
5 vtocl3gaf.e 𝑧 𝐵
6 vtocl3gaf.f 𝑧 𝐶
7 vtocl3gaf.1 𝑥 𝜓
8 vtocl3gaf.2 𝑦 𝜒
9 vtocl3gaf.3 𝑧 𝜃
10 vtocl3gaf.4 ( 𝑥 = 𝐴 → ( 𝜑𝜓 ) )
11 vtocl3gaf.5 ( 𝑦 = 𝐵 → ( 𝜓𝜒 ) )
12 vtocl3gaf.6 ( 𝑧 = 𝐶 → ( 𝜒𝜃 ) )
13 vtocl3gaf.7 ( ( 𝑥𝑅𝑦𝑆𝑧𝑇 ) → 𝜑 )
14 1 nfel1 𝑥 𝐴𝑅
15 nfv 𝑥 𝑦𝑆
16 nfv 𝑥 𝑧𝑇
17 14 15 16 nf3an 𝑥 ( 𝐴𝑅𝑦𝑆𝑧𝑇 )
18 17 7 nfim 𝑥 ( ( 𝐴𝑅𝑦𝑆𝑧𝑇 ) → 𝜓 )
19 2 nfel1 𝑦 𝐴𝑅
20 4 nfel1 𝑦 𝐵𝑆
21 nfv 𝑦 𝑧𝑇
22 19 20 21 nf3an 𝑦 ( 𝐴𝑅𝐵𝑆𝑧𝑇 )
23 22 8 nfim 𝑦 ( ( 𝐴𝑅𝐵𝑆𝑧𝑇 ) → 𝜒 )
24 3 nfel1 𝑧 𝐴𝑅
25 5 nfel1 𝑧 𝐵𝑆
26 6 nfel1 𝑧 𝐶𝑇
27 24 25 26 nf3an 𝑧 ( 𝐴𝑅𝐵𝑆𝐶𝑇 )
28 27 9 nfim 𝑧 ( ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) → 𝜃 )
29 eleq1 ( 𝑥 = 𝐴 → ( 𝑥𝑅𝐴𝑅 ) )
30 29 3anbi1d ( 𝑥 = 𝐴 → ( ( 𝑥𝑅𝑦𝑆𝑧𝑇 ) ↔ ( 𝐴𝑅𝑦𝑆𝑧𝑇 ) ) )
31 30 10 imbi12d ( 𝑥 = 𝐴 → ( ( ( 𝑥𝑅𝑦𝑆𝑧𝑇 ) → 𝜑 ) ↔ ( ( 𝐴𝑅𝑦𝑆𝑧𝑇 ) → 𝜓 ) ) )
32 eleq1 ( 𝑦 = 𝐵 → ( 𝑦𝑆𝐵𝑆 ) )
33 32 3anbi2d ( 𝑦 = 𝐵 → ( ( 𝐴𝑅𝑦𝑆𝑧𝑇 ) ↔ ( 𝐴𝑅𝐵𝑆𝑧𝑇 ) ) )
34 33 11 imbi12d ( 𝑦 = 𝐵 → ( ( ( 𝐴𝑅𝑦𝑆𝑧𝑇 ) → 𝜓 ) ↔ ( ( 𝐴𝑅𝐵𝑆𝑧𝑇 ) → 𝜒 ) ) )
35 eleq1 ( 𝑧 = 𝐶 → ( 𝑧𝑇𝐶𝑇 ) )
36 35 3anbi3d ( 𝑧 = 𝐶 → ( ( 𝐴𝑅𝐵𝑆𝑧𝑇 ) ↔ ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) ) )
37 36 12 imbi12d ( 𝑧 = 𝐶 → ( ( ( 𝐴𝑅𝐵𝑆𝑧𝑇 ) → 𝜒 ) ↔ ( ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) → 𝜃 ) ) )
38 1 2 3 4 5 6 18 23 28 31 34 37 13 vtocl3gf ( ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) → ( ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) → 𝜃 ) )
39 38 pm2.43i ( ( 𝐴𝑅𝐵𝑆𝐶𝑇 ) → 𝜃 )