Metamath Proof Explorer


Theorem omsmo

Description: A strictly monotonic ordinal function on the set of natural numbers is one-to-one. (Contributed by NM, 30-Nov-2003) (Revised by David Abernethy, 1-Jan-2014)

Ref Expression
Assertion omsmo ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → F : ω ⟶ 1-1 A

Proof

Step Hyp Ref Expression
1 simplr ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → F : ω ⟶ A
2 omsmolem ⊢ z ∈ ω → A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → y ∈ z → F ⁡ y ∈ F ⁡ z
3 2 adantl ⊢ y ∈ ω ∧ z ∈ ω → A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → y ∈ z → F ⁡ y ∈ F ⁡ z
4 3 imp ⊢ y ∈ ω ∧ z ∈ ω ∧ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → y ∈ z → F ⁡ y ∈ F ⁡ z
5 omsmolem ⊢ y ∈ ω → A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → z ∈ y → F ⁡ z ∈ F ⁡ y
6 5 adantr ⊢ y ∈ ω ∧ z ∈ ω → A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → z ∈ y → F ⁡ z ∈ F ⁡ y
7 6 imp ⊢ y ∈ ω ∧ z ∈ ω ∧ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → z ∈ y → F ⁡ z ∈ F ⁡ y
8 4 7 orim12d ⊢ y ∈ ω ∧ z ∈ ω ∧ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → y ∈ z ∨ z ∈ y → F ⁡ y ∈ F ⁡ z ∨ F ⁡ z ∈ F ⁡ y
9 8 ancoms ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x ∧ y ∈ ω ∧ z ∈ ω → y ∈ z ∨ z ∈ y → F ⁡ y ∈ F ⁡ z ∨ F ⁡ z ∈ F ⁡ y
10 9 con3d ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x ∧ y ∈ ω ∧ z ∈ ω → ¬ F ⁡ y ∈ F ⁡ z ∨ F ⁡ z ∈ F ⁡ y → ¬ y ∈ z ∨ z ∈ y
11 ffvelcdm ⊢ F : ω ⟶ A ∧ y ∈ ω → F ⁡ y ∈ A
12 ssel ⊢ A ⊆ On → F ⁡ y ∈ A → F ⁡ y ∈ On
13 11 12 syl5 ⊢ A ⊆ On → F : ω ⟶ A ∧ y ∈ ω → F ⁡ y ∈ On
14 13 expdimp ⊢ A ⊆ On ∧ F : ω ⟶ A → y ∈ ω → F ⁡ y ∈ On
15 eloni ⊢ F ⁡ y ∈ On → Ord ⁡ F ⁡ y
16 14 15 syl6 ⊢ A ⊆ On ∧ F : ω ⟶ A → y ∈ ω → Ord ⁡ F ⁡ y
17 ffvelcdm ⊢ F : ω ⟶ A ∧ z ∈ ω → F ⁡ z ∈ A
18 ssel ⊢ A ⊆ On → F ⁡ z ∈ A → F ⁡ z ∈ On
19 17 18 syl5 ⊢ A ⊆ On → F : ω ⟶ A ∧ z ∈ ω → F ⁡ z ∈ On
20 19 expdimp ⊢ A ⊆ On ∧ F : ω ⟶ A → z ∈ ω → F ⁡ z ∈ On
21 eloni ⊢ F ⁡ z ∈ On → Ord ⁡ F ⁡ z
22 20 21 syl6 ⊢ A ⊆ On ∧ F : ω ⟶ A → z ∈ ω → Ord ⁡ F ⁡ z
23 16 22 anim12d ⊢ A ⊆ On ∧ F : ω ⟶ A → y ∈ ω ∧ z ∈ ω → Ord ⁡ F ⁡ y ∧ Ord ⁡ F ⁡ z
24 23 imp ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ y ∈ ω ∧ z ∈ ω → Ord ⁡ F ⁡ y ∧ Ord ⁡ F ⁡ z
25 ordtri3 ⊢ Ord ⁡ F ⁡ y ∧ Ord ⁡ F ⁡ z → F ⁡ y = F ⁡ z ↔ ¬ F ⁡ y ∈ F ⁡ z ∨ F ⁡ z ∈ F ⁡ y
26 24 25 syl ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ y ∈ ω ∧ z ∈ ω → F ⁡ y = F ⁡ z ↔ ¬ F ⁡ y ∈ F ⁡ z ∨ F ⁡ z ∈ F ⁡ y
27 26 adantlr ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x ∧ y ∈ ω ∧ z ∈ ω → F ⁡ y = F ⁡ z ↔ ¬ F ⁡ y ∈ F ⁡ z ∨ F ⁡ z ∈ F ⁡ y
28 nnord ⊢ y ∈ ω → Ord ⁡ y
29 nnord ⊢ z ∈ ω → Ord ⁡ z
30 ordtri3 ⊢ Ord ⁡ y ∧ Ord ⁡ z → y = z ↔ ¬ y ∈ z ∨ z ∈ y
31 28 29 30 syl2an ⊢ y ∈ ω ∧ z ∈ ω → y = z ↔ ¬ y ∈ z ∨ z ∈ y
32 31 adantl ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x ∧ y ∈ ω ∧ z ∈ ω → y = z ↔ ¬ y ∈ z ∨ z ∈ y
33 10 27 32 3imtr4d ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x ∧ y ∈ ω ∧ z ∈ ω → F ⁡ y = F ⁡ z → y = z
34 33 ralrimivva ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → ∀ y ∈ ω ∀ z ∈ ω F ⁡ y = F ⁡ z → y = z
35 dff13 ⊢ F : ω ⟶ 1-1 A ↔ F : ω ⟶ A ∧ ∀ y ∈ ω ∀ z ∈ ω F ⁡ y = F ⁡ z → y = z
36 1 34 35 sylanbrc ⊢ A ⊆ On ∧ F : ω ⟶ A ∧ ∀ x ∈ ω F ⁡ x ∈ F ⁡ suc ⁡ x → F : ω ⟶ 1-1 A