Metamath Proof Explorer


Theorem opnvonmbllem1

Description: The half-open interval expressed using a composition of a function (Contributed by Glauco Siliprandi, 24-Dec-2020)

Ref Expression
Hypotheses opnvonmbllem1.i 𝑖 𝜑
opnvonmbllem1.x ( 𝜑𝑋𝑉 )
opnvonmbllem1.c ( 𝜑𝐶 : 𝑋 ⟶ ℚ )
opnvonmbllem1.d ( 𝜑𝐷 : 𝑋 ⟶ ℚ )
opnvonmbllem1.s ( 𝜑X 𝑖𝑋 ( ( 𝐶𝑖 ) [,) ( 𝐷𝑖 ) ) ⊆ 𝐵 )
opnvonmbllem1.g ( 𝜑𝐵𝐺 )
opnvonmbllem1.y ( 𝜑𝑌X 𝑖𝑋 ( ( 𝐶𝑖 ) [,) ( 𝐷𝑖 ) ) )
opnvonmbllem1.k 𝐾 = { ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ∣ X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) ⊆ 𝐺 }
opnvonmbllem1.h 𝐻 = ( 𝑖𝑋 ↦ ⟨ ( 𝐶𝑖 ) , ( 𝐷𝑖 ) ⟩ )
Assertion opnvonmbllem1 ( 𝜑 → ∃ 𝐾 𝑌X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) )

Proof

Step Hyp Ref Expression
1 opnvonmbllem1.i 𝑖 𝜑
2 opnvonmbllem1.x ( 𝜑𝑋𝑉 )
3 opnvonmbllem1.c ( 𝜑𝐶 : 𝑋 ⟶ ℚ )
4 opnvonmbllem1.d ( 𝜑𝐷 : 𝑋 ⟶ ℚ )
5 opnvonmbllem1.s ( 𝜑X 𝑖𝑋 ( ( 𝐶𝑖 ) [,) ( 𝐷𝑖 ) ) ⊆ 𝐵 )
6 opnvonmbllem1.g ( 𝜑𝐵𝐺 )
7 opnvonmbllem1.y ( 𝜑𝑌X 𝑖𝑋 ( ( 𝐶𝑖 ) [,) ( 𝐷𝑖 ) ) )
8 opnvonmbllem1.k 𝐾 = { ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ∣ X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) ⊆ 𝐺 }
9 opnvonmbllem1.h 𝐻 = ( 𝑖𝑋 ↦ ⟨ ( 𝐶𝑖 ) , ( 𝐷𝑖 ) ⟩ )
10 3 ffvelrnda ( ( 𝜑𝑖𝑋 ) → ( 𝐶𝑖 ) ∈ ℚ )
11 4 ffvelrnda ( ( 𝜑𝑖𝑋 ) → ( 𝐷𝑖 ) ∈ ℚ )
12 opelxpi ( ( ( 𝐶𝑖 ) ∈ ℚ ∧ ( 𝐷𝑖 ) ∈ ℚ ) → ⟨ ( 𝐶𝑖 ) , ( 𝐷𝑖 ) ⟩ ∈ ( ℚ × ℚ ) )
13 10 11 12 syl2anc ( ( 𝜑𝑖𝑋 ) → ⟨ ( 𝐶𝑖 ) , ( 𝐷𝑖 ) ⟩ ∈ ( ℚ × ℚ ) )
14 1 13 9 fmptdf ( 𝜑𝐻 : 𝑋 ⟶ ( ℚ × ℚ ) )
15 qex ℚ ∈ V
16 15 15 xpex ( ℚ × ℚ ) ∈ V
17 16 a1i ( 𝜑 → ( ℚ × ℚ ) ∈ V )
18 17 2 jca ( 𝜑 → ( ( ℚ × ℚ ) ∈ V ∧ 𝑋𝑉 ) )
19 elmapg ( ( ( ℚ × ℚ ) ∈ V ∧ 𝑋𝑉 ) → ( 𝐻 ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ↔ 𝐻 : 𝑋 ⟶ ( ℚ × ℚ ) ) )
20 18 19 syl ( 𝜑 → ( 𝐻 ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ↔ 𝐻 : 𝑋 ⟶ ( ℚ × ℚ ) ) )
21 14 20 mpbird ( 𝜑𝐻 ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) )
22 1 9 hoi2toco ( 𝜑X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) = X 𝑖𝑋 ( ( 𝐶𝑖 ) [,) ( 𝐷𝑖 ) ) )
23 5 6 sstrd ( 𝜑X 𝑖𝑋 ( ( 𝐶𝑖 ) [,) ( 𝐷𝑖 ) ) ⊆ 𝐺 )
24 22 23 eqsstrd ( 𝜑X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) ⊆ 𝐺 )
25 21 24 jca ( 𝜑 → ( 𝐻 ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ∧ X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) ⊆ 𝐺 ) )
26 nfcv 𝑖
27 nfmpt1 𝑖 ( 𝑖𝑋 ↦ ⟨ ( 𝐶𝑖 ) , ( 𝐷𝑖 ) ⟩ )
28 9 27 nfcxfr 𝑖 𝐻
29 26 28 nfeq 𝑖 = 𝐻
30 coeq2 ( = 𝐻 → ( [,) ∘ ) = ( [,) ∘ 𝐻 ) )
31 30 fveq1d ( = 𝐻 → ( ( [,) ∘ ) ‘ 𝑖 ) = ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) )
32 31 adantr ( ( = 𝐻𝑖𝑋 ) → ( ( [,) ∘ ) ‘ 𝑖 ) = ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) )
33 29 32 ixpeq2d ( = 𝐻X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) = X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) )
34 33 sseq1d ( = 𝐻 → ( X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) ⊆ 𝐺X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) ⊆ 𝐺 ) )
35 34 8 elrab2 ( 𝐻𝐾 ↔ ( 𝐻 ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ∧ X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) ⊆ 𝐺 ) )
36 25 35 sylibr ( 𝜑𝐻𝐾 )
37 7 22 eleqtrrd ( 𝜑𝑌X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) )
38 nfv 𝑌X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 )
39 nfcv 𝐻
40 nfrab1 { ∈ ( ( ℚ × ℚ ) ↑m 𝑋 ) ∣ X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) ⊆ 𝐺 }
41 8 40 nfcxfr 𝐾
42 33 eleq2d ( = 𝐻 → ( 𝑌X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) ↔ 𝑌X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) ) )
43 38 39 41 42 rspcef ( ( 𝐻𝐾𝑌X 𝑖𝑋 ( ( [,) ∘ 𝐻 ) ‘ 𝑖 ) ) → ∃ 𝐾 𝑌X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) )
44 36 37 43 syl2anc ( 𝜑 → ∃ 𝐾 𝑌X 𝑖𝑋 ( ( [,) ∘ ) ‘ 𝑖 ) )