Metamath Proof Explorer


Theorem hartogs

Description: The class of ordinals dominated by a given set is an ordinal. A shorter (when taking into account lemmas hartogslem1 and hartogslem2 ) proof can be given using the axiom of choice, see ondomon . As its label indicates, this result is used to justify the definition of the Hartogs function df-har . (Contributed by Jeff Hankins, 22-Oct-2009) (Revised by Mario Carneiro, 15-May-2015)

Ref Expression
Assertion hartogs ( 𝐴𝑉 → { 𝑥 ∈ 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 eqid { ⟨ 𝑟 , 𝑦 ⟩ ∣ ( ( ( dom 𝑟𝐴 ∧ ( I ↾ dom 𝑟 ) ⊆ 𝑟𝑟 ⊆ ( dom 𝑟 × dom 𝑟 ) ) ∧ ( 𝑟 ∖ I ) We dom 𝑟 ) ∧ 𝑦 = dom OrdIso ( ( 𝑟 ∖ I ) , dom 𝑟 ) ) } = { ⟨ 𝑟 , 𝑦 ⟩ ∣ ( ( ( dom 𝑟𝐴 ∧ ( I ↾ dom 𝑟 ) ⊆ 𝑟𝑟 ⊆ ( dom 𝑟 × dom 𝑟 ) ) ∧ ( 𝑟 ∖ I ) We dom 𝑟 ) ∧ 𝑦 = dom OrdIso ( ( 𝑟 ∖ I ) , dom 𝑟 ) ) }
29 eqid { ⟨ 𝑠 , 𝑡 ⟩ ∣ ∃ 𝑤𝑦𝑧𝑦 ( ( 𝑠 = ( 𝑔𝑤 ) ∧ 𝑡 = ( 𝑔𝑧 ) ) ∧ 𝑤 E 𝑧 ) } = { ⟨ 𝑠 , 𝑡 ⟩ ∣ ∃ 𝑤𝑦𝑧𝑦 ( ( 𝑠 = ( 𝑔𝑤 ) ∧ 𝑡 = ( 𝑔𝑧 ) ) ∧ 𝑤 E 𝑧 ) }
30 28 29 hartogslem2 ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ V )
31 elong ( { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ V → ( { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On ↔ Ord { 𝑥 ∈ On ∣ 𝑥𝐴 } ) )
32 30 31 syl ( 𝐴𝑉 → ( { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On ↔ Ord { 𝑥 ∈ On ∣ 𝑥𝐴 } ) )
33 27 32 mpbiri ( 𝐴𝑉 → { 𝑥 ∈ On ∣ 𝑥𝐴 } ∈ On )