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

Theorem funopg 6392
Description: A Kuratowski ordered pair of sets is a function only if its components are equal. Compare with funsng 6408. (Contributed by NM, 5-Jun-2008.) (Revised by Mario Carneiro, 26-Apr-2015.) (Avoid depending on this detail.)
Assertion
Ref Expression
funopg ((𝐴𝑉𝐵𝑊 ∧ Fun ⟨𝐴, 𝐵⟩) → 𝐴 = 𝐵)

Proof of Theorem funopg
Dummy variables 𝑢 𝑡 𝑣 𝑤 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 opeq1 4806 . . . . 5 (𝑢 = 𝐴 → ⟨𝑢, 𝑡⟩ = ⟨𝐴, 𝑡⟩)
21funeqd 6380 . . . 4 (𝑢 = 𝐴 → (Fun ⟨𝑢, 𝑡⟩ ↔ Fun ⟨𝐴, 𝑡⟩))
3 eqeq1 2828 . . . 4 (𝑢 = 𝐴 → (𝑢 = 𝑡𝐴 = 𝑡))
42, 3imbi12d 347 . . 3 (𝑢 = 𝐴 → ((Fun ⟨𝑢, 𝑡⟩ → 𝑢 = 𝑡) ↔ (Fun ⟨𝐴, 𝑡⟩ → 𝐴 = 𝑡)))
5 opeq2 4807 . . . . 5 (𝑡 = 𝐵 → ⟨𝐴, 𝑡⟩ = ⟨𝐴, 𝐵⟩)
65funeqd 6380 . . . 4 (𝑡 = 𝐵 → (Fun ⟨𝐴, 𝑡⟩ ↔ Fun ⟨𝐴, 𝐵⟩))
7 eqeq2 2836 . . . 4 (𝑡 = 𝐵 → (𝐴 = 𝑡𝐴 = 𝐵))
86, 7imbi12d 347 . . 3 (𝑡 = 𝐵 → ((Fun ⟨𝐴, 𝑡⟩ → 𝐴 = 𝑡) ↔ (Fun ⟨𝐴, 𝐵⟩ → 𝐴 = 𝐵)))
9 funrel 6375 . . . . 5 (Fun ⟨𝑢, 𝑡⟩ → Rel ⟨𝑢, 𝑡⟩)
10 vex 3500 . . . . . 6 𝑢 ∈ V
11 vex 3500 . . . . . 6 𝑡 ∈ V
1210, 11relop 5724 . . . . 5 (Rel ⟨𝑢, 𝑡⟩ ↔ ∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
139, 12sylib 220 . . . 4 (Fun ⟨𝑢, 𝑡⟩ → ∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
1410, 11opth 5371 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = ⟨{𝑥}, {𝑥, 𝑦}⟩ ↔ (𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
15 vex 3500 . . . . . . . . . . . 12 𝑥 ∈ V
1615opid 4826 . . . . . . . . . . 11 𝑥, 𝑥⟩ = {{𝑥}}
1716preq1i 4675 . . . . . . . . . 10 {⟨𝑥, 𝑥⟩, {{𝑥}, {𝑥, 𝑦}}} = {{{𝑥}}, {{𝑥}, {𝑥, 𝑦}}}
18 vex 3500 . . . . . . . . . . . 12 𝑦 ∈ V
1915, 18dfop 4805 . . . . . . . . . . 11 𝑥, 𝑦⟩ = {{𝑥}, {𝑥, 𝑦}}
2019preq2i 4676 . . . . . . . . . 10 {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} = {⟨𝑥, 𝑥⟩, {{𝑥}, {𝑥, 𝑦}}}
21 snex 5335 . . . . . . . . . . 11 {𝑥} ∈ V
22 zfpair2 5334 . . . . . . . . . . 11 {𝑥, 𝑦} ∈ V
2321, 22dfop 4805 . . . . . . . . . 10 ⟨{𝑥}, {𝑥, 𝑦}⟩ = {{{𝑥}}, {{𝑥}, {𝑥, 𝑦}}}
2417, 20, 233eqtr4ri 2858 . . . . . . . . 9 ⟨{𝑥}, {𝑥, 𝑦}⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
2524eqeq2i 2837 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = ⟨{𝑥}, {𝑥, 𝑦}⟩ ↔ ⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩})
2614, 25bitr3i 279 . . . . . . 7 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) ↔ ⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩})
27 dffun4 6370 . . . . . . . . 9 (Fun ⟨𝑢, 𝑡⟩ ↔ (Rel ⟨𝑢, 𝑡⟩ ∧ ∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣)))
2827simprbi 499 . . . . . . . 8 (Fun ⟨𝑢, 𝑡⟩ → ∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣))
29 opex 5359 . . . . . . . . . . 11 𝑥, 𝑥⟩ ∈ V
3029prid1 4701 . . . . . . . . . 10 𝑥, 𝑥⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
31 eleq2 2904 . . . . . . . . . 10 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑥⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}))
3230, 31mpbiri 260 . . . . . . . . 9 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → ⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩)
33 opex 5359 . . . . . . . . . . 11 𝑥, 𝑦⟩ ∈ V
3433prid2 4702 . . . . . . . . . 10 𝑥, 𝑦⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
35 eleq2 2904 . . . . . . . . . 10 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑦⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}))
3634, 35mpbiri 260 . . . . . . . . 9 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩)
3732, 36jca 514 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩))
38 opeq12 4808 . . . . . . . . . . . . . 14 ((𝑧 = 𝑥𝑤 = 𝑥) → ⟨𝑧, 𝑤⟩ = ⟨𝑥, 𝑥⟩)
39383adant3 1128 . . . . . . . . . . . . 13 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑤⟩ = ⟨𝑥, 𝑥⟩)
4039eleq1d 2900 . . . . . . . . . . . 12 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩))
41 opeq12 4808 . . . . . . . . . . . . . 14 ((𝑧 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑣⟩ = ⟨𝑥, 𝑦⟩)
42413adant2 1127 . . . . . . . . . . . . 13 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑣⟩ = ⟨𝑥, 𝑦⟩)
4342eleq1d 2900 . . . . . . . . . . . 12 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩))
4440, 43anbi12d 632 . . . . . . . . . . 11 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) ↔ (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩)))
45 eqeq12 2838 . . . . . . . . . . . 12 ((𝑤 = 𝑥𝑣 = 𝑦) → (𝑤 = 𝑣𝑥 = 𝑦))
46453adant1 1126 . . . . . . . . . . 11 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (𝑤 = 𝑣𝑥 = 𝑦))
4744, 46imbi12d 347 . . . . . . . . . 10 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) ↔ ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦)))
4847spc3gv 3608 . . . . . . . . 9 ((𝑥 ∈ V ∧ 𝑥 ∈ V ∧ 𝑦 ∈ V) → (∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) → ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦)))
4915, 15, 18, 48mp3an 1457 . . . . . . . 8 (∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) → ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦))
5028, 37, 49syl2im 40 . . . . . . 7 (Fun ⟨𝑢, 𝑡⟩ → (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → 𝑥 = 𝑦))
5126, 50syl5bi 244 . . . . . 6 (Fun ⟨𝑢, 𝑡⟩ → ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑥 = 𝑦))
52 dfsn2 4583 . . . . . . . . . . 11 {𝑥} = {𝑥, 𝑥}
53 preq2 4673 . . . . . . . . . . 11 (𝑥 = 𝑦 → {𝑥, 𝑥} = {𝑥, 𝑦})
5452, 53syl5req 2872 . . . . . . . . . 10 (𝑥 = 𝑦 → {𝑥, 𝑦} = {𝑥})
5554eqeq2d 2835 . . . . . . . . 9 (𝑥 = 𝑦 → (𝑡 = {𝑥, 𝑦} ↔ 𝑡 = {𝑥}))
56 eqtr3 2846 . . . . . . . . . 10 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥}) → 𝑢 = 𝑡)
5756expcom 416 . . . . . . . . 9 (𝑡 = {𝑥} → (𝑢 = {𝑥} → 𝑢 = 𝑡))
5855, 57syl6bi 255 . . . . . . . 8 (𝑥 = 𝑦 → (𝑡 = {𝑥, 𝑦} → (𝑢 = {𝑥} → 𝑢 = 𝑡)))
5958com13 88 . . . . . . 7 (𝑢 = {𝑥} → (𝑡 = {𝑥, 𝑦} → (𝑥 = 𝑦𝑢 = 𝑡)))
6059imp 409 . . . . . 6 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → (𝑥 = 𝑦𝑢 = 𝑡))
6151, 60sylcom 30 . . . . 5 (Fun ⟨𝑢, 𝑡⟩ → ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑢 = 𝑡))
6261exlimdvv 1934 . . . 4 (Fun ⟨𝑢, 𝑡⟩ → (∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑢 = 𝑡))
6313, 62mpd 15 . . 3 (Fun ⟨𝑢, 𝑡⟩ → 𝑢 = 𝑡)
644, 8, 63vtocl2g 3575 . 2 ((𝐴𝑉𝐵𝑊) → (Fun ⟨𝐴, 𝐵⟩ → 𝐴 = 𝐵))
65643impia 1113 1 ((𝐴𝑉𝐵𝑊 ∧ Fun ⟨𝐴, 𝐵⟩) → 𝐴 = 𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  w3a 1083  wal 1534   = wceq 1536  wex 1779  wcel 2113  Vcvv 3497  {csn 4570  {cpr 4572  cop 4576  Rel wrel 5563  Fun wfun 6352
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 1910  ax-6 1969  ax-7 2014  ax-8 2115  ax-9 2123  ax-10 2144  ax-11 2160  ax-12 2176  ax-ext 2796  ax-sep 5206  ax-nul 5213  ax-pr 5333
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3an 1085  df-tru 1539  df-ex 1780  df-nf 1784  df-sb 2069  df-mo 2621  df-eu 2653  df-clab 2803  df-cleq 2817  df-clel 2896  df-nfc 2966  df-ne 3020  df-ral 3146  df-rab 3150  df-v 3499  df-dif 3942  df-un 3944  df-in 3946  df-ss 3955  df-nul 4295  df-if 4471  df-sn 4571  df-pr 4573  df-op 4577  df-br 5070  df-opab 5132  df-id 5463  df-xp 5564  df-rel 5565  df-cnv 5566  df-co 5567  df-fun 6360
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator