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

Theorem funopg 5836
Description: A Kuratowski ordered pair is a function only if its components are equal. (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 4340 . . . . 5 (𝑢 = 𝐴 → ⟨𝑢, 𝑡⟩ = ⟨𝐴, 𝑡⟩)
21funeqd 5825 . . . 4 (𝑢 = 𝐴 → (Fun ⟨𝑢, 𝑡⟩ ↔ Fun ⟨𝐴, 𝑡⟩))
3 eqeq1 2614 . . . 4 (𝑢 = 𝐴 → (𝑢 = 𝑡𝐴 = 𝑡))
42, 3imbi12d 333 . . 3 (𝑢 = 𝐴 → ((Fun ⟨𝑢, 𝑡⟩ → 𝑢 = 𝑡) ↔ (Fun ⟨𝐴, 𝑡⟩ → 𝐴 = 𝑡)))
5 opeq2 4341 . . . . 5 (𝑡 = 𝐵 → ⟨𝐴, 𝑡⟩ = ⟨𝐴, 𝐵⟩)
65funeqd 5825 . . . 4 (𝑡 = 𝐵 → (Fun ⟨𝐴, 𝑡⟩ ↔ Fun ⟨𝐴, 𝐵⟩))
7 eqeq2 2621 . . . 4 (𝑡 = 𝐵 → (𝐴 = 𝑡𝐴 = 𝐵))
86, 7imbi12d 333 . . 3 (𝑡 = 𝐵 → ((Fun ⟨𝐴, 𝑡⟩ → 𝐴 = 𝑡) ↔ (Fun ⟨𝐴, 𝐵⟩ → 𝐴 = 𝐵)))
9 funrel 5821 . . . . 5 (Fun ⟨𝑢, 𝑡⟩ → Rel ⟨𝑢, 𝑡⟩)
10 vex 3176 . . . . . 6 𝑢 ∈ V
11 vex 3176 . . . . . 6 𝑡 ∈ V
1210, 11relop 5194 . . . . 5 (Rel ⟨𝑢, 𝑡⟩ ↔ ∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
139, 12sylib 207 . . . 4 (Fun ⟨𝑢, 𝑡⟩ → ∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
1410, 11opth 4871 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = ⟨{𝑥}, {𝑥, 𝑦}⟩ ↔ (𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}))
15 vex 3176 . . . . . . . . . . . 12 𝑥 ∈ V
1615opid 4359 . . . . . . . . . . 11 𝑥, 𝑥⟩ = {{𝑥}}
1716preq1i 4215 . . . . . . . . . 10 {⟨𝑥, 𝑥⟩, {{𝑥}, {𝑥, 𝑦}}} = {{{𝑥}}, {{𝑥}, {𝑥, 𝑦}}}
18 vex 3176 . . . . . . . . . . . 12 𝑦 ∈ V
1915, 18dfop 4339 . . . . . . . . . . 11 𝑥, 𝑦⟩ = {{𝑥}, {𝑥, 𝑦}}
2019preq2i 4216 . . . . . . . . . 10 {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} = {⟨𝑥, 𝑥⟩, {{𝑥}, {𝑥, 𝑦}}}
21 snex 4835 . . . . . . . . . . 11 {𝑥} ∈ V
22 zfpair2 4834 . . . . . . . . . . 11 {𝑥, 𝑦} ∈ V
2321, 22dfop 4339 . . . . . . . . . 10 ⟨{𝑥}, {𝑥, 𝑦}⟩ = {{{𝑥}}, {{𝑥}, {𝑥, 𝑦}}}
2417, 20, 233eqtr4ri 2643 . . . . . . . . 9 ⟨{𝑥}, {𝑥, 𝑦}⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
2524eqeq2i 2622 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = ⟨{𝑥}, {𝑥, 𝑦}⟩ ↔ ⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩})
2614, 25bitr3i 265 . . . . . . 7 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) ↔ ⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩})
27 dffun4 5816 . . . . . . . . 9 (Fun ⟨𝑢, 𝑡⟩ ↔ (Rel ⟨𝑢, 𝑡⟩ ∧ ∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣)))
2827simprbi 479 . . . . . . . 8 (Fun ⟨𝑢, 𝑡⟩ → ∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣))
29 opex 4859 . . . . . . . . . . 11 𝑥, 𝑥⟩ ∈ V
3029prid1 4241 . . . . . . . . . 10 𝑥, 𝑥⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
31 eleq2 2677 . . . . . . . . . 10 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑥⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}))
3230, 31mpbiri 247 . . . . . . . . 9 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → ⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩)
33 opex 4859 . . . . . . . . . . 11 𝑥, 𝑦⟩ ∈ V
3433prid2 4242 . . . . . . . . . 10 𝑥, 𝑦⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}
35 eleq2 2677 . . . . . . . . . 10 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑦⟩ ∈ {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩}))
3634, 35mpbiri 247 . . . . . . . . 9 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩)
3732, 36jca 553 . . . . . . . 8 (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩))
38 opeq12 4342 . . . . . . . . . . . . . 14 ((𝑧 = 𝑥𝑤 = 𝑥) → ⟨𝑧, 𝑤⟩ = ⟨𝑥, 𝑥⟩)
39383adant3 1074 . . . . . . . . . . . . 13 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑤⟩ = ⟨𝑥, 𝑥⟩)
4039eleq1d 2672 . . . . . . . . . . . 12 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩))
41 opeq12 4342 . . . . . . . . . . . . . 14 ((𝑧 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑣⟩ = ⟨𝑥, 𝑦⟩)
42413adant2 1073 . . . . . . . . . . . . 13 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ⟨𝑧, 𝑣⟩ = ⟨𝑥, 𝑦⟩)
4342eleq1d 2672 . . . . . . . . . . . 12 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩ ↔ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩))
4440, 43anbi12d 743 . . . . . . . . . . 11 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → ((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) ↔ (⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩)))
45 eqeq12 2623 . . . . . . . . . . . 12 ((𝑤 = 𝑥𝑣 = 𝑦) → (𝑤 = 𝑣𝑥 = 𝑦))
46453adant1 1072 . . . . . . . . . . 11 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (𝑤 = 𝑣𝑥 = 𝑦))
4744, 46imbi12d 333 . . . . . . . . . 10 ((𝑧 = 𝑥𝑤 = 𝑥𝑣 = 𝑦) → (((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) ↔ ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦)))
4847spc3gv 3271 . . . . . . . . 9 ((𝑥 ∈ V ∧ 𝑥 ∈ V ∧ 𝑦 ∈ V) → (∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) → ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦)))
4915, 15, 18, 48mp3an 1416 . . . . . . . 8 (∀𝑧𝑤𝑣((⟨𝑧, 𝑤⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑧, 𝑣⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑤 = 𝑣) → ((⟨𝑥, 𝑥⟩ ∈ ⟨𝑢, 𝑡⟩ ∧ ⟨𝑥, 𝑦⟩ ∈ ⟨𝑢, 𝑡⟩) → 𝑥 = 𝑦))
5028, 37, 49syl2im 39 . . . . . . 7 (Fun ⟨𝑢, 𝑡⟩ → (⟨𝑢, 𝑡⟩ = {⟨𝑥, 𝑥⟩, ⟨𝑥, 𝑦⟩} → 𝑥 = 𝑦))
5126, 50syl5bi 231 . . . . . 6 (Fun ⟨𝑢, 𝑡⟩ → ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑥 = 𝑦))
52 dfsn2 4138 . . . . . . . . . . 11 {𝑥} = {𝑥, 𝑥}
53 preq2 4213 . . . . . . . . . . 11 (𝑥 = 𝑦 → {𝑥, 𝑥} = {𝑥, 𝑦})
5452, 53syl5req 2657 . . . . . . . . . 10 (𝑥 = 𝑦 → {𝑥, 𝑦} = {𝑥})
5554eqeq2d 2620 . . . . . . . . 9 (𝑥 = 𝑦 → (𝑡 = {𝑥, 𝑦} ↔ 𝑡 = {𝑥}))
56 eqtr3 2631 . . . . . . . . . 10 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥}) → 𝑢 = 𝑡)
5756expcom 450 . . . . . . . . 9 (𝑡 = {𝑥} → (𝑢 = {𝑥} → 𝑢 = 𝑡))
5855, 57syl6bi 242 . . . . . . . 8 (𝑥 = 𝑦 → (𝑡 = {𝑥, 𝑦} → (𝑢 = {𝑥} → 𝑢 = 𝑡)))
5958com13 86 . . . . . . 7 (𝑢 = {𝑥} → (𝑡 = {𝑥, 𝑦} → (𝑥 = 𝑦𝑢 = 𝑡)))
6059imp 444 . . . . . 6 ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → (𝑥 = 𝑦𝑢 = 𝑡))
6151, 60sylcom 30 . . . . 5 (Fun ⟨𝑢, 𝑡⟩ → ((𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑢 = 𝑡))
6261exlimdvv 1849 . . . 4 (Fun ⟨𝑢, 𝑡⟩ → (∃𝑥𝑦(𝑢 = {𝑥} ∧ 𝑡 = {𝑥, 𝑦}) → 𝑢 = 𝑡))
6313, 62mpd 15 . . 3 (Fun ⟨𝑢, 𝑡⟩ → 𝑢 = 𝑡)
644, 8, 63vtocl2g 3243 . 2 ((𝐴𝑉𝐵𝑊) → (Fun ⟨𝐴, 𝐵⟩ → 𝐴 = 𝐵))
65643impia 1253 1 ((𝐴𝑉𝐵𝑊 ∧ Fun ⟨𝐴, 𝐵⟩) → 𝐴 = 𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383  w3a 1031  wal 1473   = wceq 1475  wex 1695  wcel 1977  Vcvv 3173  {csn 4125  {cpr 4127  cop 4131  Rel wrel 5043  Fun wfun 5798
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pr 4833
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ral 2901  df-rab 2905  df-v 3175  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-br 4584  df-opab 4644  df-id 4953  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-fun 5806
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator