Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  fliftf Structured version   Visualization version   GIF version

Theorem fliftf 6720
 Description: The domain and range of the function 𝐹. (Contributed by Mario Carneiro, 23-Dec-2016.)
Hypotheses
Ref Expression
flift.1 𝐹 = ran (𝑥𝑋 ↦ ⟨𝐴, 𝐵⟩)
flift.2 ((𝜑𝑥𝑋) → 𝐴𝑅)
flift.3 ((𝜑𝑥𝑋) → 𝐵𝑆)
Assertion
Ref Expression
fliftf (𝜑 → (Fun 𝐹𝐹:ran (𝑥𝑋𝐴)⟶𝑆))
Distinct variable groups:   𝑥,𝑅   𝜑,𝑥   𝑥,𝑋   𝑥,𝑆
Allowed substitution hints:   𝐴(𝑥)   𝐵(𝑥)   𝐹(𝑥)

Proof of Theorem fliftf
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 simpr 479 . . . . 5 ((𝜑 ∧ Fun 𝐹) → Fun 𝐹)
2 flift.1 . . . . . . . . . . 11 𝐹 = ran (𝑥𝑋 ↦ ⟨𝐴, 𝐵⟩)
3 flift.2 . . . . . . . . . . 11 ((𝜑𝑥𝑋) → 𝐴𝑅)
4 flift.3 . . . . . . . . . . 11 ((𝜑𝑥𝑋) → 𝐵𝑆)
52, 3, 4fliftel 6714 . . . . . . . . . 10 (𝜑 → (𝑦𝐹𝑧 ↔ ∃𝑥𝑋 (𝑦 = 𝐴𝑧 = 𝐵)))
65exbidv 1991 . . . . . . . . 9 (𝜑 → (∃𝑧 𝑦𝐹𝑧 ↔ ∃𝑧𝑥𝑋 (𝑦 = 𝐴𝑧 = 𝐵)))
76adantr 472 . . . . . . . 8 ((𝜑 ∧ Fun 𝐹) → (∃𝑧 𝑦𝐹𝑧 ↔ ∃𝑧𝑥𝑋 (𝑦 = 𝐴𝑧 = 𝐵)))
8 rexcom4 3357 . . . . . . . . 9 (∃𝑥𝑋𝑧(𝑦 = 𝐴𝑧 = 𝐵) ↔ ∃𝑧𝑥𝑋 (𝑦 = 𝐴𝑧 = 𝐵))
9 elisset 3347 . . . . . . . . . . . . . 14 (𝐵𝑆 → ∃𝑧 𝑧 = 𝐵)
104, 9syl 17 . . . . . . . . . . . . 13 ((𝜑𝑥𝑋) → ∃𝑧 𝑧 = 𝐵)
1110biantrud 529 . . . . . . . . . . . 12 ((𝜑𝑥𝑋) → (𝑦 = 𝐴 ↔ (𝑦 = 𝐴 ∧ ∃𝑧 𝑧 = 𝐵)))
12 19.42v 2022 . . . . . . . . . . . 12 (∃𝑧(𝑦 = 𝐴𝑧 = 𝐵) ↔ (𝑦 = 𝐴 ∧ ∃𝑧 𝑧 = 𝐵))
1311, 12syl6rbbr 279 . . . . . . . . . . 11 ((𝜑𝑥𝑋) → (∃𝑧(𝑦 = 𝐴𝑧 = 𝐵) ↔ 𝑦 = 𝐴))
1413rexbidva 3179 . . . . . . . . . 10 (𝜑 → (∃𝑥𝑋𝑧(𝑦 = 𝐴𝑧 = 𝐵) ↔ ∃𝑥𝑋 𝑦 = 𝐴))
1514adantr 472 . . . . . . . . 9 ((𝜑 ∧ Fun 𝐹) → (∃𝑥𝑋𝑧(𝑦 = 𝐴𝑧 = 𝐵) ↔ ∃𝑥𝑋 𝑦 = 𝐴))
168, 15syl5bbr 274 . . . . . . . 8 ((𝜑 ∧ Fun 𝐹) → (∃𝑧𝑥𝑋 (𝑦 = 𝐴𝑧 = 𝐵) ↔ ∃𝑥𝑋 𝑦 = 𝐴))
177, 16bitrd 268 . . . . . . 7 ((𝜑 ∧ Fun 𝐹) → (∃𝑧 𝑦𝐹𝑧 ↔ ∃𝑥𝑋 𝑦 = 𝐴))
1817abbidv 2871 . . . . . 6 ((𝜑 ∧ Fun 𝐹) → {𝑦 ∣ ∃𝑧 𝑦𝐹𝑧} = {𝑦 ∣ ∃𝑥𝑋 𝑦 = 𝐴})
19 df-dm 5268 . . . . . 6 dom 𝐹 = {𝑦 ∣ ∃𝑧 𝑦𝐹𝑧}
20 eqid 2752 . . . . . . 7 (𝑥𝑋𝐴) = (𝑥𝑋𝐴)
2120rnmpt 5518 . . . . . 6 ran (𝑥𝑋𝐴) = {𝑦 ∣ ∃𝑥𝑋 𝑦 = 𝐴}
2218, 19, 213eqtr4g 2811 . . . . 5 ((𝜑 ∧ Fun 𝐹) → dom 𝐹 = ran (𝑥𝑋𝐴))
23 df-fn 6044 . . . . 5 (𝐹 Fn ran (𝑥𝑋𝐴) ↔ (Fun 𝐹 ∧ dom 𝐹 = ran (𝑥𝑋𝐴)))
241, 22, 23sylanbrc 701 . . . 4 ((𝜑 ∧ Fun 𝐹) → 𝐹 Fn ran (𝑥𝑋𝐴))
252, 3, 4fliftrel 6713 . . . . . . 7 (𝜑𝐹 ⊆ (𝑅 × 𝑆))
2625adantr 472 . . . . . 6 ((𝜑 ∧ Fun 𝐹) → 𝐹 ⊆ (𝑅 × 𝑆))
27 rnss 5501 . . . . . 6 (𝐹 ⊆ (𝑅 × 𝑆) → ran 𝐹 ⊆ ran (𝑅 × 𝑆))
2826, 27syl 17 . . . . 5 ((𝜑 ∧ Fun 𝐹) → ran 𝐹 ⊆ ran (𝑅 × 𝑆))
29 rnxpss 5716 . . . . 5 ran (𝑅 × 𝑆) ⊆ 𝑆
3028, 29syl6ss 3748 . . . 4 ((𝜑 ∧ Fun 𝐹) → ran 𝐹𝑆)
31 df-f 6045 . . . 4 (𝐹:ran (𝑥𝑋𝐴)⟶𝑆 ↔ (𝐹 Fn ran (𝑥𝑋𝐴) ∧ ran 𝐹𝑆))
3224, 30, 31sylanbrc 701 . . 3 ((𝜑 ∧ Fun 𝐹) → 𝐹:ran (𝑥𝑋𝐴)⟶𝑆)
3332ex 449 . 2 (𝜑 → (Fun 𝐹𝐹:ran (𝑥𝑋𝐴)⟶𝑆))
34 ffun 6201 . 2 (𝐹:ran (𝑥𝑋𝐴)⟶𝑆 → Fun 𝐹)
3533, 34impbid1 215 1 (𝜑 → (Fun 𝐹𝐹:ran (𝑥𝑋𝐴)⟶𝑆))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 196   ∧ wa 383   = wceq 1624  ∃wex 1845   ∈ wcel 2131  {cab 2738  ∃wrex 3043   ⊆ wss 3707  ⟨cop 4319   class class class wbr 4796   ↦ cmpt 4873   × cxp 5256  dom cdm 5258  ran crn 5259  Fun wfun 6035   Fn wfn 6036  ⟶wf 6037 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1863  ax-4 1878  ax-5 1980  ax-6 2046  ax-7 2082  ax-9 2140  ax-10 2160  ax-11 2175  ax-12 2188  ax-13 2383  ax-ext 2732  ax-sep 4925  ax-nul 4933  ax-pr 5047 This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1074  df-tru 1627  df-ex 1846  df-nf 1851  df-sb 2039  df-eu 2603  df-mo 2604  df-clab 2739  df-cleq 2745  df-clel 2748  df-nfc 2883  df-ne 2925  df-ral 3047  df-rex 3048  df-rab 3051  df-v 3334  df-sbc 3569  df-dif 3710  df-un 3712  df-in 3714  df-ss 3721  df-nul 4051  df-if 4223  df-sn 4314  df-pr 4316  df-op 4320  df-uni 4581  df-br 4797  df-opab 4857  df-mpt 4874  df-id 5166  df-xp 5264  df-rel 5265  df-cnv 5266  df-co 5267  df-dm 5268  df-rn 5269  df-res 5270  df-ima 5271  df-iota 6004  df-fun 6043  df-fn 6044  df-f 6045  df-fv 6049 This theorem is referenced by:  qliftf  7994  cygznlem2a  20110  pi1xfrf  23045  pi1cof  23051
 Copyright terms: Public domain W3C validator