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

Theorem hashprg 14566
Description: The size of an unordered pair. (Contributed by Mario Carneiro, 27-Sep-2013.) (Revised by Mario Carneiro, 5-May-2016.) (Revised by AV, 18-Sep-2021.)
Assertion
Ref Expression
hashprg ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 ≠ 𝐵 ↔ (♯‘{𝐴, 𝐵}) = 2))

Proof of Theorem hashprg
StepHypRef Expression
1 simpr 490 . . . . 5 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → 𝐵 ∈ 𝑊)
2 elsni 4601 . . . . . . 7 (𝐵 ∈ {𝐴} → 𝐵 = 𝐴)
32eqcomd 2769 . . . . . 6 (𝐵 ∈ {𝐴} → 𝐴 = 𝐵)
43necon3ai 2984 . . . . 5 (𝐴 ≠ 𝐵 → ¬ 𝐵 ∈ {𝐴})
5 snfi 9099 . . . . . 6 {𝐴} ∈ Fin
6 hashunsng 14563 . . . . . . 7 (𝐵 ∈ 𝑊 → (({𝐴} ∈ Fin ∧ ¬ 𝐵 ∈ {𝐴}) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1)))
76imp 412 . . . . . 6 ((𝐵 ∈ 𝑊 ∧ ({𝐴} ∈ Fin ∧ ¬ 𝐵 ∈ {𝐴})) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))
85, 7mpanr1 716 . . . . 5 ((𝐵 ∈ 𝑊 ∧ ¬ 𝐵 ∈ {𝐴}) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))
91, 4, 8syl2an 608 . . . 4 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))
10 hashsng 14540 . . . . . . 7 (𝐴 ∈ 𝑉 → (♯‘{𝐴}) = 1)
1110adantr 486 . . . . . 6 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘{𝐴}) = 1)
1211adantr 486 . . . . 5 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘{𝐴}) = 1)
1312oveq1d 7458 . . . 4 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → ((♯‘{𝐴}) + 1) = (1 + 1))
149, 13eqtrd 2798 . . 3 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘({𝐴} ∪ {𝐵})) = (1 + 1))
15 df-pr 4591 . . . 4 {𝐴, 𝐵} = ({𝐴} ∪ {𝐵})
1615fveq2i 6911 . . 3 (♯‘{𝐴, 𝐵}) = (♯‘({𝐴} ∪ {𝐵}))
17 df-2 12432 . . 3 2 = (1 + 1)
1814, 16, 173eqtr4g 2823 . 2 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘{𝐴, 𝐵}) = 2)
19 1ne2 12580 . . . . . . 7 1 ≠ 2
2019a1i 11 . . . . . 6 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → 1 ≠ 2)
2111, 20eqnetrd 3026 . . . . 5 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘{𝐴}) ≠ 2)
22 dfsn2 4597 . . . . . . . 8 {𝐴} = {𝐴, 𝐴}
23 preq2 4695 . . . . . . . 8 (𝐴 = 𝐵 → {𝐴, 𝐴} = {𝐴, 𝐵})
2422, 23eqtr2id 2811 . . . . . . 7 (𝐴 = 𝐵 → {𝐴, 𝐵} = {𝐴})
2524fveq2d 6912 . . . . . 6 (𝐴 = 𝐵 → (♯‘{𝐴, 𝐵}) = (♯‘{𝐴}))
2625neeq1d 3018 . . . . 5 (𝐴 = 𝐵 → ((♯‘{𝐴, 𝐵}) ≠ 2 ↔ (♯‘{𝐴}) ≠ 2))
2721, 26syl5ibrcom 250 . . . 4 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 = 𝐵 → (♯‘{𝐴, 𝐵}) ≠ 2))
2827necon2d 2982 . . 3 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → ((♯‘{𝐴, 𝐵}) = 2 → 𝐴 ≠ 𝐵))
2928imp 412 . 2 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ (♯‘{𝐴, 𝐵}) = 2) → 𝐴 ≠ 𝐵)
3018, 29impbida 813 1 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 ≠ 𝐵 ↔ (♯‘{𝐴, 𝐵}) = 2))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570   ∈ wcel 2147   ≠ wne 2959   ∪ cun 4152  {csn 4588  {cpr 4590  ‘cfv 6558  (class class class)co 7443  Fincfn 9001  1c1 11228   + caddc 11230  2c2 12424  ♯chash 14501
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7775  ax-cnex 11283  ax-resscn 11284  ax-1cn 11285  ax-icn 11286  ax-addcl 11287  ax-addrcl 11288  ax-mulcl 11289  ax-mulrcl 11290  ax-mulcom 11291  ax-addass 11292  ax-mulass 11293  ax-distr 11294  ax-i2m1 11295  ax-1ne0 11296  ax-1rid 11297  ax-rnegex 11298  ax-rrecex 11299  ax-cnre 11300  ax-pre-lttri 11301  ax-pre-lttrn 11302  ax-pre-ltadd 11303  ax-pre-mulgt0 11304
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-int 4911  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6322  df-ord 6383  df-on 6384  df-lim 6385  df-suc 6386  df-iota 6512  df-fun 6560  df-fn 6561  df-f 6562  df-f1 6563  df-fo 6564  df-f1o 6565  df-fv 6566  df-riota 7400  df-ov 7446  df-oprab 7447  df-mpo 7448  df-om 7902  df-1st 8025  df-2nd 8026  df-frecs 8327  df-wrecs 8358  df-recs 8407  df-rdg 8446  df-1o 8504  df-oadd 8508  df-er 8745  df-en 9002  df-dom 9003  df-sdom 9004  df-fin 9005  df-dju 10009  df-card 10047  df-pnf 11372  df-mnf 11373  df-xr 11374  df-ltxr 11375  df-le 11376  df-sub 11570  df-neg 11571  df-nn 12363  df-2 12432  df-n0 12634  df-z 12721  df-uz 12993  df-fz 13667  df-hash 14502
This theorem is used by:  hashprb  14568  prhash2ex  14570  hashfun  14609  hash2exprb  14643  nehash2  14646  hashtpg  14657  elss2prb  14660  hash3tpexb  14666  wrdlen2i  15122  isnzr2hash  20800  upgrex  29700  umgrbi  29709  usgr1e  29856  usgrexmplef  29870  cusgrexilem2  30053  cusgrfilem1  30066  umgr2v2e  30136  vdegp1bi  30148  eulerpathpr  30871  drngidlhash  34053  ccfldextdgrr  34374  coinflipprob  35182  cusgredgex  36063  subfacp1lem1  36111  poimirlem9  38739  fourierdlem54  47375  fourierdlem102  47423  fourierdlem103  47424  fourierdlem104  47425  fourierdlem114  47435  prpair  48788  prproropf1olem1  48790  paireqne  48798  prprspr2  48805  reuprpr  48810  stgrusgra  49262  gpgusgralem  49359
  Copyright terms: Public domain W3C validator