Metamath Proof Explorer


Theorem imasip

Description: The inner product of an image structure. (Contributed by Thierry Arnoux, 16-Jun-2019)

Ref Expression
Hypotheses imasbas.u ( 𝜑𝑈 = ( 𝐹s 𝑅 ) )
imasbas.v ( 𝜑𝑉 = ( Base ‘ 𝑅 ) )
imasbas.f ( 𝜑𝐹 : 𝑉onto𝐵 )
imasbas.r ( 𝜑𝑅𝑍 )
imasip.i , = ( ·𝑖𝑅 )
imasip.w 𝐼 = ( ·𝑖𝑈 )
Assertion imasip ( 𝜑𝐼 = 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } )

Proof

Step Hyp Ref Expression
1 imasbas.u ( 𝜑𝑈 = ( 𝐹s 𝑅 ) )
2 imasbas.v ( 𝜑𝑉 = ( Base ‘ 𝑅 ) )
3 imasbas.f ( 𝜑𝐹 : 𝑉onto𝐵 )
4 imasbas.r ( 𝜑𝑅𝑍 )
5 imasip.i , = ( ·𝑖𝑅 )
6 imasip.w 𝐼 = ( ·𝑖𝑈 )
7 eqid ( +g𝑅 ) = ( +g𝑅 )
8 eqid ( .r𝑅 ) = ( .r𝑅 )
9 eqid ( Scalar ‘ 𝑅 ) = ( Scalar ‘ 𝑅 )
10 eqid ( Base ‘ ( Scalar ‘ 𝑅 ) ) = ( Base ‘ ( Scalar ‘ 𝑅 ) )
11 eqid ( ·𝑠𝑅 ) = ( ·𝑠𝑅 )
12 eqid ( TopOpen ‘ 𝑅 ) = ( TopOpen ‘ 𝑅 )
13 eqid ( dist ‘ 𝑅 ) = ( dist ‘ 𝑅 )
14 eqid ( le ‘ 𝑅 ) = ( le ‘ 𝑅 )
15 eqid ( +g𝑈 ) = ( +g𝑈 )
16 1 2 3 4 7 15 imasplusg ( 𝜑 → ( +g𝑈 ) = 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝐹 ‘ ( 𝑝 ( +g𝑅 ) 𝑞 ) ) ⟩ } )
17 eqid ( .r𝑈 ) = ( .r𝑈 )
18 1 2 3 4 8 17 imasmulr ( 𝜑 → ( .r𝑈 ) = 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝐹 ‘ ( 𝑝 ( .r𝑅 ) 𝑞 ) ) ⟩ } )
19 eqid ( ·𝑠𝑈 ) = ( ·𝑠𝑈 )
20 1 2 3 4 9 10 11 19 imasvsca ( 𝜑 → ( ·𝑠𝑈 ) = 𝑞𝑉 ( 𝑝 ∈ ( Base ‘ ( Scalar ‘ 𝑅 ) ) , 𝑥 ∈ { ( 𝐹𝑞 ) } ↦ ( 𝐹 ‘ ( 𝑝 ( ·𝑠𝑅 ) 𝑞 ) ) ) )
21 eqidd ( 𝜑 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } = 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } )
22 eqidd ( 𝜑 → ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) = ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) )
23 eqid ( dist ‘ 𝑈 ) = ( dist ‘ 𝑈 )
24 1 2 3 4 13 23 imasds ( 𝜑 → ( dist ‘ 𝑈 ) = ( 𝑥𝐵 , 𝑦𝐵 ↦ inf ( 𝑢 ∈ ℕ ran ( 𝑧 ∈ { 𝑤 ∈ ( ( 𝑉 × 𝑉 ) ↑m ( 1 ... 𝑢 ) ) ∣ ( ( 𝐹 ‘ ( 1st ‘ ( 𝑤 ‘ 1 ) ) ) = 𝑥 ∧ ( 𝐹 ‘ ( 2nd ‘ ( 𝑤𝑢 ) ) ) = 𝑦 ∧ ∀ 𝑣 ∈ ( 1 ... ( 𝑢 − 1 ) ) ( 𝐹 ‘ ( 2nd ‘ ( 𝑤𝑣 ) ) ) = ( 𝐹 ‘ ( 1st ‘ ( 𝑤 ‘ ( 𝑣 + 1 ) ) ) ) ) } ↦ ( ℝ*𝑠 Σg ( ( dist ‘ 𝑅 ) ∘ 𝑧 ) ) ) , ℝ* , < ) ) )
25 eqidd ( 𝜑 → ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) = ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) )
26 1 2 7 8 9 10 11 5 12 13 14 16 18 20 21 22 24 25 3 4 imasval ( 𝜑𝑈 = ( ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ∪ { ⟨ ( TopSet ‘ ndx ) , ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) ⟩ , ⟨ ( le ‘ ndx ) , ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) ⟩ , ⟨ ( dist ‘ ndx ) , ( dist ‘ 𝑈 ) ⟩ } ) )
27 eqid ( ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ∪ { ⟨ ( TopSet ‘ ndx ) , ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) ⟩ , ⟨ ( le ‘ ndx ) , ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) ⟩ , ⟨ ( dist ‘ ndx ) , ( dist ‘ 𝑈 ) ⟩ } ) = ( ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ∪ { ⟨ ( TopSet ‘ ndx ) , ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) ⟩ , ⟨ ( le ‘ ndx ) , ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) ⟩ , ⟨ ( dist ‘ ndx ) , ( dist ‘ 𝑈 ) ⟩ } )
28 27 imasvalstr ( ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ∪ { ⟨ ( TopSet ‘ ndx ) , ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) ⟩ , ⟨ ( le ‘ ndx ) , ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) ⟩ , ⟨ ( dist ‘ ndx ) , ( dist ‘ 𝑈 ) ⟩ } ) Struct ⟨ 1 , 1 2 ⟩
29 ipid ·𝑖 = Slot ( ·𝑖 ‘ ndx )
30 snsstp3 { ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ⊆ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ }
31 ssun2 { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ⊆ ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } )
32 30 31 sstri { ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ⊆ ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } )
33 ssun1 ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ⊆ ( ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ∪ { ⟨ ( TopSet ‘ ndx ) , ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) ⟩ , ⟨ ( le ‘ ndx ) , ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) ⟩ , ⟨ ( dist ‘ ndx ) , ( dist ‘ 𝑈 ) ⟩ } )
34 32 33 sstri { ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ⊆ ( ( { ⟨ ( Base ‘ ndx ) , 𝐵 ⟩ , ⟨ ( +g ‘ ndx ) , ( +g𝑈 ) ⟩ , ⟨ ( .r ‘ ndx ) , ( .r𝑈 ) ⟩ } ∪ { ⟨ ( Scalar ‘ ndx ) , ( Scalar ‘ 𝑅 ) ⟩ , ⟨ ( ·𝑠 ‘ ndx ) , ( ·𝑠𝑈 ) ⟩ , ⟨ ( ·𝑖 ‘ ndx ) , 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ⟩ } ) ∪ { ⟨ ( TopSet ‘ ndx ) , ( ( TopOpen ‘ 𝑅 ) qTop 𝐹 ) ⟩ , ⟨ ( le ‘ ndx ) , ( ( 𝐹 ∘ ( le ‘ 𝑅 ) ) ∘ 𝐹 ) ⟩ , ⟨ ( dist ‘ ndx ) , ( dist ‘ 𝑈 ) ⟩ } )
35 fvex ( Base ‘ 𝑅 ) ∈ V
36 2 35 eqeltrdi ( 𝜑𝑉 ∈ V )
37 snex { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V
38 37 rgenw 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V
39 iunexg ( ( 𝑉 ∈ V ∧ ∀ 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V ) → 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V )
40 36 38 39 sylancl ( 𝜑 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V )
41 40 ralrimivw ( 𝜑 → ∀ 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V )
42 iunexg ( ( 𝑉 ∈ V ∧ ∀ 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V ) → 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V )
43 36 41 42 syl2anc ( 𝜑 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } ∈ V )
44 26 28 29 34 43 6 strfv3 ( 𝜑𝐼 = 𝑝𝑉 𝑞𝑉 { ⟨ ⟨ ( 𝐹𝑝 ) , ( 𝐹𝑞 ) ⟩ , ( 𝑝 , 𝑞 ) ⟩ } )