Metamath Proof Explorer


Theorem 3gencl

Description: Implicit substitution for class with embedded variable. (Contributed by NM, 17-May-1996)

Ref Expression
Hypotheses 3gencl.1 ( 𝐷𝑆 ↔ ∃ 𝑥𝑅 𝐴 = 𝐷 )
3gencl.2 ( 𝐹𝑆 ↔ ∃ 𝑦𝑅 𝐵 = 𝐹 )
3gencl.3 ( 𝐺𝑆 ↔ ∃ 𝑧𝑅 𝐶 = 𝐺 )
3gencl.4 ( 𝐴 = 𝐷 → ( 𝜑𝜓 ) )
3gencl.5 ( 𝐵 = 𝐹 → ( 𝜓𝜒 ) )
3gencl.6 ( 𝐶 = 𝐺 → ( 𝜒𝜃 ) )
3gencl.7 ( ( 𝑥𝑅𝑦𝑅𝑧𝑅 ) → 𝜑 )
Assertion 3gencl ( ( 𝐷𝑆𝐹𝑆𝐺𝑆 ) → 𝜃 )

Proof

Step Hyp Ref Expression
1 3gencl.1 ( 𝐷𝑆 ↔ ∃ 𝑥𝑅 𝐴 = 𝐷 )
2 3gencl.2 ( 𝐹𝑆 ↔ ∃ 𝑦𝑅 𝐵 = 𝐹 )
3 3gencl.3 ( 𝐺𝑆 ↔ ∃ 𝑧𝑅 𝐶 = 𝐺 )
4 3gencl.4 ( 𝐴 = 𝐷 → ( 𝜑𝜓 ) )
5 3gencl.5 ( 𝐵 = 𝐹 → ( 𝜓𝜒 ) )
6 3gencl.6 ( 𝐶 = 𝐺 → ( 𝜒𝜃 ) )
7 3gencl.7 ( ( 𝑥𝑅𝑦𝑅𝑧𝑅 ) → 𝜑 )
8 df-rex ( ∃ 𝑧𝑅 𝐶 = 𝐺 ↔ ∃ 𝑧 ( 𝑧𝑅𝐶 = 𝐺 ) )
9 3 8 bitri ( 𝐺𝑆 ↔ ∃ 𝑧 ( 𝑧𝑅𝐶 = 𝐺 ) )
10 6 imbi2d ( 𝐶 = 𝐺 → ( ( ( 𝐷𝑆𝐹𝑆 ) → 𝜒 ) ↔ ( ( 𝐷𝑆𝐹𝑆 ) → 𝜃 ) ) )
11 4 imbi2d ( 𝐴 = 𝐷 → ( ( 𝑧𝑅𝜑 ) ↔ ( 𝑧𝑅𝜓 ) ) )
12 5 imbi2d ( 𝐵 = 𝐹 → ( ( 𝑧𝑅𝜓 ) ↔ ( 𝑧𝑅𝜒 ) ) )
13 7 3expia ( ( 𝑥𝑅𝑦𝑅 ) → ( 𝑧𝑅𝜑 ) )
14 1 2 11 12 13 2gencl ( ( 𝐷𝑆𝐹𝑆 ) → ( 𝑧𝑅𝜒 ) )
15 14 com12 ( 𝑧𝑅 → ( ( 𝐷𝑆𝐹𝑆 ) → 𝜒 ) )
16 9 10 15 gencl ( 𝐺𝑆 → ( ( 𝐷𝑆𝐹𝑆 ) → 𝜃 ) )
17 16 com12 ( ( 𝐷𝑆𝐹𝑆 ) → ( 𝐺𝑆𝜃 ) )
18 17 3impia ( ( 𝐷𝑆𝐹𝑆𝐺𝑆 ) → 𝜃 )