Metamath Proof Explorer


Theorem hashneq0

Description: Two ways of saying a set is not empty. (Contributed by Alexander van der Vekens, 23-Sep-2018)

Ref Expression
Assertion hashneq0 ( 𝐴𝑉 → ( 0 < ( ♯ ‘ 𝐴 ) ↔ 𝐴 ≠ ∅ ) )

Proof

Step Hyp Ref Expression
1 hashnn0pnf ( 𝐴𝑉 → ( ( ♯ ‘ 𝐴 ) ∈ ℕ0 ∨ ( ♯ ‘ 𝐴 ) = +∞ ) )
2 nn0re ( ( ♯ ‘ 𝐴 ) ∈ ℕ0 → ( ♯ ‘ 𝐴 ) ∈ ℝ )
3 nn0ge0 ( ( ♯ ‘ 𝐴 ) ∈ ℕ0 → 0 ≤ ( ♯ ‘ 𝐴 ) )
4 ne0gt0 ( ( ( ♯ ‘ 𝐴 ) ∈ ℝ ∧ 0 ≤ ( ♯ ‘ 𝐴 ) ) → ( ( ♯ ‘ 𝐴 ) ≠ 0 ↔ 0 < ( ♯ ‘ 𝐴 ) ) )
5 2 3 4 syl2anc ( ( ♯ ‘ 𝐴 ) ∈ ℕ0 → ( ( ♯ ‘ 𝐴 ) ≠ 0 ↔ 0 < ( ♯ ‘ 𝐴 ) ) )
6 5 bicomd ( ( ♯ ‘ 𝐴 ) ∈ ℕ0 → ( 0 < ( ♯ ‘ 𝐴 ) ↔ ( ♯ ‘ 𝐴 ) ≠ 0 ) )
7 breq2 ( ( ♯ ‘ 𝐴 ) = +∞ → ( 0 < ( ♯ ‘ 𝐴 ) ↔ 0 < +∞ ) )
8 neeq1 ( ( ♯ ‘ 𝐴 ) = +∞ → ( ( ♯ ‘ 𝐴 ) ≠ 0 ↔ +∞ ≠ 0 ) )
9 0ltpnf 0 < +∞
10 0re 0 ∈ ℝ
11 renepnf ( 0 ∈ ℝ → 0 ≠ +∞ )
12 10 11 ax-mp 0 ≠ +∞
13 12 necomi +∞ ≠ 0
14 9 13 2th ( 0 < +∞ ↔ +∞ ≠ 0 )
15 8 14 syl6rbbr ( ( ♯ ‘ 𝐴 ) = +∞ → ( 0 < +∞ ↔ ( ♯ ‘ 𝐴 ) ≠ 0 ) )
16 7 15 bitrd ( ( ♯ ‘ 𝐴 ) = +∞ → ( 0 < ( ♯ ‘ 𝐴 ) ↔ ( ♯ ‘ 𝐴 ) ≠ 0 ) )
17 6 16 jaoi ( ( ( ♯ ‘ 𝐴 ) ∈ ℕ0 ∨ ( ♯ ‘ 𝐴 ) = +∞ ) → ( 0 < ( ♯ ‘ 𝐴 ) ↔ ( ♯ ‘ 𝐴 ) ≠ 0 ) )
18 1 17 syl ( 𝐴𝑉 → ( 0 < ( ♯ ‘ 𝐴 ) ↔ ( ♯ ‘ 𝐴 ) ≠ 0 ) )
19 hasheq0 ( 𝐴𝑉 → ( ( ♯ ‘ 𝐴 ) = 0 ↔ 𝐴 = ∅ ) )
20 19 necon3bid ( 𝐴𝑉 → ( ( ♯ ‘ 𝐴 ) ≠ 0 ↔ 𝐴 ≠ ∅ ) )
21 18 20 bitrd ( 𝐴𝑉 → ( 0 < ( ♯ ‘ 𝐴 ) ↔ 𝐴 ≠ ∅ ) )