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

Theorem funopg 6468
Description: A Kuratowski ordered pair of sets is a function only if its components are equal. (Contributed by NM, 5-Jun-2008.) (Revised by Mario Carneiro, 26-Apr-2015.) A function is a class of ordered pairs, so the fact that an ordered pair may sometimes be itself a function is an "accident" depending on the specific encoding of ordered pairs as classes (in set.mm, the Kuratowski encoding). A more meaningful statement is funsng 6485, as relsnopg 5713 is to relop 5759. (New usage is discouraged.)
Assertion
Ref Expression
funopg ((𝐴𝑉𝐵𝑊 ∧ Fun ⟨𝐴, 𝐵⟩) → 𝐴 = 𝐵)

Proof of Theorem funopg
Dummy variables 𝑢 𝑡 𝑣 𝑤 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 opeq1 4804 . . . . 5 (𝑢 = 𝐴 → ⟨𝑢, 𝑡⟩ = ⟨𝐴, 𝑡⟩)
21funeqd 6456 . . . 4 (𝑢 = 𝐴 → (Fun ⟨𝑢, 𝑡⟩ ↔ Fun ⟨𝐴, 𝑡⟩))
3 eqeq1 2742 . . . 4 (𝑢 = 𝐴 → (𝑢 = 𝑡𝐴 = 𝑡))
42, 3imbi12d 345 . . 3 (𝑢 = 𝐴 → ((Fun ⟨𝑢, 𝑡⟩ → 𝑢 = 𝑡) ↔ (Fun ⟨𝐴, 𝑡⟩ → 𝐴 = 𝑡)))
5 opeq2 4805 . . . . 5 (𝑡 = 𝐵 → ⟨𝐴, 𝑡⟩ = ⟨𝐴, 𝐵⟩)
65funeqd 6456 . . . 4 (𝑡 = 𝐵 → (Fun ⟨𝐴, 𝑡⟩ ↔ Fun ⟨𝐴, 𝐵⟩))
7 eqeq2 2750 . . . 4 (𝑡 = 𝐵 → (𝐴 = 𝑡𝐴 = 𝐵))
86, 7imbi12d 345 . . 3 (𝑡 = 𝐵 → ((Fun ⟨𝐴, 𝑡⟩ → 𝐴 = 𝑡) ↔ (Fun ⟨𝐴, 𝐵⟩ → 𝐴 = 𝐵)))
9 funrel 6451 . . . . 5 (Fun ⟨𝑢, 𝑡⟩ → Rel ⟨𝑢, 𝑡⟩)
10 vex 3436 . . . . . 6 𝑢 ∈ V
11 vex 3436 . . . . . 6 𝑡 ∈ V
1210, 11relop 5759 . . . . 5 (Rel ⟨𝑢, 𝑡⟩ ↔ ∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
139, 12sylib 217 . . . 4 (Fun ⟨𝑢, 𝑡⟩ → ∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
1410, 11opth 5391 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = ⟨{𝑥}, {𝑥, 𝑦}⟩ ↔ (𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
15 vex 3436 . . . . . . . . . . . 12 𝑥 ∈ V
1615opid 4824 . . . . . . . . . . 11 𝑥, 𝑥⟩ = {{𝑥}}
1716preq1i 4672 . . . . . . . . . 10 {⟨𝑥, 𝑥⟩, {{𝑥}, {𝑥, 𝑦}}} = {{{𝑥}}, {{𝑥}, {𝑥, 𝑦}}}
18 vex 3436 . . . . . . . . . . . 12 𝑦 ∈ V
1915, 18dfop 4803 . . . . . . . . . . 11 𝑥, 𝑦⟩ = {{𝑥}, {𝑥, 𝑦}}
2019preq2i 4673 . . . . . . . . . 10 {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} = {⟨𝑥, 𝑥⟩, {{𝑥}, {𝑥, 𝑦}}}
21 snex 5354 . . . . . . . . . . 11 {𝑥} ∈ V
22 zfpair2 5353 . . . . . . . . . . 11 {𝑥, 𝑦} ∈ V
2321, 22dfop 4803 . . . . . . . . . 10 ⟨{𝑥}, {𝑥, 𝑦}⟩ = {{{𝑥}}, {{𝑥}, {𝑥, 𝑦}}}
2417, 20, 233eqtr4ri 2777 . . . . . . . . 9 ⟨{𝑥}, {𝑥, 𝑦}⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
2524eqeq2i 2751 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = ⟨{𝑥}, {𝑥, 𝑦}⟩ ↔ ⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩})
2614, 25bitr3i 276 . . . . . . 7 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) ↔ ⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩})
27 dffun4 6446 . . . . . . . . 9 (Fun ⟨𝑢, 𝑡⟩ ↔ (Rel ⟨𝑢, 𝑡⟩ ∧ ∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣)))
2827simprbi 497 . . . . . . . 8 (Fun ⟨𝑢, 𝑡⟩ → ∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣))
29 opex 5379 . . . . . . . . . . 11 𝑥, 𝑥⟩ ∈ V
3029prid1 4698 . . . . . . . . . 10 𝑥, 𝑥⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
31 eleq2 2827 . . . . . . . . . 10 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑥⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}))
3230, 31mpbiri 257 . . . . . . . . 9 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → ⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩)
33 opex 5379 . . . . . . . . . . 11 𝑥, 𝑦⟩ ∈ V
3433prid2 4699 . . . . . . . . . 10 𝑥, 𝑦⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
35 eleq2 2827 . . . . . . . . . 10 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑦⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}))
3634, 35mpbiri 257 . . . . . . . . 9 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩)
3732, 36jca 512 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩))
38 opeq12 4806 . . . . . . . . . . . . . 14 ((𝑧 = 𝑥𝑤 = 𝑥) → ⟨𝑧, 𝑤⟩ = ⟨𝑥, 𝑥⟩)
39383adant3 1131 . . . . . . . . . . . . 13 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑤⟩ = ⟨𝑥, 𝑥⟩)
4039eleq1d 2823 . . . . . . . . . . . 12 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩))
41 opeq12 4806 . . . . . . . . . . . . . 14 ((𝑧 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑣⟩ = ⟨𝑥, 𝑦⟩)
42413adant2 1130 . . . . . . . . . . . . 13 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑣⟩ = ⟨𝑥, 𝑦⟩)
4342eleq1d 2823 . . . . . . . . . . . 12 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩))
4440, 43anbi12d 631 . . . . . . . . . . 11 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) ↔ (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩)))
45 eqeq12 2755 . . . . . . . . . . . 12 ((𝑤 = 𝑥𝑣 = 𝑦) → (𝑤 = 𝑣𝑥 = 𝑦))
46453adant1 1129 . . . . . . . . . . 11 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (𝑤 = 𝑣𝑥 = 𝑦))
4744, 46imbi12d 345 . . . . . . . . . 10 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) ↔ ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦)))
4847spc3gv 3543 . . . . . . . . 9 ((𝑥 ∈ V ∧ 𝑥 ∈ V ∧ 𝑦 ∈ V) → (∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) → ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦)))
4915, 15, 18, 48mp3an 1460 . . . . . . . 8 (∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) → ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦))
5028, 37, 49syl2im 40 . . . . . . 7 (Fun ⟨𝑢, 𝑡⟩ → (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → 𝑥 = 𝑦))
5126, 50syl5bi 241 . . . . . 6 (Fun ⟨𝑢, 𝑡⟩ → ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑥 = 𝑦))
52 dfsn2 4574 . . . . . . . . . . 11 {𝑥} = {𝑥, 𝑥}
53 preq2 4670 . . . . . . . . . . 11 (𝑥 = 𝑦 → {𝑥, 𝑥} = {𝑥, 𝑦})
5452, 53eqtr2id 2791 . . . . . . . . . 10 (𝑥 = 𝑦 → {𝑥, 𝑦} = {𝑥})
5554eqeq2d 2749 . . . . . . . . 9 (𝑥 = 𝑦 → (𝑡 = {𝑥, 𝑦} ↔ 𝑡 = {𝑥}))
56 eqtr3 2764 . . . . . . . . . 10 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥}) → 𝑢 = 𝑡)
5756expcom 414 . . . . . . . . 9 (𝑡 = {𝑥} → (𝑢 = {𝑥} → 𝑢 = 𝑡))
5855, 57syl6bi 252 . . . . . . . 8 (𝑥 = 𝑦 → (𝑡 = {𝑥, 𝑦} → (𝑢 = {𝑥} → 𝑢 = 𝑡)))
5958com13 88 . . . . . . 7 (𝑢 = {𝑥} → (𝑡 = {𝑥, 𝑦} → (𝑥 = 𝑦𝑢 = 𝑡)))
6059imp 407 . . . . . 6 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → (𝑥 = 𝑦𝑢 = 𝑡))
6151, 60sylcom 30 . . . . 5 (Fun ⟨𝑢, 𝑡⟩ → ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑢 = 𝑡))
6261exlimdvv 1937 . . . 4 (Fun ⟨𝑢, 𝑡⟩ → (∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑢 = 𝑡))
6313, 62mpd 15 . . 3 (Fun ⟨𝑢, 𝑡⟩ → 𝑢 = 𝑡)
644, 8, 63vtocl2g 3510 . 2 ((𝐴𝑉𝐵𝑊) → (Fun ⟨𝐴, 𝐵⟩ → 𝐴 = 𝐵))
65643impia 1116 1 ((𝐴𝑉𝐵𝑊 ∧ Fun ⟨𝐴, 𝐵⟩) → 𝐴 = 𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  w3a 1086  wal 1537   = wceq 1539  wex 1782  wcel 2106  Vcvv 3432  {csn 4561  {cpr 4563  cop 4567  Rel wrel 5594  Fun wfun 6427
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-11 2154  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-sb 2068  df-clab 2716  df-cleq 2730  df-clel 2816  df-ne 2944  df-ral 3069  df-rex 3070  df-rab 3073  df-v 3434  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-br 5075  df-opab 5137  df-id 5489  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-fun 6435
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator