This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.

Metamath Proof Explorer


Theorem ondomon

Description: The class of ordinals dominated by a given set is an ordinal. Theorem 56 of Suppes p. 227. This theorem can be proved without the axiom of choice, see hartogs . (Contributed by NM, 7-Nov-2003) (Proof modification is discouraged.) Use hartogs instead. (New usage is discouraged.)

Ref Expression
Assertion ondomon ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On )

Proof

Step Hyp Ref Expression
1 onelon ( ( 𝑧 ∈ On ∧ 𝑦𝑧 ) → 𝑦 ∈ On )
2 vex 𝑧 ∈ V
3 onelss ( 𝑧 ∈ On → ( 𝑦𝑧𝑦𝑧 ) )
4 3 imp ( ( 𝑧 ∈ On ∧ 𝑦𝑧 ) → 𝑦𝑧 )
5 ssdomg ( 𝑧 ∈ V → ( 𝑦𝑧𝑦𝑧 ) )
6 2 4 5 mpsyl ( ( 𝑧 ∈ On ∧ 𝑦𝑧 ) → 𝑦𝑧 )
7 1 6 jca ( ( 𝑧 ∈ On ∧ 𝑦𝑧 ) → ( 𝑦 ∈ On ∧ 𝑦𝑧 ) )
8 domtr ( ( 𝑦𝑧𝑧𝐴 ) → 𝑦𝐴 )
9 8 anim2i ( ( 𝑦 ∈ On ∧ ( 𝑦𝑧𝑧𝐴 ) ) → ( 𝑦 ∈ On ∧ 𝑦𝐴 ) )
10 9 anassrs ( ( ( 𝑦 ∈ On ∧ 𝑦𝑧 ) ∧ 𝑧𝐴 ) → ( 𝑦 ∈ On ∧ 𝑦𝐴 ) )
11 7 10 sylan ( ( ( 𝑧 ∈ On ∧ 𝑦𝑧 ) ∧ 𝑧𝐴 ) → ( 𝑦 ∈ On ∧ 𝑦𝐴 ) )
12 11 exp31 ( 𝑧 ∈ On → ( 𝑦𝑧 → ( 𝑧𝐴 → ( 𝑦 ∈ On ∧ 𝑦𝐴 ) ) ) )
13 12 com12 ( 𝑦𝑧 → ( 𝑧 ∈ On → ( 𝑧𝐴 → ( 𝑦 ∈ On ∧ 𝑦𝐴 ) ) ) )
14 13 impd ( 𝑦𝑧 → ( ( 𝑧 ∈ On ∧ 𝑧𝐴 ) → ( 𝑦 ∈ On ∧ 𝑦𝐴 ) ) )
15 breq1 ( 𝑥 = 𝑧 → ( 𝑥𝐴𝑧𝐴 ) )
16 15 elrab ( 𝑧 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ↔ ( 𝑧 ∈ On ∧ 𝑧𝐴 ) )
17 breq1 ( 𝑥 = 𝑦 → ( 𝑥𝐴𝑦𝐴 ) )
18 17 elrab ( 𝑦 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ↔ ( 𝑦 ∈ On ∧ 𝑦𝐴 ) )
19 14 16 18 3imtr4g ( 𝑦𝑧 → ( 𝑧 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } → 𝑦 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ) )
20 19 imp ( ( 𝑦𝑧𝑧 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ) → 𝑦 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } )
21 20 gen2 𝑦𝑧 ( ( 𝑦𝑧𝑧 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ) → 𝑦 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } )
22 dftr2 ( Tr { 𝑥 ∈ On ∣ 𝑥𝐴 } ↔ ∀ 𝑦𝑧 ( ( 𝑦𝑧𝑧 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ) → 𝑦 ∈ { 𝑥 ∈ On ∣ 𝑥𝐴 } ) )
23 21 22 mpbir Tr { 𝑥 ∈ On ∣ 𝑥𝐴 }
24 ssrab2 { 𝑥 ∈ On ∣ 𝑥𝐴 } ⊆ On
25 ordon Ord On
26 trssord ( ( Tr { 𝑥 ∈ On ∣ 𝑥𝐴 } ∧ { 𝑥 ∈ On ∣ 𝑥𝐴 } ⊆ On ∧ Ord On ) → Ord { 𝑥 ∈ On ∣ 𝑥𝐴 } )
27 23 24 25 26 mp3an Ord { 𝑥 ∈ On ∣ 𝑥𝐴 }
28 pwexg ( 𝐴𝑉 → 𝒫 𝐴 ∈ V )
29 numth3 ( 𝒫 𝐴 ∈ V → 𝒫 𝐴 ∈ dom card )
30 cardval2 ( 𝒫 𝐴 ∈ dom card → ( card ‘ 𝒫 𝐴 ) = { 𝑥 ∈ On ∣ 𝑥 ≺ 𝒫 𝐴 } )
31 28 29 30 3syl ( 𝐴𝑉 → ( card ‘ 𝒫 𝐴 ) = { 𝑥 ∈ On ∣ 𝑥 ≺ 𝒫 𝐴 } )
32 fvex ( card ‘ 𝒫 𝐴 ) ∈ V
33 31 32 eqeltrrdi ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥 ≺ 𝒫 𝐴 } ∈ V )
34 elex ( 𝐴𝑉𝐴 ∈ V )
35 canth2g ( 𝐴 ∈ V → 𝐴 ≺ 𝒫 𝐴 )
36 domsdomtr ( ( 𝑥𝐴𝐴 ≺ 𝒫 𝐴 ) → 𝑥 ≺ 𝒫 𝐴 )
37 35 36 sylan2 ( ( 𝑥𝐴𝐴 ∈ V ) → 𝑥 ≺ 𝒫 𝐴 )
38 37 expcom ( 𝐴 ∈ V → ( 𝑥𝐴𝑥 ≺ 𝒫 𝐴 ) )
39 38 ralrimivw ( 𝐴 ∈ V → ∀ 𝑥 ∈ On ( 𝑥𝐴𝑥 ≺ 𝒫 𝐴 ) )
40 34 39 syl ( 𝐴𝑉 → ∀ 𝑥 ∈ On ( 𝑥𝐴𝑥 ≺ 𝒫 𝐴 ) )
41 40 ss2rabd ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥𝐴 } ⊆ { 𝑥 ∈ On ∣ 𝑥 ≺ 𝒫 𝐴 } )
42 33 41 ssexd ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ V )
43 elong ( { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ V → ( { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On ↔ Ord { 𝑥 ∈ On ∣ 𝑥𝐴 } ) )
44 42 43 syl ( 𝐴𝑉 → ( { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On ↔ Ord { 𝑥 ∈ On ∣ 𝑥𝐴 } ) )
45 27 44 mpbiri ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On )