Metamath Proof Explorer


Theorem funcsetcestrclem7

Description: Lemma 7 for funcsetcestrc . (Contributed by AV, 27-Mar-2020)

Ref Expression
Hypotheses funcsetcestrc.s 𝑆 = ( SetCat ‘ 𝑈 )
funcsetcestrc.c 𝐶 = ( Base ‘ 𝑆 )
funcsetcestrc.f ( 𝜑𝐹 = ( 𝑥𝐶 ↦ { ⟨ ( Base ‘ ndx ) , 𝑥 ⟩ } ) )
funcsetcestrc.u ( 𝜑𝑈 ∈ WUni )
funcsetcestrc.o ( 𝜑 → ω ∈ 𝑈 )
funcsetcestrc.g ( 𝜑𝐺 = ( 𝑥𝐶 , 𝑦𝐶 ↦ ( I ↾ ( 𝑦m 𝑥 ) ) ) )
funcsetcestrc.e 𝐸 = ( ExtStrCat ‘ 𝑈 )
Assertion funcsetcestrclem7 ( ( 𝜑𝑋𝐶 ) → ( ( 𝑋 𝐺 𝑋 ) ‘ ( ( Id ‘ 𝑆 ) ‘ 𝑋 ) ) = ( ( Id ‘ 𝐸 ) ‘ ( 𝐹𝑋 ) ) )

Proof

Step Hyp Ref Expression
1 funcsetcestrc.s 𝑆 = ( SetCat ‘ 𝑈 )
2 funcsetcestrc.c 𝐶 = ( Base ‘ 𝑆 )
3 funcsetcestrc.f ( 𝜑𝐹 = ( 𝑥𝐶 ↦ { ⟨ ( Base ‘ ndx ) , 𝑥 ⟩ } ) )
4 funcsetcestrc.u ( 𝜑𝑈 ∈ WUni )
5 funcsetcestrc.o ( 𝜑 → ω ∈ 𝑈 )
6 funcsetcestrc.g ( 𝜑𝐺 = ( 𝑥𝐶 , 𝑦𝐶 ↦ ( I ↾ ( 𝑦m 𝑥 ) ) ) )
7 funcsetcestrc.e 𝐸 = ( ExtStrCat ‘ 𝑈 )
8 1 2 3 4 5 6 funcsetcestrclem5 ( ( 𝜑 ∧ ( 𝑋𝐶𝑋𝐶 ) ) → ( 𝑋 𝐺 𝑋 ) = ( I ↾ ( 𝑋m 𝑋 ) ) )
9 8 anabsan2 ( ( 𝜑𝑋𝐶 ) → ( 𝑋 𝐺 𝑋 ) = ( I ↾ ( 𝑋m 𝑋 ) ) )
10 eqid ( Id ‘ 𝑆 ) = ( Id ‘ 𝑆 )
11 4 adantr ( ( 𝜑𝑋𝐶 ) → 𝑈 ∈ WUni )
12 1 4 setcbas ( 𝜑𝑈 = ( Base ‘ 𝑆 ) )
13 2 12 eqtr4id ( 𝜑𝐶 = 𝑈 )
14 13 eleq2d ( 𝜑 → ( 𝑋𝐶𝑋𝑈 ) )
15 14 biimpa ( ( 𝜑𝑋𝐶 ) → 𝑋𝑈 )
16 1 10 11 15 setcid ( ( 𝜑𝑋𝐶 ) → ( ( Id ‘ 𝑆 ) ‘ 𝑋 ) = ( I ↾ 𝑋 ) )
17 9 16 fveq12d ( ( 𝜑𝑋𝐶 ) → ( ( 𝑋 𝐺 𝑋 ) ‘ ( ( Id ‘ 𝑆 ) ‘ 𝑋 ) ) = ( ( I ↾ ( 𝑋m 𝑋 ) ) ‘ ( I ↾ 𝑋 ) ) )
18 f1oi ( I ↾ 𝑋 ) : 𝑋1-1-onto𝑋
19 f1of ( ( I ↾ 𝑋 ) : 𝑋1-1-onto𝑋 → ( I ↾ 𝑋 ) : 𝑋𝑋 )
20 18 19 ax-mp ( I ↾ 𝑋 ) : 𝑋𝑋
21 simpr ( ( 𝜑𝑋𝐶 ) → 𝑋𝐶 )
22 21 21 elmapd ( ( 𝜑𝑋𝐶 ) → ( ( I ↾ 𝑋 ) ∈ ( 𝑋m 𝑋 ) ↔ ( I ↾ 𝑋 ) : 𝑋𝑋 ) )
23 20 22 mpbiri ( ( 𝜑𝑋𝐶 ) → ( I ↾ 𝑋 ) ∈ ( 𝑋m 𝑋 ) )
24 fvresi ( ( I ↾ 𝑋 ) ∈ ( 𝑋m 𝑋 ) → ( ( I ↾ ( 𝑋m 𝑋 ) ) ‘ ( I ↾ 𝑋 ) ) = ( I ↾ 𝑋 ) )
25 23 24 syl ( ( 𝜑𝑋𝐶 ) → ( ( I ↾ ( 𝑋m 𝑋 ) ) ‘ ( I ↾ 𝑋 ) ) = ( I ↾ 𝑋 ) )
26 eqid { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } = { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ }
27 26 1strbas ( 𝑋𝐶𝑋 = ( Base ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) )
28 21 27 syl ( ( 𝜑𝑋𝐶 ) → 𝑋 = ( Base ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) )
29 28 reseq2d ( ( 𝜑𝑋𝐶 ) → ( I ↾ 𝑋 ) = ( I ↾ ( Base ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) ) )
30 25 29 eqtrd ( ( 𝜑𝑋𝐶 ) → ( ( I ↾ ( 𝑋m 𝑋 ) ) ‘ ( I ↾ 𝑋 ) ) = ( I ↾ ( Base ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) ) )
31 1 2 3 funcsetcestrclem1 ( ( 𝜑𝑋𝐶 ) → ( 𝐹𝑋 ) = { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } )
32 31 fveq2d ( ( 𝜑𝑋𝐶 ) → ( ( Id ‘ 𝐸 ) ‘ ( 𝐹𝑋 ) ) = ( ( Id ‘ 𝐸 ) ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) )
33 eqid ( Id ‘ 𝐸 ) = ( Id ‘ 𝐸 )
34 1 2 4 5 setc1strwun ( ( 𝜑𝑋𝐶 ) → { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ∈ 𝑈 )
35 7 33 11 34 estrcid ( ( 𝜑𝑋𝐶 ) → ( ( Id ‘ 𝐸 ) ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) = ( I ↾ ( Base ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) ) )
36 32 35 eqtr2d ( ( 𝜑𝑋𝐶 ) → ( I ↾ ( Base ‘ { ⟨ ( Base ‘ ndx ) , 𝑋 ⟩ } ) ) = ( ( Id ‘ 𝐸 ) ‘ ( 𝐹𝑋 ) ) )
37 17 30 36 3eqtrd ( ( 𝜑𝑋𝐶 ) → ( ( 𝑋 𝐺 𝑋 ) ‘ ( ( Id ‘ 𝑆 ) ‘ 𝑋 ) ) = ( ( Id ‘ 𝐸 ) ‘ ( 𝐹𝑋 ) ) )