Metamath Proof Explorer


Theorem sucdom2

Description: Strict dominance of a set over another set implies dominance over its successor. (Contributed by Mario Carneiro, 12-Jan-2013) (Proof shortened by Mario Carneiro, 27-Apr-2015) Avoid ax-pow . (Revised by BTernaryTau, 4-Dec-2024)

Ref Expression
Assertion sucdom2 ( 𝐴𝐵 → suc 𝐴𝐵 )

Proof

Step Hyp Ref Expression
1 sdomdom ( 𝐴𝐵𝐴𝐵 )
2 brdomi ( 𝐴𝐵 → ∃ 𝑓 𝑓 : 𝐴1-1𝐵 )
3 1 2 syl ( 𝐴𝐵 → ∃ 𝑓 𝑓 : 𝐴1-1𝐵 )
4 vex 𝑓 ∈ V
5 4 rnex ran 𝑓 ∈ V
6 f1f1orn ( 𝑓 : 𝐴1-1𝐵𝑓 : 𝐴1-1-onto→ ran 𝑓 )
7 6 adantl ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → 𝑓 : 𝐴1-1-onto→ ran 𝑓 )
8 f1of1 ( 𝑓 : 𝐴1-1-onto→ ran 𝑓𝑓 : 𝐴1-1→ ran 𝑓 )
9 7 8 syl ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → 𝑓 : 𝐴1-1→ ran 𝑓 )
10 f1dom3g ( ( 𝑓 ∈ V ∧ ran 𝑓 ∈ V ∧ 𝑓 : 𝐴1-1→ ran 𝑓 ) → 𝐴 ≼ ran 𝑓 )
11 4 5 9 10 mp3an12i ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → 𝐴 ≼ ran 𝑓 )
12 sdomnen ( 𝐴𝐵 → ¬ 𝐴𝐵 )
13 12 adantr ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ¬ 𝐴𝐵 )
14 ssdif0 ( 𝐵 ⊆ ran 𝑓 ↔ ( 𝐵 ∖ ran 𝑓 ) = ∅ )
15 simplr ( ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) ∧ 𝐵 ⊆ ran 𝑓 ) → 𝑓 : 𝐴1-1𝐵 )
16 f1f ( 𝑓 : 𝐴1-1𝐵𝑓 : 𝐴𝐵 )
17 16 frnd ( 𝑓 : 𝐴1-1𝐵 → ran 𝑓𝐵 )
18 15 17 syl ( ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) ∧ 𝐵 ⊆ ran 𝑓 ) → ran 𝑓𝐵 )
19 simpr ( ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) ∧ 𝐵 ⊆ ran 𝑓 ) → 𝐵 ⊆ ran 𝑓 )
20 18 19 eqssd ( ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) ∧ 𝐵 ⊆ ran 𝑓 ) → ran 𝑓 = 𝐵 )
21 dff1o5 ( 𝑓 : 𝐴1-1-onto𝐵 ↔ ( 𝑓 : 𝐴1-1𝐵 ∧ ran 𝑓 = 𝐵 ) )
22 15 20 21 sylanbrc ( ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) ∧ 𝐵 ⊆ ran 𝑓 ) → 𝑓 : 𝐴1-1-onto𝐵 )
23 f1oen3g ( ( 𝑓 ∈ V ∧ 𝑓 : 𝐴1-1-onto𝐵 ) → 𝐴𝐵 )
24 4 22 23 sylancr ( ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) ∧ 𝐵 ⊆ ran 𝑓 ) → 𝐴𝐵 )
25 24 ex ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( 𝐵 ⊆ ran 𝑓𝐴𝐵 ) )
26 14 25 biimtrrid ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( ( 𝐵 ∖ ran 𝑓 ) = ∅ → 𝐴𝐵 ) )
27 13 26 mtod ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ¬ ( 𝐵 ∖ ran 𝑓 ) = ∅ )
28 neq0 ( ¬ ( 𝐵 ∖ ran 𝑓 ) = ∅ ↔ ∃ 𝑤 𝑤 ∈ ( 𝐵 ∖ ran 𝑓 ) )
29 27 28 sylib ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ∃ 𝑤 𝑤 ∈ ( 𝐵 ∖ ran 𝑓 ) )
30 snssi ( 𝑤 ∈ ( 𝐵 ∖ ran 𝑓 ) → { 𝑤 } ⊆ ( 𝐵 ∖ ran 𝑓 ) )
31 relsdom Rel ≺
32 31 brrelex1i ( 𝐴𝐵𝐴 ∈ V )
33 32 adantr ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → 𝐴 ∈ V )
34 vex 𝑤 ∈ V
35 en2sn ( ( 𝐴 ∈ V ∧ 𝑤 ∈ V ) → { 𝐴 } ≈ { 𝑤 } )
36 33 34 35 sylancl ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → { 𝐴 } ≈ { 𝑤 } )
37 31 brrelex2i ( 𝐴𝐵𝐵 ∈ V )
38 37 adantr ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → 𝐵 ∈ V )
39 difexg ( 𝐵 ∈ V → ( 𝐵 ∖ ran 𝑓 ) ∈ V )
40 snfi { 𝑤 } ∈ Fin
41 ssdomfi2 ( ( { 𝑤 } ∈ Fin ∧ ( 𝐵 ∖ ran 𝑓 ) ∈ V ∧ { 𝑤 } ⊆ ( 𝐵 ∖ ran 𝑓 ) ) → { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) )
42 40 41 mp3an1 ( ( ( 𝐵 ∖ ran 𝑓 ) ∈ V ∧ { 𝑤 } ⊆ ( 𝐵 ∖ ran 𝑓 ) ) → { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) )
43 42 ex ( ( 𝐵 ∖ ran 𝑓 ) ∈ V → ( { 𝑤 } ⊆ ( 𝐵 ∖ ran 𝑓 ) → { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) )
44 38 39 43 3syl ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( { 𝑤 } ⊆ ( 𝐵 ∖ ran 𝑓 ) → { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) )
45 endom ( { 𝐴 } ≈ { 𝑤 } → { 𝐴 } ≼ { 𝑤 } )
46 domtrfi ( ( { 𝑤 } ∈ Fin ∧ { 𝐴 } ≼ { 𝑤 } ∧ { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) )
47 40 46 mp3an1 ( ( { 𝐴 } ≼ { 𝑤 } ∧ { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) )
48 45 47 sylan ( ( { 𝐴 } ≈ { 𝑤 } ∧ { 𝑤 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) )
49 36 44 48 syl6an ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( { 𝑤 } ⊆ ( 𝐵 ∖ ran 𝑓 ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) )
50 30 49 syl5 ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( 𝑤 ∈ ( 𝐵 ∖ ran 𝑓 ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) )
51 50 exlimdv ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( ∃ 𝑤 𝑤 ∈ ( 𝐵 ∖ ran 𝑓 ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) )
52 29 51 mpd ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) )
53 disjdif ( ran 𝑓 ∩ ( 𝐵 ∖ ran 𝑓 ) ) = ∅
54 53 a1i ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( ran 𝑓 ∩ ( 𝐵 ∖ ran 𝑓 ) ) = ∅ )
55 undom ( ( ( 𝐴 ≼ ran 𝑓 ∧ { 𝐴 } ≼ ( 𝐵 ∖ ran 𝑓 ) ) ∧ ( ran 𝑓 ∩ ( 𝐵 ∖ ran 𝑓 ) ) = ∅ ) → ( 𝐴 ∪ { 𝐴 } ) ≼ ( ran 𝑓 ∪ ( 𝐵 ∖ ran 𝑓 ) ) )
56 11 52 54 55 syl21anc ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( 𝐴 ∪ { 𝐴 } ) ≼ ( ran 𝑓 ∪ ( 𝐵 ∖ ran 𝑓 ) ) )
57 df-suc suc 𝐴 = ( 𝐴 ∪ { 𝐴 } )
58 57 a1i ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → suc 𝐴 = ( 𝐴 ∪ { 𝐴 } ) )
59 undif2 ( ran 𝑓 ∪ ( 𝐵 ∖ ran 𝑓 ) ) = ( ran 𝑓𝐵 )
60 17 adantl ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ran 𝑓𝐵 )
61 ssequn1 ( ran 𝑓𝐵 ↔ ( ran 𝑓𝐵 ) = 𝐵 )
62 60 61 sylib ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → ( ran 𝑓𝐵 ) = 𝐵 )
63 59 62 eqtr2id ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → 𝐵 = ( ran 𝑓 ∪ ( 𝐵 ∖ ran 𝑓 ) ) )
64 56 58 63 3brtr4d ( ( 𝐴𝐵𝑓 : 𝐴1-1𝐵 ) → suc 𝐴𝐵 )
65 3 64 exlimddv ( 𝐴𝐵 → suc 𝐴𝐵 )