Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > hashprg | Structured version Visualization version GIF version |
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.) |
Ref | Expression |
---|---|
hashprg | ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 ≠ 𝐵 ↔ (♯‘{𝐴, 𝐵}) = 2)) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | simpr 488 | . . . . 5 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → 𝐵 ∈ 𝑊) | |
2 | elsni 4533 | . . . . . . 7 ⊢ (𝐵 ∈ {𝐴} → 𝐵 = 𝐴) | |
3 | 2 | eqcomd 2744 | . . . . . 6 ⊢ (𝐵 ∈ {𝐴} → 𝐴 = 𝐵) |
4 | 3 | necon3ai 2959 | . . . . 5 ⊢ (𝐴 ≠ 𝐵 → ¬ 𝐵 ∈ {𝐴}) |
5 | snfi 8644 | . . . . . 6 ⊢ {𝐴} ∈ Fin | |
6 | hashunsng 13847 | . . . . . . 7 ⊢ (𝐵 ∈ 𝑊 → (({𝐴} ∈ Fin ∧ ¬ 𝐵 ∈ {𝐴}) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1))) | |
7 | 6 | imp 410 | . . . . . 6 ⊢ ((𝐵 ∈ 𝑊 ∧ ({𝐴} ∈ Fin ∧ ¬ 𝐵 ∈ {𝐴})) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1)) |
8 | 5, 7 | mpanr1 703 | . . . . 5 ⊢ ((𝐵 ∈ 𝑊 ∧ ¬ 𝐵 ∈ {𝐴}) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1)) |
9 | 1, 4, 8 | syl2an 599 | . . . 4 ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘({𝐴} ∪ {𝐵})) = ((♯‘{𝐴}) + 1)) |
10 | hashsng 13824 | . . . . . . 7 ⊢ (𝐴 ∈ 𝑉 → (♯‘{𝐴}) = 1) | |
11 | 10 | adantr 484 | . . . . . 6 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘{𝐴}) = 1) |
12 | 11 | adantr 484 | . . . . 5 ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘{𝐴}) = 1) |
13 | 12 | oveq1d 7187 | . . . 4 ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → ((♯‘{𝐴}) + 1) = (1 + 1)) |
14 | 9, 13 | eqtrd 2773 | . . 3 ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘({𝐴} ∪ {𝐵})) = (1 + 1)) |
15 | df-pr 4519 | . . . 4 ⊢ {𝐴, 𝐵} = ({𝐴} ∪ {𝐵}) | |
16 | 15 | fveq2i 6679 | . . 3 ⊢ (♯‘{𝐴, 𝐵}) = (♯‘({𝐴} ∪ {𝐵})) |
17 | df-2 11781 | . . 3 ⊢ 2 = (1 + 1) | |
18 | 14, 16, 17 | 3eqtr4g 2798 | . 2 ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ 𝐴 ≠ 𝐵) → (♯‘{𝐴, 𝐵}) = 2) |
19 | 1ne2 11926 | . . . . . . 7 ⊢ 1 ≠ 2 | |
20 | 19 | a1i 11 | . . . . . 6 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → 1 ≠ 2) |
21 | 11, 20 | eqnetrd 3001 | . . . . 5 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘{𝐴}) ≠ 2) |
22 | dfsn2 4529 | . . . . . . . 8 ⊢ {𝐴} = {𝐴, 𝐴} | |
23 | preq2 4625 | . . . . . . . 8 ⊢ (𝐴 = 𝐵 → {𝐴, 𝐴} = {𝐴, 𝐵}) | |
24 | 22, 23 | eqtr2id 2786 | . . . . . . 7 ⊢ (𝐴 = 𝐵 → {𝐴, 𝐵} = {𝐴}) |
25 | 24 | fveq2d 6680 | . . . . . 6 ⊢ (𝐴 = 𝐵 → (♯‘{𝐴, 𝐵}) = (♯‘{𝐴})) |
26 | 25 | neeq1d 2993 | . . . . 5 ⊢ (𝐴 = 𝐵 → ((♯‘{𝐴, 𝐵}) ≠ 2 ↔ (♯‘{𝐴}) ≠ 2)) |
27 | 21, 26 | syl5ibrcom 250 | . . . 4 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 = 𝐵 → (♯‘{𝐴, 𝐵}) ≠ 2)) |
28 | 27 | necon2d 2957 | . . 3 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → ((♯‘{𝐴, 𝐵}) = 2 → 𝐴 ≠ 𝐵)) |
29 | 28 | imp 410 | . 2 ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) ∧ (♯‘{𝐴, 𝐵}) = 2) → 𝐴 ≠ 𝐵) |
30 | 18, 29 | impbida 801 | 1 ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 ≠ 𝐵 ↔ (♯‘{𝐴, 𝐵}) = 2)) |
Colors of variables: wff setvar class |
Syntax hints: ¬ wn 3 → wi 4 ↔ wb 209 ∧ wa 399 = wceq 1542 ∈ wcel 2114 ≠ wne 2934 ∪ cun 3841 {csn 4516 {cpr 4518 ‘cfv 6339 (class class class)co 7172 Fincfn 8557 1c1 10618 + caddc 10620 2c2 11773 ♯chash 13784 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1802 ax-4 1816 ax-5 1917 ax-6 1975 ax-7 2020 ax-8 2116 ax-9 2124 ax-10 2145 ax-11 2162 ax-12 2179 ax-ext 2710 ax-sep 5167 ax-nul 5174 ax-pow 5232 ax-pr 5296 ax-un 7481 ax-cnex 10673 ax-resscn 10674 ax-1cn 10675 ax-icn 10676 ax-addcl 10677 ax-addrcl 10678 ax-mulcl 10679 ax-mulrcl 10680 ax-mulcom 10681 ax-addass 10682 ax-mulass 10683 ax-distr 10684 ax-i2m1 10685 ax-1ne0 10686 ax-1rid 10687 ax-rnegex 10688 ax-rrecex 10689 ax-cnre 10690 ax-pre-lttri 10691 ax-pre-lttrn 10692 ax-pre-ltadd 10693 ax-pre-mulgt0 10694 |
This theorem depends on definitions: df-bi 210 df-an 400 df-or 847 df-3or 1089 df-3an 1090 df-tru 1545 df-fal 1555 df-ex 1787 df-nf 1791 df-sb 2075 df-mo 2540 df-eu 2570 df-clab 2717 df-cleq 2730 df-clel 2811 df-nfc 2881 df-ne 2935 df-nel 3039 df-ral 3058 df-rex 3059 df-reu 3060 df-rab 3062 df-v 3400 df-sbc 3681 df-csb 3791 df-dif 3846 df-un 3848 df-in 3850 df-ss 3860 df-pss 3862 df-nul 4212 df-if 4415 df-pw 4490 df-sn 4517 df-pr 4519 df-tp 4521 df-op 4523 df-uni 4797 df-int 4837 df-iun 4883 df-br 5031 df-opab 5093 df-mpt 5111 df-tr 5137 df-id 5429 df-eprel 5434 df-po 5442 df-so 5443 df-fr 5483 df-we 5485 df-xp 5531 df-rel 5532 df-cnv 5533 df-co 5534 df-dm 5535 df-rn 5536 df-res 5537 df-ima 5538 df-pred 6129 df-ord 6175 df-on 6176 df-lim 6177 df-suc 6178 df-iota 6297 df-fun 6341 df-fn 6342 df-f 6343 df-f1 6344 df-fo 6345 df-f1o 6346 df-fv 6347 df-riota 7129 df-ov 7175 df-oprab 7176 df-mpo 7177 df-om 7602 df-1st 7716 df-2nd 7717 df-wrecs 7978 df-recs 8039 df-rdg 8077 df-1o 8133 df-oadd 8137 df-er 8322 df-en 8558 df-dom 8559 df-sdom 8560 df-fin 8561 df-dju 9405 df-card 9443 df-pnf 10757 df-mnf 10758 df-xr 10759 df-ltxr 10760 df-le 10761 df-sub 10952 df-neg 10953 df-nn 11719 df-2 11781 df-n0 11979 df-z 12065 df-uz 12327 df-fz 12984 df-hash 13785 |
This theorem is referenced by: hashprb 13852 prhash2ex 13854 hashfun 13892 hash2exprb 13925 nehash2 13928 hashtpg 13939 elss2prb 13941 wrdlen2i 14395 isnzr2hash 20158 upgrex 27039 umgrbi 27048 usgr1e 27189 usgrexmplef 27203 cusgrexilem2 27386 cusgrfilem1 27399 umgr2v2e 27469 vdegp1bi 27481 eulerpathpr 28179 ccfldextdgrr 31316 coinflipprob 32018 cusgredgex 32656 subfacp1lem1 32714 poimirlem9 35431 fourierdlem54 43265 fourierdlem102 43313 fourierdlem103 43314 fourierdlem104 43315 fourierdlem114 43325 prpair 44516 prproropf1olem1 44518 paireqne 44526 prprspr2 44533 reuprpr 44538 |
Copyright terms: Public domain | W3C validator |