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

Theorem hashprg 14540
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 2767 . . . . . 6 (𝐵 ∈ {𝐴} → 𝐴 = 𝐵)
43necon3ai 2981 . . . . 5 (𝐴 ≠ 𝐵 → ¬ 𝐵 ∈ {𝐴})
5 snfi 9072 . . . . . 6 {𝐴} ∈ Fin
6 hashunsng 14537 . . . . . . 7 (𝐵 ∈ 𝑊 → (({𝐴} ∈ Fin ∧ ¬ 𝐵 ∈ {𝐴}) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1)))
76imp 412 . . . . . 6 ((𝐵 ∈ 𝑊 ∧ ({𝐴} ∈ Fin ∧ ¬ 𝐵 ∈ {𝐴})) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))
85, 7mpanr1 716 . . . . 5 ((𝐵 ∈ 𝑊 ∧ ¬ 𝐵 ∈ {𝐴}) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))
91, 4, 8syl2an 608 . . . 4 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))
10 hashsng 14514 . . . . . . 7 (𝐴 ∈ 𝑉 → (♯‘{𝐴}) = 1)
1110adantr 486 . . . . . 6 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘{𝐴}) = 1)
1211adantr 486 . . . . 5 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘{𝐴}) = 1)
1312oveq1d 7436 . . . 4 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → ((♯‘{𝐴}) + 1) = (1 + 1))
149, 13eqtrd 2796 . . 3 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘({𝐴} ∪ {𝐵})) = (1 + 1))
15 df-pr 4587 . . . 4 {𝐴, 𝐵} = ({𝐴} ∪ {𝐵})
1615fveq2i 6889 . . 3 (♯‘{𝐴, 𝐵}) = (♯‘({𝐴} ∪ {𝐵}))
17 df-2 12406 . . 3 2 = (1 + 1)
1814, 16, 173eqtr4g 2821 . 2 (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘{𝐴, 𝐵}) = 2)
19 1ne2 12554 . . . . . . 7 1 ≠ 2
2019a1i 11 . . . . . 6 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → 1 ≠ 2)
2111, 20eqnetrd 3023 . . . . 5 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘{𝐴}) ≠ 2)
22 dfsn2 4597 . . . . . . . 8 {𝐴} = {𝐴, 𝐴}
23 preq2 4695 . . . . . . . 8 (𝐴 = 𝐵 → {𝐴, 𝐴} = {𝐴, 𝐵})
2422, 23eqtr2id 2809 . . . . . . 7 (𝐴 = 𝐵 → {𝐴, 𝐵} = {𝐴})
2524fveq2d 6890 . . . . . 6 (𝐴 = 𝐵 → (♯‘{𝐴, 𝐵}) = (♯‘{𝐴}))
2625neeq1d 3015 . . . . 5 (𝐴 = 𝐵 → ((♯‘{𝐴, 𝐵}) ≠ 2 ↔ (♯‘{𝐴}) ≠ 2))
2721, 26syl5ibrcom 250 . . . 4 ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 = 𝐵 → (♯‘{𝐴, 𝐵}) ≠ 2))
2827necon2d 2979 . . 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 2145   ≠ wne 2956   ∪ cun 3897  {csn 4584  {cpr 4586  ‘cfv 6539  (class class class)co 7421  Fincfn 8974  1c1 11202   + caddc 11204  2c2 12398  ♯chash 14475
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 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7752  ax-cnex 11257  ax-resscn 11258  ax-1cn 11259  ax-icn 11260  ax-addcl 11261  ax-addrcl 11262  ax-mulcl 11263  ax-mulrcl 11264  ax-mulcom 11265  ax-addass 11266  ax-mulass 11267  ax-distr 11268  ax-i2m1 11269  ax-1ne0 11270  ax-1rid 11271  ax-rnegex 11272  ax-rrecex 11273  ax-cnre 11274  ax-pre-lttri 11275  ax-pre-lttrn 11276  ax-pre-ltadd 11277  ax-pre-mulgt0 11278
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 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3900  df-un 3902  df-in 3904  df-ss 3915  df-pss 4035  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6305  df-ord 6366  df-on 6367  df-lim 6368  df-suc 6369  df-iota 6495  df-fun 6541  df-fn 6542  df-f 6543  df-f1 6544  df-fo 6545  df-f1o 6546  df-fv 6547  df-riota 7378  df-ov 7424  df-oprab 7425  df-mpo 7426  df-om 7879  df-1st 8002  df-2nd 8003  df-frecs 8300  df-wrecs 8331  df-recs 8380  df-rdg 8419  df-1o 8477  df-oadd 8481  df-er 8718  df-en 8975  df-dom 8976  df-sdom 8977  df-fin 8978  df-dju 9983  df-card 10021  df-pnf 11346  df-mnf 11347  df-xr 11348  df-ltxr 11349  df-le 11350  df-sub 11544  df-neg 11545  df-nn 12337  df-2 12406  df-n0 12608  df-z 12695  df-uz 12967  df-fz 13641  df-hash 14476
This theorem is used by:  hashprb  14542  prhash2ex  14544  hashfun  14583  hash2exprb  14617  nehash2  14620  hashtpg  14631  elss2prb  14634  hash3tpexb  14640  wrdlen2i  15094  isnzr2hash  20771  upgrex  29671  umgrbi  29680  usgr1e  29827  usgrexmplef  29841  cusgrexilem2  30024  cusgrfilem1  30037  umgr2v2e  30107  vdegp1bi  30119  eulerpathpr  30842  drngidlhash  33984  ccfldextdgrr  34305  coinflipprob  35113  cusgredgex  35907  subfacp1lem1  35945  poimirlem9  38549  fourierdlem54  47171  fourierdlem102  47219  fourierdlem103  47220  fourierdlem104  47221  fourierdlem114  47231  prpair  48584  prproropf1olem1  48586  paireqne  48594  prprspr2  48601  reuprpr  48606  stgrusgra  49058  gpgusgralem  49155
  Copyright terms: Public domain W3C validator