MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  rankonidlem Structured version   Visualization version   GIF version

Theorem rankonidlem 9853
Description: Lemma for rankonid 9854. (Contributed by NM, 14-Oct-2003.) (Revised by Mario Carneiro, 22-Mar-2013.)
Assertion
Ref Expression
rankonidlem (𝐴 ∈ dom 𝑅1 → (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴))

Proof of Theorem rankonidlem
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 r1funlim 9791 . . . . 5 (Fun 𝑅1 ∧ Lim dom 𝑅1)
21simpri 484 . . . 4 Lim dom 𝑅1
3 limord 6431 . . . 4 (Lim dom 𝑅1 → Ord dom 𝑅1)
42, 3ax-mp 5 . . 3 Ord dom 𝑅1
5 ordelon 6395 . . 3 ((Ord dom 𝑅1𝐴 ∈ dom 𝑅1) → 𝐴 ∈ On)
64, 5mpan 688 . 2 (𝐴 ∈ dom 𝑅1𝐴 ∈ On)
7 eleq1 2813 . . . 4 (𝑥 = 𝑦 → (𝑥 ∈ dom 𝑅1𝑦 ∈ dom 𝑅1))
8 eleq1 2813 . . . . 5 (𝑥 = 𝑦 → (𝑥 (𝑅1 “ On) ↔ 𝑦 (𝑅1 “ On)))
9 fveq2 6896 . . . . . 6 (𝑥 = 𝑦 → (rank‘𝑥) = (rank‘𝑦))
10 id 22 . . . . . 6 (𝑥 = 𝑦𝑥 = 𝑦)
119, 10eqeq12d 2741 . . . . 5 (𝑥 = 𝑦 → ((rank‘𝑥) = 𝑥 ↔ (rank‘𝑦) = 𝑦))
128, 11anbi12d 630 . . . 4 (𝑥 = 𝑦 → ((𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥) ↔ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)))
137, 12imbi12d 343 . . 3 (𝑥 = 𝑦 → ((𝑥 ∈ dom 𝑅1 → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)) ↔ (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦))))
14 eleq1 2813 . . . 4 (𝑥 = 𝐴 → (𝑥 ∈ dom 𝑅1𝐴 ∈ dom 𝑅1))
15 eleq1 2813 . . . . 5 (𝑥 = 𝐴 → (𝑥 (𝑅1 “ On) ↔ 𝐴 (𝑅1 “ On)))
16 fveq2 6896 . . . . . 6 (𝑥 = 𝐴 → (rank‘𝑥) = (rank‘𝐴))
17 id 22 . . . . . 6 (𝑥 = 𝐴𝑥 = 𝐴)
1816, 17eqeq12d 2741 . . . . 5 (𝑥 = 𝐴 → ((rank‘𝑥) = 𝑥 ↔ (rank‘𝐴) = 𝐴))
1915, 18anbi12d 630 . . . 4 (𝑥 = 𝐴 → ((𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥) ↔ (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴)))
2014, 19imbi12d 343 . . 3 (𝑥 = 𝐴 → ((𝑥 ∈ dom 𝑅1 → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)) ↔ (𝐴 ∈ dom 𝑅1 → (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴))))
21 ordtr1 6414 . . . . . . . . . 10 (Ord dom 𝑅1 → ((𝑦𝑥𝑥 ∈ dom 𝑅1) → 𝑦 ∈ dom 𝑅1))
224, 21ax-mp 5 . . . . . . . . 9 ((𝑦𝑥𝑥 ∈ dom 𝑅1) → 𝑦 ∈ dom 𝑅1)
2322ancoms 457 . . . . . . . 8 ((𝑥 ∈ dom 𝑅1𝑦𝑥) → 𝑦 ∈ dom 𝑅1)
24 pm5.5 360 . . . . . . . 8 (𝑦 ∈ dom 𝑅1 → ((𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) ↔ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)))
2523, 24syl 17 . . . . . . 7 ((𝑥 ∈ dom 𝑅1𝑦𝑥) → ((𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) ↔ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)))
2625ralbidva 3165 . . . . . 6 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) ↔ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)))
27 simplr 767 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦𝑥)
28 ordelon 6395 . . . . . . . . . . . . . . . . . . . . . 22 ((Ord dom 𝑅1𝑥 ∈ dom 𝑅1) → 𝑥 ∈ On)
294, 28mpan 688 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ dom 𝑅1𝑥 ∈ On)
3029ad2antrr 724 . . . . . . . . . . . . . . . . . . . 20 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ On)
31 eloni 6381 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ On → Ord 𝑥)
3230, 31syl 17 . . . . . . . . . . . . . . . . . . 19 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → Ord 𝑥)
33 ordelsuc 7824 . . . . . . . . . . . . . . . . . . 19 ((𝑦𝑥 ∧ Ord 𝑥) → (𝑦𝑥 ↔ suc 𝑦𝑥))
3427, 32, 33syl2anc 582 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑦𝑥 ↔ suc 𝑦𝑥))
3527, 34mpbid 231 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → suc 𝑦𝑥)
3623adantr 479 . . . . . . . . . . . . . . . . . . 19 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ dom 𝑅1)
37 limsuc 7854 . . . . . . . . . . . . . . . . . . . 20 (Lim dom 𝑅1 → (𝑦 ∈ dom 𝑅1 ↔ suc 𝑦 ∈ dom 𝑅1))
382, 37ax-mp 5 . . . . . . . . . . . . . . . . . . 19 (𝑦 ∈ dom 𝑅1 ↔ suc 𝑦 ∈ dom 𝑅1)
3936, 38sylib 217 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → suc 𝑦 ∈ dom 𝑅1)
40 simpll 765 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ dom 𝑅1)
41 r1ord3g 9804 . . . . . . . . . . . . . . . . . 18 ((suc 𝑦 ∈ dom 𝑅1𝑥 ∈ dom 𝑅1) → (suc 𝑦𝑥 → (𝑅1‘suc 𝑦) ⊆ (𝑅1𝑥)))
4239, 40, 41syl2anc 582 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (suc 𝑦𝑥 → (𝑅1‘suc 𝑦) ⊆ (𝑅1𝑥)))
4335, 42mpd 15 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑅1‘suc 𝑦) ⊆ (𝑅1𝑥))
44 rankidb 9825 . . . . . . . . . . . . . . . . . 18 (𝑦 (𝑅1 “ On) → 𝑦 ∈ (𝑅1‘suc (rank‘𝑦)))
4544ad2antrl 726 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ (𝑅1‘suc (rank‘𝑦)))
46 suceq 6437 . . . . . . . . . . . . . . . . . . 19 ((rank‘𝑦) = 𝑦 → suc (rank‘𝑦) = suc 𝑦)
4746ad2antll 727 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → suc (rank‘𝑦) = suc 𝑦)
4847fveq2d 6900 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑅1‘suc (rank‘𝑦)) = (𝑅1‘suc 𝑦))
4945, 48eleqtrd 2827 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ (𝑅1‘suc 𝑦))
5043, 49sseldd 3977 . . . . . . . . . . . . . . 15 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ (𝑅1𝑥))
5150ex 411 . . . . . . . . . . . . . 14 ((𝑥 ∈ dom 𝑅1𝑦𝑥) → ((𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → 𝑦 ∈ (𝑅1𝑥)))
5251ralimdva 3156 . . . . . . . . . . . . 13 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → ∀𝑦𝑥 𝑦 ∈ (𝑅1𝑥)))
5352imp 405 . . . . . . . . . . . 12 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → ∀𝑦𝑥 𝑦 ∈ (𝑅1𝑥))
54 dfss3 3965 . . . . . . . . . . . 12 (𝑥 ⊆ (𝑅1𝑥) ↔ ∀𝑦𝑥 𝑦 ∈ (𝑅1𝑥))
5553, 54sylibr 233 . . . . . . . . . . 11 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ⊆ (𝑅1𝑥))
56 vex 3465 . . . . . . . . . . . 12 𝑥 ∈ V
5756elpw 4608 . . . . . . . . . . 11 (𝑥 ∈ 𝒫 (𝑅1𝑥) ↔ 𝑥 ⊆ (𝑅1𝑥))
5855, 57sylibr 233 . . . . . . . . . 10 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ 𝒫 (𝑅1𝑥))
59 r1sucg 9794 . . . . . . . . . . 11 (𝑥 ∈ dom 𝑅1 → (𝑅1‘suc 𝑥) = 𝒫 (𝑅1𝑥))
6059adantr 479 . . . . . . . . . 10 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑅1‘suc 𝑥) = 𝒫 (𝑅1𝑥))
6158, 60eleqtrrd 2828 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ (𝑅1‘suc 𝑥))
62 r1elwf 9821 . . . . . . . . 9 (𝑥 ∈ (𝑅1‘suc 𝑥) → 𝑥 (𝑅1 “ On))
6361, 62syl 17 . . . . . . . 8 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 (𝑅1 “ On))
64 rankval3b 9851 . . . . . . . . . 10 (𝑥 (𝑅1 “ On) → (rank‘𝑥) = {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧})
6563, 64syl 17 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (rank‘𝑥) = {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧})
66 eleq1 2813 . . . . . . . . . . . . . . . 16 ((rank‘𝑦) = 𝑦 → ((rank‘𝑦) ∈ 𝑧𝑦𝑧))
6766adantl 480 . . . . . . . . . . . . . . 15 ((𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → ((rank‘𝑦) ∈ 𝑧𝑦𝑧))
6867ralimi 3072 . . . . . . . . . . . . . 14 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → ∀𝑦𝑥 ((rank‘𝑦) ∈ 𝑧𝑦𝑧))
69 ralbi 3092 . . . . . . . . . . . . . 14 (∀𝑦𝑥 ((rank‘𝑦) ∈ 𝑧𝑦𝑧) → (∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧 ↔ ∀𝑦𝑥 𝑦𝑧))
7068, 69syl 17 . . . . . . . . . . . . 13 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → (∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧 ↔ ∀𝑦𝑥 𝑦𝑧))
71 dfss3 3965 . . . . . . . . . . . . 13 (𝑥𝑧 ↔ ∀𝑦𝑥 𝑦𝑧)
7270, 71bitr4di 288 . . . . . . . . . . . 12 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → (∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧𝑥𝑧))
7372rabbidv 3426 . . . . . . . . . . 11 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧} = {𝑧 ∈ On ∣ 𝑥𝑧})
7473inteqd 4955 . . . . . . . . . 10 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧} = {𝑧 ∈ On ∣ 𝑥𝑧})
7574adantl 480 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧} = {𝑧 ∈ On ∣ 𝑥𝑧})
7629adantr 479 . . . . . . . . . 10 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ On)
77 intmin 4972 . . . . . . . . . 10 (𝑥 ∈ On → {𝑧 ∈ On ∣ 𝑥𝑧} = 𝑥)
7876, 77syl 17 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → {𝑧 ∈ On ∣ 𝑥𝑧} = 𝑥)
7965, 75, 783eqtrd 2769 . . . . . . . 8 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (rank‘𝑥) = 𝑥)
8063, 79jca 510 . . . . . . 7 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥))
8180ex 411 . . . . . 6 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)))
8226, 81sylbid 239 . . . . 5 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)))
8382com12 32 . . . 4 (∀𝑦𝑥 (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑥 ∈ dom 𝑅1 → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)))
8483a1i 11 . . 3 (𝑥 ∈ On → (∀𝑦𝑥 (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑥 ∈ dom 𝑅1 → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥))))
8513, 20, 84tfis3 7863 . 2 (𝐴 ∈ On → (𝐴 ∈ dom 𝑅1 → (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴)))
866, 85mpcom 38 1 (𝐴 ∈ dom 𝑅1 → (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 394   = wceq 1533  wcel 2098  wral 3050  {crab 3418  wss 3944  𝒫 cpw 4604   cuni 4909   cint 4950  dom cdm 5678  cima 5681  Ord word 6370  Oncon0 6371  Lim wlim 6372  suc csuc 6373  Fun wfun 6543  cfv 6549  𝑅1cr1 9787  rankcrnk 9788
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1789  ax-4 1803  ax-5 1905  ax-6 1963  ax-7 2003  ax-8 2100  ax-9 2108  ax-10 2129  ax-11 2146  ax-12 2166  ax-ext 2696  ax-sep 5300  ax-nul 5307  ax-pow 5365  ax-pr 5429  ax-un 7741
This theorem depends on definitions:  df-bi 206  df-an 395  df-or 846  df-3or 1085  df-3an 1086  df-tru 1536  df-fal 1546  df-ex 1774  df-nf 1778  df-sb 2060  df-mo 2528  df-eu 2557  df-clab 2703  df-cleq 2717  df-clel 2802  df-nfc 2877  df-ne 2930  df-ral 3051  df-rex 3060  df-reu 3364  df-rab 3419  df-v 3463  df-sbc 3774  df-csb 3890  df-dif 3947  df-un 3949  df-in 3951  df-ss 3961  df-pss 3964  df-nul 4323  df-if 4531  df-pw 4606  df-sn 4631  df-pr 4633  df-op 4637  df-uni 4910  df-int 4951  df-iun 4999  df-br 5150  df-opab 5212  df-mpt 5233  df-tr 5267  df-id 5576  df-eprel 5582  df-po 5590  df-so 5591  df-fr 5633  df-we 5635  df-xp 5684  df-rel 5685  df-cnv 5686  df-co 5687  df-dm 5688  df-rn 5689  df-res 5690  df-ima 5691  df-pred 6307  df-ord 6374  df-on 6375  df-lim 6376  df-suc 6377  df-iota 6501  df-fun 6551  df-fn 6552  df-f 6553  df-f1 6554  df-fo 6555  df-f1o 6556  df-fv 6557  df-ov 7422  df-om 7872  df-2nd 7995  df-frecs 8287  df-wrecs 8318  df-recs 8392  df-rdg 8431  df-r1 9789  df-rank 9790
This theorem is referenced by:  rankonid  9854  onwf  9855  onssr1  9856
  Copyright terms: Public domain W3C validator