Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  fimaproj Structured version   Visualization version   GIF version

Theorem fimaproj 30028
Description: Image of a cartesian product for a function on pairs, given two projections 𝐹 and 𝐺. (Contributed by Thierry Arnoux, 30-Dec-2019.)
Hypotheses
Ref Expression
fvproj.h 𝐻 = (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩)
fimaproj.f (𝜑𝐹 Fn 𝐴)
fimaproj.g (𝜑𝐺 Fn 𝐵)
fimaproj.x (𝜑𝑋𝐴)
fimaproj.y (𝜑𝑌𝐵)
Assertion
Ref Expression
fimaproj (𝜑 → (𝐻 “ (𝑋 × 𝑌)) = ((𝐹𝑋) × (𝐺𝑌)))
Distinct variable groups:   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦   𝑥,𝐹,𝑦   𝑥,𝐺,𝑦   𝑥,𝐻,𝑦
Allowed substitution hints:   𝜑(𝑥,𝑦)   𝑋(𝑥,𝑦)   𝑌(𝑥,𝑦)

Proof of Theorem fimaproj
Dummy variables 𝑎 𝑏 𝑧 𝑐 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 opex 4962 . . . . 5 ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩ ∈ V
2 fvproj.h . . . . . 6 𝐻 = (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩)
3 vex 3234 . . . . . . . . . 10 𝑥 ∈ V
4 vex 3234 . . . . . . . . . 10 𝑦 ∈ V
53, 4op1std 7220 . . . . . . . . 9 (𝑧 = ⟨𝑥, 𝑦⟩ → (1st𝑧) = 𝑥)
65fveq2d 6233 . . . . . . . 8 (𝑧 = ⟨𝑥, 𝑦⟩ → (𝐹‘(1st𝑧)) = (𝐹𝑥))
73, 4op2ndd 7221 . . . . . . . . 9 (𝑧 = ⟨𝑥, 𝑦⟩ → (2nd𝑧) = 𝑦)
87fveq2d 6233 . . . . . . . 8 (𝑧 = ⟨𝑥, 𝑦⟩ → (𝐺‘(2nd𝑧)) = (𝐺𝑦))
96, 8opeq12d 4441 . . . . . . 7 (𝑧 = ⟨𝑥, 𝑦⟩ → ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩ = ⟨(𝐹𝑥), (𝐺𝑦)⟩)
109mpt2mpt 6794 . . . . . 6 (𝑧 ∈ (𝐴 × 𝐵) ↦ ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩) = (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩)
112, 10eqtr4i 2676 . . . . 5 𝐻 = (𝑧 ∈ (𝐴 × 𝐵) ↦ ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩)
121, 11fnmpti 6060 . . . 4 𝐻 Fn (𝐴 × 𝐵)
13 fimaproj.x . . . . 5 (𝜑𝑋𝐴)
14 fimaproj.y . . . . 5 (𝜑𝑌𝐵)
15 xpss12 5158 . . . . 5 ((𝑋𝐴𝑌𝐵) → (𝑋 × 𝑌) ⊆ (𝐴 × 𝐵))
1613, 14, 15syl2anc 694 . . . 4 (𝜑 → (𝑋 × 𝑌) ⊆ (𝐴 × 𝐵))
17 fvelimab 6292 . . . 4 ((𝐻 Fn (𝐴 × 𝐵) ∧ (𝑋 × 𝑌) ⊆ (𝐴 × 𝐵)) → (𝑐 ∈ (𝐻 “ (𝑋 × 𝑌)) ↔ ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐))
1812, 16, 17sylancr 696 . . 3 (𝜑 → (𝑐 ∈ (𝐻 “ (𝑋 × 𝑌)) ↔ ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐))
19 simp-4r 824 . . . . . . . 8 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑎𝑋)
20 simplr 807 . . . . . . . 8 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑏𝑌)
21 opelxpi 5182 . . . . . . . 8 ((𝑎𝑋𝑏𝑌) → ⟨𝑎, 𝑏⟩ ∈ (𝑋 × 𝑌))
2219, 20, 21syl2anc 694 . . . . . . 7 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → ⟨𝑎, 𝑏⟩ ∈ (𝑋 × 𝑌))
23 simpllr 815 . . . . . . . . 9 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → (𝐹𝑎) = (1st𝑐))
24 simpr 476 . . . . . . . . 9 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → (𝐺𝑏) = (2nd𝑐))
2523, 24opeq12d 4441 . . . . . . . 8 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → ⟨(𝐹𝑎), (𝐺𝑏)⟩ = ⟨(1st𝑐), (2nd𝑐)⟩)
2613ad5antr 773 . . . . . . . . . 10 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑋𝐴)
2726, 19sseldd 3637 . . . . . . . . 9 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑎𝐴)
2814ad5antr 773 . . . . . . . . . 10 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑌𝐵)
2928, 20sseldd 3637 . . . . . . . . 9 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑏𝐵)
302, 27, 29fvproj 30027 . . . . . . . 8 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → (𝐻‘⟨𝑎, 𝑏⟩) = ⟨(𝐹𝑎), (𝐺𝑏)⟩)
31 1st2nd2 7249 . . . . . . . . 9 (𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌)) → 𝑐 = ⟨(1st𝑐), (2nd𝑐)⟩)
3231ad5antlr 775 . . . . . . . 8 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → 𝑐 = ⟨(1st𝑐), (2nd𝑐)⟩)
3325, 30, 323eqtr4d 2695 . . . . . . 7 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → (𝐻‘⟨𝑎, 𝑏⟩) = 𝑐)
34 fveq2 6229 . . . . . . . . 9 (𝑧 = ⟨𝑎, 𝑏⟩ → (𝐻𝑧) = (𝐻‘⟨𝑎, 𝑏⟩))
3534eqeq1d 2653 . . . . . . . 8 (𝑧 = ⟨𝑎, 𝑏⟩ → ((𝐻𝑧) = 𝑐 ↔ (𝐻‘⟨𝑎, 𝑏⟩) = 𝑐))
3635rspcev 3340 . . . . . . 7 ((⟨𝑎, 𝑏⟩ ∈ (𝑋 × 𝑌) ∧ (𝐻‘⟨𝑎, 𝑏⟩) = 𝑐) → ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐)
3722, 33, 36syl2anc 694 . . . . . 6 ((((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) ∧ 𝑏𝑌) ∧ (𝐺𝑏) = (2nd𝑐)) → ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐)
38 fimaproj.g . . . . . . . . 9 (𝜑𝐺 Fn 𝐵)
3938ad3antrrr 766 . . . . . . . 8 ((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) → 𝐺 Fn 𝐵)
40 fnfun 6026 . . . . . . . 8 (𝐺 Fn 𝐵 → Fun 𝐺)
4139, 40syl 17 . . . . . . 7 ((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) → Fun 𝐺)
42 xp2nd 7243 . . . . . . . 8 (𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌)) → (2nd𝑐) ∈ (𝐺𝑌))
4342ad3antlr 767 . . . . . . 7 ((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) → (2nd𝑐) ∈ (𝐺𝑌))
44 fvelima 6287 . . . . . . 7 ((Fun 𝐺 ∧ (2nd𝑐) ∈ (𝐺𝑌)) → ∃𝑏𝑌 (𝐺𝑏) = (2nd𝑐))
4541, 43, 44syl2anc 694 . . . . . 6 ((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) → ∃𝑏𝑌 (𝐺𝑏) = (2nd𝑐))
4637, 45r19.29a 3107 . . . . 5 ((((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) ∧ 𝑎𝑋) ∧ (𝐹𝑎) = (1st𝑐)) → ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐)
47 fimaproj.f . . . . . . . 8 (𝜑𝐹 Fn 𝐴)
4847adantr 480 . . . . . . 7 ((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) → 𝐹 Fn 𝐴)
49 fnfun 6026 . . . . . . 7 (𝐹 Fn 𝐴 → Fun 𝐹)
5048, 49syl 17 . . . . . 6 ((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) → Fun 𝐹)
51 xp1st 7242 . . . . . . 7 (𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌)) → (1st𝑐) ∈ (𝐹𝑋))
5251adantl 481 . . . . . 6 ((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) → (1st𝑐) ∈ (𝐹𝑋))
53 fvelima 6287 . . . . . 6 ((Fun 𝐹 ∧ (1st𝑐) ∈ (𝐹𝑋)) → ∃𝑎𝑋 (𝐹𝑎) = (1st𝑐))
5450, 52, 53syl2anc 694 . . . . 5 ((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) → ∃𝑎𝑋 (𝐹𝑎) = (1st𝑐))
5546, 54r19.29a 3107 . . . 4 ((𝜑𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))) → ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐)
56 simpr 476 . . . . . 6 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (𝐻𝑧) = 𝑐)
5716ad2antrr 762 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (𝑋 × 𝑌) ⊆ (𝐴 × 𝐵))
58 simplr 807 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝑧 ∈ (𝑋 × 𝑌))
5957, 58sseldd 3637 . . . . . . . 8 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝑧 ∈ (𝐴 × 𝐵))
6011fvmpt2 6330 . . . . . . . 8 ((𝑧 ∈ (𝐴 × 𝐵) ∧ ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩ ∈ V) → (𝐻𝑧) = ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩)
6159, 1, 60sylancl 695 . . . . . . 7 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (𝐻𝑧) = ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩)
6247ad2antrr 762 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝐹 Fn 𝐴)
6313ad2antrr 762 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝑋𝐴)
64 xp1st 7242 . . . . . . . . . 10 (𝑧 ∈ (𝑋 × 𝑌) → (1st𝑧) ∈ 𝑋)
6558, 64syl 17 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (1st𝑧) ∈ 𝑋)
66 fnfvima 6536 . . . . . . . . 9 ((𝐹 Fn 𝐴𝑋𝐴 ∧ (1st𝑧) ∈ 𝑋) → (𝐹‘(1st𝑧)) ∈ (𝐹𝑋))
6762, 63, 65, 66syl3anc 1366 . . . . . . . 8 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (𝐹‘(1st𝑧)) ∈ (𝐹𝑋))
6838ad2antrr 762 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝐺 Fn 𝐵)
6914ad2antrr 762 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝑌𝐵)
70 xp2nd 7243 . . . . . . . . . 10 (𝑧 ∈ (𝑋 × 𝑌) → (2nd𝑧) ∈ 𝑌)
7158, 70syl 17 . . . . . . . . 9 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (2nd𝑧) ∈ 𝑌)
72 fnfvima 6536 . . . . . . . . 9 ((𝐺 Fn 𝐵𝑌𝐵 ∧ (2nd𝑧) ∈ 𝑌) → (𝐺‘(2nd𝑧)) ∈ (𝐺𝑌))
7368, 69, 71, 72syl3anc 1366 . . . . . . . 8 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (𝐺‘(2nd𝑧)) ∈ (𝐺𝑌))
74 opelxpi 5182 . . . . . . . 8 (((𝐹‘(1st𝑧)) ∈ (𝐹𝑋) ∧ (𝐺‘(2nd𝑧)) ∈ (𝐺𝑌)) → ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩ ∈ ((𝐹𝑋) × (𝐺𝑌)))
7567, 73, 74syl2anc 694 . . . . . . 7 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → ⟨(𝐹‘(1st𝑧)), (𝐺‘(2nd𝑧))⟩ ∈ ((𝐹𝑋) × (𝐺𝑌)))
7661, 75eqeltrd 2730 . . . . . 6 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → (𝐻𝑧) ∈ ((𝐹𝑋) × (𝐺𝑌)))
7756, 76eqeltrrd 2731 . . . . 5 (((𝜑𝑧 ∈ (𝑋 × 𝑌)) ∧ (𝐻𝑧) = 𝑐) → 𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌)))
7877r19.29an 3106 . . . 4 ((𝜑 ∧ ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐) → 𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌)))
7955, 78impbida 895 . . 3 (𝜑 → (𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌)) ↔ ∃𝑧 ∈ (𝑋 × 𝑌)(𝐻𝑧) = 𝑐))
8018, 79bitr4d 271 . 2 (𝜑 → (𝑐 ∈ (𝐻 “ (𝑋 × 𝑌)) ↔ 𝑐 ∈ ((𝐹𝑋) × (𝐺𝑌))))
8180eqrdv 2649 1 (𝜑 → (𝐻 “ (𝑋 × 𝑌)) = ((𝐹𝑋) × (𝐺𝑌)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 383   = wceq 1523  wcel 2030  wrex 2942  Vcvv 3231  wss 3607  cop 4216  cmpt 4762   × cxp 5141  cima 5146  Fun wfun 5920   Fn wfn 5921  cfv 5926  cmpt2 6692  1st c1st 7208  2nd c2nd 7209
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ral 2946  df-rex 2947  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-nul 3949  df-if 4120  df-sn 4211  df-pr 4213  df-op 4217  df-uni 4469  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-id 5053  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-iota 5889  df-fun 5928  df-fn 5929  df-fv 5934  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-1st 7210  df-2nd 7211
This theorem is referenced by:  txomap  30029
  Copyright terms: Public domain W3C validator