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

Theorem xppreima 31028
Description: The preimage of a Cartesian product is the intersection of the preimages of each component function. (Contributed by Thierry Arnoux, 6-Jun-2017.)
Assertion
Ref Expression
xppreima ((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) → (𝐹 “ (𝑌 × 𝑍)) = (((1st𝐹) “ 𝑌) ∩ ((2nd𝐹) “ 𝑍)))

Proof of Theorem xppreima
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 funfn 6493 . . . . 5 (Fun 𝐹𝐹 Fn dom 𝐹)
2 fncnvima2 6970 . . . . 5 (𝐹 Fn dom 𝐹 → (𝐹 “ (𝑌 × 𝑍)) = {𝑥 ∈ dom 𝐹 ∣ (𝐹𝑥) ∈ (𝑌 × 𝑍)})
31, 2sylbi 216 . . . 4 (Fun 𝐹 → (𝐹 “ (𝑌 × 𝑍)) = {𝑥 ∈ dom 𝐹 ∣ (𝐹𝑥) ∈ (𝑌 × 𝑍)})
43adantr 482 . . 3 ((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) → (𝐹 “ (𝑌 × 𝑍)) = {𝑥 ∈ dom 𝐹 ∣ (𝐹𝑥) ∈ (𝑌 × 𝑍)})
5 elxp6 7897 . . . . . . 7 ((𝐹𝑥) ∈ (𝑌 × 𝑍) ↔ ((𝐹𝑥) = ⟨(1st ‘(𝐹𝑥)), (2nd ‘(𝐹𝑥))⟩ ∧ ((1st ‘(𝐹𝑥)) ∈ 𝑌 ∧ (2nd ‘(𝐹𝑥)) ∈ 𝑍)))
6 fvco 6898 . . . . . . . . . 10 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ((1st𝐹)‘𝑥) = (1st ‘(𝐹𝑥)))
7 fvco 6898 . . . . . . . . . 10 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ((2nd𝐹)‘𝑥) = (2nd ‘(𝐹𝑥)))
86, 7opeq12d 4817 . . . . . . . . 9 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩ = ⟨(1st ‘(𝐹𝑥)), (2nd ‘(𝐹𝑥))⟩)
98eqeq2d 2747 . . . . . . . 8 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ((𝐹𝑥) = ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩ ↔ (𝐹𝑥) = ⟨(1st ‘(𝐹𝑥)), (2nd ‘(𝐹𝑥))⟩))
106eleq1d 2821 . . . . . . . . 9 ((Fun 𝐹𝑥 ∈ dom 𝐹) → (((1st𝐹)‘𝑥) ∈ 𝑌 ↔ (1st ‘(𝐹𝑥)) ∈ 𝑌))
117eleq1d 2821 . . . . . . . . 9 ((Fun 𝐹𝑥 ∈ dom 𝐹) → (((2nd𝐹)‘𝑥) ∈ 𝑍 ↔ (2nd ‘(𝐹𝑥)) ∈ 𝑍))
1210, 11anbi12d 632 . . . . . . . 8 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ((((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍) ↔ ((1st ‘(𝐹𝑥)) ∈ 𝑌 ∧ (2nd ‘(𝐹𝑥)) ∈ 𝑍)))
139, 12anbi12d 632 . . . . . . 7 ((Fun 𝐹𝑥 ∈ dom 𝐹) → (((𝐹𝑥) = ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩ ∧ (((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍)) ↔ ((𝐹𝑥) = ⟨(1st ‘(𝐹𝑥)), (2nd ‘(𝐹𝑥))⟩ ∧ ((1st ‘(𝐹𝑥)) ∈ 𝑌 ∧ (2nd ‘(𝐹𝑥)) ∈ 𝑍))))
145, 13bitr4id 290 . . . . . 6 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ((𝐹𝑥) ∈ (𝑌 × 𝑍) ↔ ((𝐹𝑥) = ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩ ∧ (((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍))))
1514adantlr 713 . . . . 5 (((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) ∧ 𝑥 ∈ dom 𝐹) → ((𝐹𝑥) ∈ (𝑌 × 𝑍) ↔ ((𝐹𝑥) = ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩ ∧ (((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍))))
16 opfv 31027 . . . . . 6 (((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) ∧ 𝑥 ∈ dom 𝐹) → (𝐹𝑥) = ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩)
1716biantrurd 534 . . . . 5 (((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) ∧ 𝑥 ∈ dom 𝐹) → ((((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍) ↔ ((𝐹𝑥) = ⟨((1st𝐹)‘𝑥), ((2nd𝐹)‘𝑥)⟩ ∧ (((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍))))
18 fo1st 7883 . . . . . . . . . . 11 1st :V–onto→V
19 fofun 6719 . . . . . . . . . . 11 (1st :V–onto→V → Fun 1st )
2018, 19ax-mp 5 . . . . . . . . . 10 Fun 1st
21 funco 6503 . . . . . . . . . 10 ((Fun 1st ∧ Fun 𝐹) → Fun (1st𝐹))
2220, 21mpan 688 . . . . . . . . 9 (Fun 𝐹 → Fun (1st𝐹))
2322adantr 482 . . . . . . . 8 ((Fun 𝐹𝑥 ∈ dom 𝐹) → Fun (1st𝐹))
24 ssv 3950 . . . . . . . . . . . 12 (𝐹 “ dom 𝐹) ⊆ V
25 fof 6718 . . . . . . . . . . . . 13 (1st :V–onto→V → 1st :V⟶V)
26 fdm 6639 . . . . . . . . . . . . 13 (1st :V⟶V → dom 1st = V)
2718, 25, 26mp2b 10 . . . . . . . . . . . 12 dom 1st = V
2824, 27sseqtrri 3963 . . . . . . . . . . 11 (𝐹 “ dom 𝐹) ⊆ dom 1st
29 ssid 3948 . . . . . . . . . . . 12 dom 𝐹 ⊆ dom 𝐹
30 funimass3 6963 . . . . . . . . . . . 12 ((Fun 𝐹 ∧ dom 𝐹 ⊆ dom 𝐹) → ((𝐹 “ dom 𝐹) ⊆ dom 1st ↔ dom 𝐹 ⊆ (𝐹 “ dom 1st )))
3129, 30mpan2 689 . . . . . . . . . . 11 (Fun 𝐹 → ((𝐹 “ dom 𝐹) ⊆ dom 1st ↔ dom 𝐹 ⊆ (𝐹 “ dom 1st )))
3228, 31mpbii 232 . . . . . . . . . 10 (Fun 𝐹 → dom 𝐹 ⊆ (𝐹 “ dom 1st ))
3332sselda 3926 . . . . . . . . 9 ((Fun 𝐹𝑥 ∈ dom 𝐹) → 𝑥 ∈ (𝐹 “ dom 1st ))
34 dmco 6172 . . . . . . . . 9 dom (1st𝐹) = (𝐹 “ dom 1st )
3533, 34eleqtrrdi 2848 . . . . . . . 8 ((Fun 𝐹𝑥 ∈ dom 𝐹) → 𝑥 ∈ dom (1st𝐹))
36 fvimacnv 6962 . . . . . . . 8 ((Fun (1st𝐹) ∧ 𝑥 ∈ dom (1st𝐹)) → (((1st𝐹)‘𝑥) ∈ 𝑌𝑥 ∈ ((1st𝐹) “ 𝑌)))
3723, 35, 36syl2anc 585 . . . . . . 7 ((Fun 𝐹𝑥 ∈ dom 𝐹) → (((1st𝐹)‘𝑥) ∈ 𝑌𝑥 ∈ ((1st𝐹) “ 𝑌)))
38 fo2nd 7884 . . . . . . . . . . 11 2nd :V–onto→V
39 fofun 6719 . . . . . . . . . . 11 (2nd :V–onto→V → Fun 2nd )
4038, 39ax-mp 5 . . . . . . . . . 10 Fun 2nd
41 funco 6503 . . . . . . . . . 10 ((Fun 2nd ∧ Fun 𝐹) → Fun (2nd𝐹))
4240, 41mpan 688 . . . . . . . . 9 (Fun 𝐹 → Fun (2nd𝐹))
4342adantr 482 . . . . . . . 8 ((Fun 𝐹𝑥 ∈ dom 𝐹) → Fun (2nd𝐹))
44 fof 6718 . . . . . . . . . . . . 13 (2nd :V–onto→V → 2nd :V⟶V)
45 fdm 6639 . . . . . . . . . . . . 13 (2nd :V⟶V → dom 2nd = V)
4638, 44, 45mp2b 10 . . . . . . . . . . . 12 dom 2nd = V
4724, 46sseqtrri 3963 . . . . . . . . . . 11 (𝐹 “ dom 𝐹) ⊆ dom 2nd
48 funimass3 6963 . . . . . . . . . . . 12 ((Fun 𝐹 ∧ dom 𝐹 ⊆ dom 𝐹) → ((𝐹 “ dom 𝐹) ⊆ dom 2nd ↔ dom 𝐹 ⊆ (𝐹 “ dom 2nd )))
4929, 48mpan2 689 . . . . . . . . . . 11 (Fun 𝐹 → ((𝐹 “ dom 𝐹) ⊆ dom 2nd ↔ dom 𝐹 ⊆ (𝐹 “ dom 2nd )))
5047, 49mpbii 232 . . . . . . . . . 10 (Fun 𝐹 → dom 𝐹 ⊆ (𝐹 “ dom 2nd ))
5150sselda 3926 . . . . . . . . 9 ((Fun 𝐹𝑥 ∈ dom 𝐹) → 𝑥 ∈ (𝐹 “ dom 2nd ))
52 dmco 6172 . . . . . . . . 9 dom (2nd𝐹) = (𝐹 “ dom 2nd )
5351, 52eleqtrrdi 2848 . . . . . . . 8 ((Fun 𝐹𝑥 ∈ dom 𝐹) → 𝑥 ∈ dom (2nd𝐹))
54 fvimacnv 6962 . . . . . . . 8 ((Fun (2nd𝐹) ∧ 𝑥 ∈ dom (2nd𝐹)) → (((2nd𝐹)‘𝑥) ∈ 𝑍𝑥 ∈ ((2nd𝐹) “ 𝑍)))
5543, 53, 54syl2anc 585 . . . . . . 7 ((Fun 𝐹𝑥 ∈ dom 𝐹) → (((2nd𝐹)‘𝑥) ∈ 𝑍𝑥 ∈ ((2nd𝐹) “ 𝑍)))
5637, 55anbi12d 632 . . . . . 6 ((Fun 𝐹𝑥 ∈ dom 𝐹) → ((((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍) ↔ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))))
5756adantlr 713 . . . . 5 (((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) ∧ 𝑥 ∈ dom 𝐹) → ((((1st𝐹)‘𝑥) ∈ 𝑌 ∧ ((2nd𝐹)‘𝑥) ∈ 𝑍) ↔ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))))
5815, 17, 573bitr2d 307 . . . 4 (((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) ∧ 𝑥 ∈ dom 𝐹) → ((𝐹𝑥) ∈ (𝑌 × 𝑍) ↔ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))))
5958rabbidva 3420 . . 3 ((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) → {𝑥 ∈ dom 𝐹 ∣ (𝐹𝑥) ∈ (𝑌 × 𝑍)} = {𝑥 ∈ dom 𝐹 ∣ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))})
604, 59eqtrd 2776 . 2 ((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) → (𝐹 “ (𝑌 × 𝑍)) = {𝑥 ∈ dom 𝐹 ∣ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))})
61 dfin5 3900 . . . 4 (dom 𝐹 ∩ ((1st𝐹) “ 𝑌)) = {𝑥 ∈ dom 𝐹𝑥 ∈ ((1st𝐹) “ 𝑌)}
62 dfin5 3900 . . . 4 (dom 𝐹 ∩ ((2nd𝐹) “ 𝑍)) = {𝑥 ∈ dom 𝐹𝑥 ∈ ((2nd𝐹) “ 𝑍)}
6361, 62ineq12i 4150 . . 3 ((dom 𝐹 ∩ ((1st𝐹) “ 𝑌)) ∩ (dom 𝐹 ∩ ((2nd𝐹) “ 𝑍))) = ({𝑥 ∈ dom 𝐹𝑥 ∈ ((1st𝐹) “ 𝑌)} ∩ {𝑥 ∈ dom 𝐹𝑥 ∈ ((2nd𝐹) “ 𝑍)})
64 cnvimass 5999 . . . . . 6 ((1st𝐹) “ 𝑌) ⊆ dom (1st𝐹)
65 dmcoss 5892 . . . . . 6 dom (1st𝐹) ⊆ dom 𝐹
6664, 65sstri 3935 . . . . 5 ((1st𝐹) “ 𝑌) ⊆ dom 𝐹
67 sseqin2 4155 . . . . 5 (((1st𝐹) “ 𝑌) ⊆ dom 𝐹 ↔ (dom 𝐹 ∩ ((1st𝐹) “ 𝑌)) = ((1st𝐹) “ 𝑌))
6866, 67mpbi 229 . . . 4 (dom 𝐹 ∩ ((1st𝐹) “ 𝑌)) = ((1st𝐹) “ 𝑌)
69 cnvimass 5999 . . . . . 6 ((2nd𝐹) “ 𝑍) ⊆ dom (2nd𝐹)
70 dmcoss 5892 . . . . . 6 dom (2nd𝐹) ⊆ dom 𝐹
7169, 70sstri 3935 . . . . 5 ((2nd𝐹) “ 𝑍) ⊆ dom 𝐹
72 sseqin2 4155 . . . . 5 (((2nd𝐹) “ 𝑍) ⊆ dom 𝐹 ↔ (dom 𝐹 ∩ ((2nd𝐹) “ 𝑍)) = ((2nd𝐹) “ 𝑍))
7371, 72mpbi 229 . . . 4 (dom 𝐹 ∩ ((2nd𝐹) “ 𝑍)) = ((2nd𝐹) “ 𝑍)
7468, 73ineq12i 4150 . . 3 ((dom 𝐹 ∩ ((1st𝐹) “ 𝑌)) ∩ (dom 𝐹 ∩ ((2nd𝐹) “ 𝑍))) = (((1st𝐹) “ 𝑌) ∩ ((2nd𝐹) “ 𝑍))
75 inrab 4246 . . 3 ({𝑥 ∈ dom 𝐹𝑥 ∈ ((1st𝐹) “ 𝑌)} ∩ {𝑥 ∈ dom 𝐹𝑥 ∈ ((2nd𝐹) “ 𝑍)}) = {𝑥 ∈ dom 𝐹 ∣ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))}
7663, 74, 753eqtr3ri 2773 . 2 {𝑥 ∈ dom 𝐹 ∣ (𝑥 ∈ ((1st𝐹) “ 𝑌) ∧ 𝑥 ∈ ((2nd𝐹) “ 𝑍))} = (((1st𝐹) “ 𝑌) ∩ ((2nd𝐹) “ 𝑍))
7760, 76eqtrdi 2792 1 ((Fun 𝐹 ∧ ran 𝐹 ⊆ (V × V)) → (𝐹 “ (𝑌 × 𝑍)) = (((1st𝐹) “ 𝑌) ∩ ((2nd𝐹) “ 𝑍)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 397   = wceq 1539  wcel 2104  {crab 3284  Vcvv 3437  cin 3891  wss 3892  cop 4571   × cxp 5598  ccnv 5599  dom cdm 5600  ran crn 5601  cima 5603  ccom 5604  Fun wfun 6452   Fn wfn 6453  wf 6454  ontowfo 6456  cfv 6458  1st c1st 7861  2nd c2nd 7862
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1911  ax-6 1969  ax-7 2009  ax-8 2106  ax-9 2114  ax-10 2135  ax-11 2152  ax-12 2169  ax-ext 2707  ax-sep 5232  ax-nul 5239  ax-pr 5361  ax-un 7620
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 846  df-3an 1089  df-tru 1542  df-fal 1552  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2887  df-ne 2942  df-ral 3063  df-rex 3072  df-rab 3287  df-v 3439  df-dif 3895  df-un 3897  df-in 3899  df-ss 3909  df-nul 4263  df-if 4466  df-sn 4566  df-pr 4568  df-op 4572  df-uni 4845  df-br 5082  df-opab 5144  df-mpt 5165  df-id 5500  df-xp 5606  df-rel 5607  df-cnv 5608  df-co 5609  df-dm 5610  df-rn 5611  df-res 5612  df-ima 5613  df-iota 6410  df-fun 6460  df-fn 6461  df-f 6462  df-fo 6464  df-fv 6466  df-1st 7863  df-2nd 7864
This theorem is referenced by:  xppreima2  31033
  Copyright terms: Public domain W3C validator