Metamath Proof Explorer


Theorem n0snor2el

Description: A nonempty set is either a singleton or contains at least two different elements. (Contributed by AV, 20-Sep-2020)

Ref Expression
Assertion n0snor2el ( 𝐴 ≠ ∅ → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) )

Proof

Step Hyp Ref Expression
1 issn ( ∃ 𝑤𝐴𝑦𝐴 𝑤 = 𝑦 → ∃ 𝑧 𝐴 = { 𝑧 } )
2 1 olcd ( ∃ 𝑤𝐴𝑦𝐴 𝑤 = 𝑦 → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) )
3 2 a1d ( ∃ 𝑤𝐴𝑦𝐴 𝑤 = 𝑦 → ( 𝐴 ≠ ∅ → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) ) )
4 df-ne ( 𝑤𝑦 ↔ ¬ 𝑤 = 𝑦 )
5 4 rexbii ( ∃ 𝑦𝐴 𝑤𝑦 ↔ ∃ 𝑦𝐴 ¬ 𝑤 = 𝑦 )
6 rexnal ( ∃ 𝑦𝐴 ¬ 𝑤 = 𝑦 ↔ ¬ ∀ 𝑦𝐴 𝑤 = 𝑦 )
7 5 6 bitri ( ∃ 𝑦𝐴 𝑤𝑦 ↔ ¬ ∀ 𝑦𝐴 𝑤 = 𝑦 )
8 7 ralbii ( ∀ 𝑤𝐴𝑦𝐴 𝑤𝑦 ↔ ∀ 𝑤𝐴 ¬ ∀ 𝑦𝐴 𝑤 = 𝑦 )
9 ralnex ( ∀ 𝑤𝐴 ¬ ∀ 𝑦𝐴 𝑤 = 𝑦 ↔ ¬ ∃ 𝑤𝐴𝑦𝐴 𝑤 = 𝑦 )
10 8 9 bitri ( ∀ 𝑤𝐴𝑦𝐴 𝑤𝑦 ↔ ¬ ∃ 𝑤𝐴𝑦𝐴 𝑤 = 𝑦 )
11 neeq1 ( 𝑤 = 𝑥 → ( 𝑤𝑦𝑥𝑦 ) )
12 11 rexbidv ( 𝑤 = 𝑥 → ( ∃ 𝑦𝐴 𝑤𝑦 ↔ ∃ 𝑦𝐴 𝑥𝑦 ) )
13 12 rspccva ( ( ∀ 𝑤𝐴𝑦𝐴 𝑤𝑦𝑥𝐴 ) → ∃ 𝑦𝐴 𝑥𝑦 )
14 13 reximdva0 ( ( ∀ 𝑤𝐴𝑦𝐴 𝑤𝑦𝐴 ≠ ∅ ) → ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 )
15 14 orcd ( ( ∀ 𝑤𝐴𝑦𝐴 𝑤𝑦𝐴 ≠ ∅ ) → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) )
16 15 ex ( ∀ 𝑤𝐴𝑦𝐴 𝑤𝑦 → ( 𝐴 ≠ ∅ → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) ) )
17 10 16 sylbir ( ¬ ∃ 𝑤𝐴𝑦𝐴 𝑤 = 𝑦 → ( 𝐴 ≠ ∅ → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) ) )
18 3 17 pm2.61i ( 𝐴 ≠ ∅ → ( ∃ 𝑥𝐴𝑦𝐴 𝑥𝑦 ∨ ∃ 𝑧 𝐴 = { 𝑧 } ) )