Metamath Proof Explorer


Theorem dprd2dlem2

Description: The direct product of a collection of direct products. (Contributed by Mario Carneiro, 26-Apr-2016)

Ref Expression
Hypotheses dprd2d.1 ( 𝜑 → Rel 𝐴 )
dprd2d.2 ( 𝜑𝑆 : 𝐴 ⟶ ( SubGrp ‘ 𝐺 ) )
dprd2d.3 ( 𝜑 → dom 𝐴𝐼 )
dprd2d.4 ( ( 𝜑𝑖𝐼 ) → 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) )
dprd2d.5 ( 𝜑𝐺 dom DProd ( 𝑖𝐼 ↦ ( 𝐺 DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) ) ) )
dprd2d.k 𝐾 = ( mrCls ‘ ( SubGrp ‘ 𝐺 ) )
Assertion dprd2dlem2 ( ( 𝜑𝑋𝐴 ) → ( 𝑆𝑋 ) ⊆ ( 𝐺 DProd ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ) )

Proof

Step Hyp Ref Expression
1 dprd2d.1 ( 𝜑 → Rel 𝐴 )
2 dprd2d.2 ( 𝜑𝑆 : 𝐴 ⟶ ( SubGrp ‘ 𝐺 ) )
3 dprd2d.3 ( 𝜑 → dom 𝐴𝐼 )
4 dprd2d.4 ( ( 𝜑𝑖𝐼 ) → 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) )
5 dprd2d.5 ( 𝜑𝐺 dom DProd ( 𝑖𝐼 ↦ ( 𝐺 DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) ) ) )
6 dprd2d.k 𝐾 = ( mrCls ‘ ( SubGrp ‘ 𝐺 ) )
7 df-ov ( ( 1st𝑋 ) 𝑆 ( 2nd𝑋 ) ) = ( 𝑆 ‘ ⟨ ( 1st𝑋 ) , ( 2nd𝑋 ) ⟩ )
8 1st2nd ( ( Rel 𝐴𝑋𝐴 ) → 𝑋 = ⟨ ( 1st𝑋 ) , ( 2nd𝑋 ) ⟩ )
9 1 8 sylan ( ( 𝜑𝑋𝐴 ) → 𝑋 = ⟨ ( 1st𝑋 ) , ( 2nd𝑋 ) ⟩ )
10 simpr ( ( 𝜑𝑋𝐴 ) → 𝑋𝐴 )
11 9 10 eqeltrrd ( ( 𝜑𝑋𝐴 ) → ⟨ ( 1st𝑋 ) , ( 2nd𝑋 ) ⟩ ∈ 𝐴 )
12 df-br ( ( 1st𝑋 ) 𝐴 ( 2nd𝑋 ) ↔ ⟨ ( 1st𝑋 ) , ( 2nd𝑋 ) ⟩ ∈ 𝐴 )
13 11 12 sylibr ( ( 𝜑𝑋𝐴 ) → ( 1st𝑋 ) 𝐴 ( 2nd𝑋 ) )
14 1 adantr ( ( 𝜑𝑋𝐴 ) → Rel 𝐴 )
15 elrelimasn ( Rel 𝐴 → ( ( 2nd𝑋 ) ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↔ ( 1st𝑋 ) 𝐴 ( 2nd𝑋 ) ) )
16 14 15 syl ( ( 𝜑𝑋𝐴 ) → ( ( 2nd𝑋 ) ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↔ ( 1st𝑋 ) 𝐴 ( 2nd𝑋 ) ) )
17 13 16 mpbird ( ( 𝜑𝑋𝐴 ) → ( 2nd𝑋 ) ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) )
18 oveq2 ( 𝑗 = ( 2nd𝑋 ) → ( ( 1st𝑋 ) 𝑆 𝑗 ) = ( ( 1st𝑋 ) 𝑆 ( 2nd𝑋 ) ) )
19 eqid ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) = ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) )
20 ovex ( ( 1st𝑋 ) 𝑆 𝑗 ) ∈ V
21 18 19 20 fvmpt3i ( ( 2nd𝑋 ) ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) → ( ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ‘ ( 2nd𝑋 ) ) = ( ( 1st𝑋 ) 𝑆 ( 2nd𝑋 ) ) )
22 17 21 syl ( ( 𝜑𝑋𝐴 ) → ( ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ‘ ( 2nd𝑋 ) ) = ( ( 1st𝑋 ) 𝑆 ( 2nd𝑋 ) ) )
23 9 fveq2d ( ( 𝜑𝑋𝐴 ) → ( 𝑆𝑋 ) = ( 𝑆 ‘ ⟨ ( 1st𝑋 ) , ( 2nd𝑋 ) ⟩ ) )
24 7 22 23 3eqtr4a ( ( 𝜑𝑋𝐴 ) → ( ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ‘ ( 2nd𝑋 ) ) = ( 𝑆𝑋 ) )
25 sneq ( 𝑖 = ( 1st𝑋 ) → { 𝑖 } = { ( 1st𝑋 ) } )
26 25 imaeq2d ( 𝑖 = ( 1st𝑋 ) → ( 𝐴 “ { 𝑖 } ) = ( 𝐴 “ { ( 1st𝑋 ) } ) )
27 oveq1 ( 𝑖 = ( 1st𝑋 ) → ( 𝑖 𝑆 𝑗 ) = ( ( 1st𝑋 ) 𝑆 𝑗 ) )
28 26 27 mpteq12dv ( 𝑖 = ( 1st𝑋 ) → ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) = ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) )
29 28 breq2d ( 𝑖 = ( 1st𝑋 ) → ( 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) ↔ 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ) )
30 4 ralrimiva ( 𝜑 → ∀ 𝑖𝐼 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) )
31 30 adantr ( ( 𝜑𝑋𝐴 ) → ∀ 𝑖𝐼 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { 𝑖 } ) ↦ ( 𝑖 𝑆 𝑗 ) ) )
32 3 adantr ( ( 𝜑𝑋𝐴 ) → dom 𝐴𝐼 )
33 1stdm ( ( Rel 𝐴𝑋𝐴 ) → ( 1st𝑋 ) ∈ dom 𝐴 )
34 1 33 sylan ( ( 𝜑𝑋𝐴 ) → ( 1st𝑋 ) ∈ dom 𝐴 )
35 32 34 sseldd ( ( 𝜑𝑋𝐴 ) → ( 1st𝑋 ) ∈ 𝐼 )
36 29 31 35 rspcdva ( ( 𝜑𝑋𝐴 ) → 𝐺 dom DProd ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) )
37 20 19 dmmpti dom ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) = ( 𝐴 “ { ( 1st𝑋 ) } )
38 37 a1i ( ( 𝜑𝑋𝐴 ) → dom ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) = ( 𝐴 “ { ( 1st𝑋 ) } ) )
39 36 38 17 dprdub ( ( 𝜑𝑋𝐴 ) → ( ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ‘ ( 2nd𝑋 ) ) ⊆ ( 𝐺 DProd ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ) )
40 24 39 eqsstrrd ( ( 𝜑𝑋𝐴 ) → ( 𝑆𝑋 ) ⊆ ( 𝐺 DProd ( 𝑗 ∈ ( 𝐴 “ { ( 1st𝑋 ) } ) ↦ ( ( 1st𝑋 ) 𝑆 𝑗 ) ) ) )