Metamath Proof Explorer


Theorem onsupmaxb

Description: The union of a class of ordinals is an element is an element of that class if and only if there is a maximum element of that class under the epsilon relation, which is to say that the domain of the restricted epsilon relation is not the whole class. (Contributed by RP, 25-Jan-2025)

Ref Expression
Assertion onsupmaxb ( 𝐴 ⊆ On → ( dom ( E ∩ ( 𝐴 × 𝐴 ) ) = 𝐴 ↔ ¬ 𝐴𝐴 ) )

Proof

Step Hyp Ref Expression
1 elirrv ¬ 𝑥𝑥
2 pm5.501 ( ¬ 𝑥𝑥 → ( ∃ 𝑦𝐴 𝑥𝑦 ↔ ( ¬ 𝑥𝑥 ↔ ∃ 𝑦𝐴 𝑥𝑦 ) ) )
3 1 2 mp1i ( 𝑧 = 𝑥 → ( ∃ 𝑦𝐴 𝑥𝑦 ↔ ( ¬ 𝑥𝑥 ↔ ∃ 𝑦𝐴 𝑥𝑦 ) ) )
4 elequ1 ( 𝑧 = 𝑥 → ( 𝑧𝑥𝑥𝑥 ) )
5 4 notbid ( 𝑧 = 𝑥 → ( ¬ 𝑧𝑥 ↔ ¬ 𝑥𝑥 ) )
6 elequ1 ( 𝑧 = 𝑥 → ( 𝑧𝑦𝑥𝑦 ) )
7 6 rexbidv ( 𝑧 = 𝑥 → ( ∃ 𝑦𝐴 𝑧𝑦 ↔ ∃ 𝑦𝐴 𝑥𝑦 ) )
8 5 7 bibi12d ( 𝑧 = 𝑥 → ( ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ( ¬ 𝑥𝑥 ↔ ∃ 𝑦𝐴 𝑥𝑦 ) ) )
9 3 8 bitr4d ( 𝑧 = 𝑥 → ( ∃ 𝑦𝐴 𝑥𝑦 ↔ ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ) )
10 9 biimpd ( 𝑧 = 𝑥 → ( ∃ 𝑦𝐴 𝑥𝑦 → ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ) )
11 10 spimevw ( ∃ 𝑦𝐴 𝑥𝑦 → ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
12 ssel ( 𝐴 ⊆ On → ( 𝑦𝐴𝑦 ∈ On ) )
13 12 adantr ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( 𝑦𝐴𝑦 ∈ On ) )
14 13 imp ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ 𝑦𝐴 ) → 𝑦 ∈ On )
15 ssel2 ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → 𝑥 ∈ On )
16 15 adantr ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ 𝑦𝐴 ) → 𝑥 ∈ On )
17 ontri1 ( ( 𝑦 ∈ On ∧ 𝑥 ∈ On ) → ( 𝑦𝑥 ↔ ¬ 𝑥𝑦 ) )
18 14 16 17 syl2anc ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ 𝑦𝐴 ) → ( 𝑦𝑥 ↔ ¬ 𝑥𝑦 ) )
19 18 ralbidva ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( ∀ 𝑦𝐴 𝑦𝑥 ↔ ∀ 𝑦𝐴 ¬ 𝑥𝑦 ) )
20 ralnex ( ∀ 𝑦𝐴 ¬ 𝑥𝑦 ↔ ¬ ∃ 𝑦𝐴 𝑥𝑦 )
21 19 20 bitrdi ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( ∀ 𝑦𝐴 𝑦𝑥 ↔ ¬ ∃ 𝑦𝐴 𝑥𝑦 ) )
22 unissb ( 𝐴𝑥 ↔ ∀ 𝑦𝐴 𝑦𝑥 )
23 simpr ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ 𝐴𝑥 ) → 𝐴𝑥 )
24 elssuni ( 𝑥𝐴𝑥 𝐴 )
25 24 ad2antlr ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ 𝐴𝑥 ) → 𝑥 𝐴 )
26 23 25 eqssd ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ 𝐴𝑥 ) → 𝐴 = 𝑥 )
27 22 26 sylan2br ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ ∀ 𝑦𝐴 𝑦𝑥 ) → 𝐴 = 𝑥 )
28 dfuni2 𝐴 = { 𝑧 ∣ ∃ 𝑦𝐴 𝑧𝑦 }
29 28 eqeq1i ( 𝐴 = 𝑥 ↔ { 𝑧 ∣ ∃ 𝑦𝐴 𝑧𝑦 } = 𝑥 )
30 eqabcb ( { 𝑧 ∣ ∃ 𝑦𝐴 𝑧𝑦 } = 𝑥 ↔ ∀ 𝑧 ( ∃ 𝑦𝐴 𝑧𝑦𝑧𝑥 ) )
31 bicom ( ( ∃ 𝑦𝐴 𝑧𝑦𝑧𝑥 ) ↔ ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
32 31 albii ( ∀ 𝑧 ( ∃ 𝑦𝐴 𝑧𝑦𝑧𝑥 ) ↔ ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
33 29 30 32 3bitri ( 𝐴 = 𝑥 ↔ ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
34 27 33 sylib ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ ∀ 𝑦𝐴 𝑦𝑥 ) → ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
35 notnotb ( 𝑧𝑥 ↔ ¬ ¬ 𝑧𝑥 )
36 35 bibi1i ( ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ( ¬ ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
37 nbbn ( ( ¬ ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
38 36 37 bitri ( ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
39 38 albii ( ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ∀ 𝑧 ¬ ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
40 alnex ( ∀ 𝑧 ¬ ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
41 39 40 bitri ( ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
42 34 41 sylib ( ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) ∧ ∀ 𝑦𝐴 𝑦𝑥 ) → ¬ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
43 42 ex ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( ∀ 𝑦𝐴 𝑦𝑥 → ¬ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ) )
44 21 43 sylbird ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( ¬ ∃ 𝑦𝐴 𝑥𝑦 → ¬ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ) )
45 44 con4d ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) → ∃ 𝑦𝐴 𝑥𝑦 ) )
46 11 45 impbid2 ( ( 𝐴 ⊆ On ∧ 𝑥𝐴 ) → ( ∃ 𝑦𝐴 𝑥𝑦 ↔ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ) )
47 46 ralbidva ( 𝐴 ⊆ On → ( ∀ 𝑥𝐴𝑦𝐴 𝑥𝑦 ↔ ∀ 𝑥𝐴𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ) )
48 dminxp ( dom ( E ∩ ( 𝐴 × 𝐴 ) ) = 𝐴 ↔ ∀ 𝑥𝐴𝑦𝐴 𝑥 E 𝑦 )
49 epel ( 𝑥 E 𝑦𝑥𝑦 )
50 49 rexbii ( ∃ 𝑦𝐴 𝑥 E 𝑦 ↔ ∃ 𝑦𝐴 𝑥𝑦 )
51 50 ralbii ( ∀ 𝑥𝐴𝑦𝐴 𝑥 E 𝑦 ↔ ∀ 𝑥𝐴𝑦𝐴 𝑥𝑦 )
52 48 51 bitri ( dom ( E ∩ ( 𝐴 × 𝐴 ) ) = 𝐴 ↔ ∀ 𝑥𝐴𝑦𝐴 𝑥𝑦 )
53 ralnex ( ∀ 𝑥𝐴 ¬ ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ∃ 𝑥𝐴𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
54 exnal ( ∃ 𝑧 ¬ ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
55 nbbn ( ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ¬ ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
56 55 bicomi ( ¬ ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
57 56 exbii ( ∃ 𝑧 ¬ ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
58 54 57 bitr3i ( ¬ ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ∃ 𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
59 58 ralbii ( ∀ 𝑥𝐴 ¬ ∀ 𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ∀ 𝑥𝐴𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
60 53 59 bitr3i ( ¬ ∃ 𝑥𝐴𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) ↔ ∀ 𝑥𝐴𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
61 uniel ( 𝐴𝐴 ↔ ∃ 𝑥𝐴𝑧 ( 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
62 60 61 xchnxbir ( ¬ 𝐴𝐴 ↔ ∀ 𝑥𝐴𝑧 ( ¬ 𝑧𝑥 ↔ ∃ 𝑦𝐴 𝑧𝑦 ) )
63 47 52 62 3bitr4g ( 𝐴 ⊆ On → ( dom ( E ∩ ( 𝐴 × 𝐴 ) ) = 𝐴 ↔ ¬ 𝐴𝐴 ) )