Metamath Proof Explorer


Theorem hashgt12el2

Description: In a set with more than one element are two different elements. (Contributed by Alexander van der Vekens, 15-Nov-2017)

Ref Expression
Assertion hashgt12el2 ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 )

Proof

Step Hyp Ref Expression
1 hash0 ( ♯ ‘ ∅ ) = 0
2 fveq2 ( ∅ = 𝑉 → ( ♯ ‘ ∅ ) = ( ♯ ‘ 𝑉 ) )
3 1 2 eqtr3id ( ∅ = 𝑉 → 0 = ( ♯ ‘ 𝑉 ) )
4 breq2 ( ( ♯ ‘ 𝑉 ) = 0 → ( 1 < ( ♯ ‘ 𝑉 ) ↔ 1 < 0 ) )
5 4 biimpd ( ( ♯ ‘ 𝑉 ) = 0 → ( 1 < ( ♯ ‘ 𝑉 ) → 1 < 0 ) )
6 5 eqcoms ( 0 = ( ♯ ‘ 𝑉 ) → ( 1 < ( ♯ ‘ 𝑉 ) → 1 < 0 ) )
7 0le1 0 ≤ 1
8 0re 0 ∈ ℝ
9 1re 1 ∈ ℝ
10 8 9 lenlti ( 0 ≤ 1 ↔ ¬ 1 < 0 )
11 pm2.21 ( ¬ 1 < 0 → ( 1 < 0 → ∃ 𝑏𝑉 𝐴𝑏 ) )
12 10 11 sylbi ( 0 ≤ 1 → ( 1 < 0 → ∃ 𝑏𝑉 𝐴𝑏 ) )
13 7 12 ax-mp ( 1 < 0 → ∃ 𝑏𝑉 𝐴𝑏 )
14 6 13 syl6com ( 1 < ( ♯ ‘ 𝑉 ) → ( 0 = ( ♯ ‘ 𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) )
15 14 3ad2ant2 ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ( 0 = ( ♯ ‘ 𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) )
16 3 15 syl5com ( ∅ = 𝑉 → ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) )
17 df-ne ( ∅ ≠ 𝑉 ↔ ¬ ∅ = 𝑉 )
18 necom ( ∅ ≠ 𝑉𝑉 ≠ ∅ )
19 17 18 bitr3i ( ¬ ∅ = 𝑉𝑉 ≠ ∅ )
20 ralnex ( ∀ 𝑏𝑉 ¬ 𝐴𝑏 ↔ ¬ ∃ 𝑏𝑉 𝐴𝑏 )
21 nne ( ¬ 𝐴𝑏𝐴 = 𝑏 )
22 eqcom ( 𝐴 = 𝑏𝑏 = 𝐴 )
23 21 22 bitri ( ¬ 𝐴𝑏𝑏 = 𝐴 )
24 23 ralbii ( ∀ 𝑏𝑉 ¬ 𝐴𝑏 ↔ ∀ 𝑏𝑉 𝑏 = 𝐴 )
25 20 24 bitr3i ( ¬ ∃ 𝑏𝑉 𝐴𝑏 ↔ ∀ 𝑏𝑉 𝑏 = 𝐴 )
26 eqsn ( 𝑉 ≠ ∅ → ( 𝑉 = { 𝐴 } ↔ ∀ 𝑏𝑉 𝑏 = 𝐴 ) )
27 26 bicomd ( 𝑉 ≠ ∅ → ( ∀ 𝑏𝑉 𝑏 = 𝐴𝑉 = { 𝐴 } ) )
28 27 adantl ( ( 𝑉𝑊𝑉 ≠ ∅ ) → ( ∀ 𝑏𝑉 𝑏 = 𝐴𝑉 = { 𝐴 } ) )
29 28 adantr ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( ∀ 𝑏𝑉 𝑏 = 𝐴𝑉 = { 𝐴 } ) )
30 hashsnle1 ( ♯ ‘ { 𝐴 } ) ≤ 1
31 fveq2 ( 𝑉 = { 𝐴 } → ( ♯ ‘ 𝑉 ) = ( ♯ ‘ { 𝐴 } ) )
32 31 breq1d ( 𝑉 = { 𝐴 } → ( ( ♯ ‘ 𝑉 ) ≤ 1 ↔ ( ♯ ‘ { 𝐴 } ) ≤ 1 ) )
33 32 adantl ( ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) ∧ 𝑉 = { 𝐴 } ) → ( ( ♯ ‘ 𝑉 ) ≤ 1 ↔ ( ♯ ‘ { 𝐴 } ) ≤ 1 ) )
34 30 33 mpbiri ( ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) ∧ 𝑉 = { 𝐴 } ) → ( ♯ ‘ 𝑉 ) ≤ 1 )
35 34 ex ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( 𝑉 = { 𝐴 } → ( ♯ ‘ 𝑉 ) ≤ 1 ) )
36 29 35 sylbid ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( ∀ 𝑏𝑉 𝑏 = 𝐴 → ( ♯ ‘ 𝑉 ) ≤ 1 ) )
37 hashxrcl ( 𝑉𝑊 → ( ♯ ‘ 𝑉 ) ∈ ℝ* )
38 37 adantr ( ( 𝑉𝑊𝑉 ≠ ∅ ) → ( ♯ ‘ 𝑉 ) ∈ ℝ* )
39 38 adantr ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( ♯ ‘ 𝑉 ) ∈ ℝ* )
40 1xr 1 ∈ ℝ*
41 xrlenlt ( ( ( ♯ ‘ 𝑉 ) ∈ ℝ* ∧ 1 ∈ ℝ* ) → ( ( ♯ ‘ 𝑉 ) ≤ 1 ↔ ¬ 1 < ( ♯ ‘ 𝑉 ) ) )
42 39 40 41 sylancl ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( ( ♯ ‘ 𝑉 ) ≤ 1 ↔ ¬ 1 < ( ♯ ‘ 𝑉 ) ) )
43 36 42 sylibd ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( ∀ 𝑏𝑉 𝑏 = 𝐴 → ¬ 1 < ( ♯ ‘ 𝑉 ) ) )
44 25 43 syl5bi ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( ¬ ∃ 𝑏𝑉 𝐴𝑏 → ¬ 1 < ( ♯ ‘ 𝑉 ) ) )
45 44 con4d ( ( ( 𝑉𝑊𝑉 ≠ ∅ ) ∧ 𝐴𝑉 ) → ( 1 < ( ♯ ‘ 𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) )
46 45 exp31 ( 𝑉𝑊 → ( 𝑉 ≠ ∅ → ( 𝐴𝑉 → ( 1 < ( ♯ ‘ 𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) ) ) )
47 46 com24 ( 𝑉𝑊 → ( 1 < ( ♯ ‘ 𝑉 ) → ( 𝐴𝑉 → ( 𝑉 ≠ ∅ → ∃ 𝑏𝑉 𝐴𝑏 ) ) ) )
48 47 3imp ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ( 𝑉 ≠ ∅ → ∃ 𝑏𝑉 𝐴𝑏 ) )
49 48 com12 ( 𝑉 ≠ ∅ → ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) )
50 19 49 sylbi ( ¬ ∅ = 𝑉 → ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 ) )
51 16 50 pm2.61i ( ( 𝑉𝑊 ∧ 1 < ( ♯ ‘ 𝑉 ) ∧ 𝐴𝑉 ) → ∃ 𝑏𝑉 𝐴𝑏 )