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

Theorem fconst5 7081
Description: Two ways to express that a function is constant. (Contributed by NM, 27-Nov-2007.)
Assertion
Ref Expression
fconst5 ((𝐹 Fn 𝐴𝐴 ≠ ∅) → (𝐹 = (𝐴 × {𝐵}) ↔ ran 𝐹 = {𝐵}))

Proof of Theorem fconst5
StepHypRef Expression
1 rneq 5845 . . . 4 (𝐹 = (𝐴 × {𝐵}) → ran 𝐹 = ran (𝐴 × {𝐵}))
2 rnxp 6073 . . . . 5 (𝐴 ≠ ∅ → ran (𝐴 × {𝐵}) = {𝐵})
32eqeq2d 2749 . . . 4 (𝐴 ≠ ∅ → (ran 𝐹 = ran (𝐴 × {𝐵}) ↔ ran 𝐹 = {𝐵}))
41, 3syl5ib 243 . . 3 (𝐴 ≠ ∅ → (𝐹 = (𝐴 × {𝐵}) → ran 𝐹 = {𝐵}))
54adantl 482 . 2 ((𝐹 Fn 𝐴𝐴 ≠ ∅) → (𝐹 = (𝐴 × {𝐵}) → ran 𝐹 = {𝐵}))
6 df-fo 6439 . . . . . . 7 (𝐹:𝐴onto→{𝐵} ↔ (𝐹 Fn 𝐴 ∧ ran 𝐹 = {𝐵}))
7 fof 6688 . . . . . . 7 (𝐹:𝐴onto→{𝐵} → 𝐹:𝐴⟶{𝐵})
86, 7sylbir 234 . . . . . 6 ((𝐹 Fn 𝐴 ∧ ran 𝐹 = {𝐵}) → 𝐹:𝐴⟶{𝐵})
9 fconst2g 7078 . . . . . 6 (𝐵 ∈ V → (𝐹:𝐴⟶{𝐵} ↔ 𝐹 = (𝐴 × {𝐵})))
108, 9syl5ib 243 . . . . 5 (𝐵 ∈ V → ((𝐹 Fn 𝐴 ∧ ran 𝐹 = {𝐵}) → 𝐹 = (𝐴 × {𝐵})))
1110expd 416 . . . 4 (𝐵 ∈ V → (𝐹 Fn 𝐴 → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵}))))
1211adantrd 492 . . 3 (𝐵 ∈ V → ((𝐹 Fn 𝐴𝐴 ≠ ∅) → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵}))))
13 fnrel 6535 . . . . 5 (𝐹 Fn 𝐴 → Rel 𝐹)
14 snprc 4653 . . . . . 6 𝐵 ∈ V ↔ {𝐵} = ∅)
15 relrn0 5878 . . . . . . . . . 10 (Rel 𝐹 → (𝐹 = ∅ ↔ ran 𝐹 = ∅))
1615biimprd 247 . . . . . . . . 9 (Rel 𝐹 → (ran 𝐹 = ∅ → 𝐹 = ∅))
1716adantl 482 . . . . . . . 8 (({𝐵} = ∅ ∧ Rel 𝐹) → (ran 𝐹 = ∅ → 𝐹 = ∅))
18 eqeq2 2750 . . . . . . . . 9 ({𝐵} = ∅ → (ran 𝐹 = {𝐵} ↔ ran 𝐹 = ∅))
1918adantr 481 . . . . . . . 8 (({𝐵} = ∅ ∧ Rel 𝐹) → (ran 𝐹 = {𝐵} ↔ ran 𝐹 = ∅))
20 xpeq2 5610 . . . . . . . . . . 11 ({𝐵} = ∅ → (𝐴 × {𝐵}) = (𝐴 × ∅))
21 xp0 6061 . . . . . . . . . . 11 (𝐴 × ∅) = ∅
2220, 21eqtrdi 2794 . . . . . . . . . 10 ({𝐵} = ∅ → (𝐴 × {𝐵}) = ∅)
2322eqeq2d 2749 . . . . . . . . 9 ({𝐵} = ∅ → (𝐹 = (𝐴 × {𝐵}) ↔ 𝐹 = ∅))
2423adantr 481 . . . . . . . 8 (({𝐵} = ∅ ∧ Rel 𝐹) → (𝐹 = (𝐴 × {𝐵}) ↔ 𝐹 = ∅))
2517, 19, 243imtr4d 294 . . . . . . 7 (({𝐵} = ∅ ∧ Rel 𝐹) → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵})))
2625ex 413 . . . . . 6 ({𝐵} = ∅ → (Rel 𝐹 → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵}))))
2714, 26sylbi 216 . . . . 5 𝐵 ∈ V → (Rel 𝐹 → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵}))))
2813, 27syl5 34 . . . 4 𝐵 ∈ V → (𝐹 Fn 𝐴 → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵}))))
2928adantrd 492 . . 3 𝐵 ∈ V → ((𝐹 Fn 𝐴𝐴 ≠ ∅) → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵}))))
3012, 29pm2.61i 182 . 2 ((𝐹 Fn 𝐴𝐴 ≠ ∅) → (ran 𝐹 = {𝐵} → 𝐹 = (𝐴 × {𝐵})))
315, 30impbid 211 1 ((𝐹 Fn 𝐴𝐴 ≠ ∅) → (𝐹 = (𝐴 × {𝐵}) ↔ ran 𝐹 = {𝐵}))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 205  wa 396   = wceq 1539  wcel 2106  wne 2943  Vcvv 3432  c0 4256  {csn 4561   × cxp 5587  ran crn 5590  Rel wrel 5594   Fn wfn 6428  wf 6429  ontowfo 6431
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2709  ax-sep 5223  ax-nul 5230  ax-pr 5352
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2068  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2816  df-nfc 2889  df-ne 2944  df-ral 3069  df-rex 3070  df-rab 3073  df-v 3434  df-sbc 3717  df-csb 3833  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-nul 4257  df-if 4460  df-sn 4562  df-pr 4564  df-op 4568  df-uni 4840  df-br 5075  df-opab 5137  df-mpt 5158  df-id 5489  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-dm 5599  df-rn 5600  df-res 5601  df-ima 5602  df-iota 6391  df-fun 6435  df-fn 6436  df-f 6437  df-fo 6439  df-fv 6441
This theorem is referenced by:  rnmptcOLD  7083  nvo00  29123  zar0ring  31828  esumnul  32016  esum0  32017  volsupnfl  35822
  Copyright terms: Public domain W3C validator