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

Theorem rankonidlem 9727
Description: Lemma for rankonid 9728. (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 9665 . . . . 5 (Fun 𝑅1 ∧ Lim dom 𝑅1)
21simpri 485 . . . 4 Lim dom 𝑅1
3 limord 6373 . . . 4 (Lim dom 𝑅1 → Ord dom 𝑅1)
42, 3ax-mp 5 . . 3 Ord dom 𝑅1
5 ordelon 6336 . . 3 ((Ord dom 𝑅1𝐴 ∈ dom 𝑅1) → 𝐴 ∈ On)
64, 5mpan 690 . 2 (𝐴 ∈ dom 𝑅1𝐴 ∈ On)
7 eleq1 2819 . . . 4 (𝑥 = 𝑦 → (𝑥 ∈ dom 𝑅1𝑦 ∈ dom 𝑅1))
8 eleq1 2819 . . . . 5 (𝑥 = 𝑦 → (𝑥 (𝑅1 “ On) ↔ 𝑦 (𝑅1 “ On)))
9 fveq2 6828 . . . . . 6 (𝑥 = 𝑦 → (rank‘𝑥) = (rank‘𝑦))
10 id 22 . . . . . 6 (𝑥 = 𝑦𝑥 = 𝑦)
119, 10eqeq12d 2747 . . . . 5 (𝑥 = 𝑦 → ((rank‘𝑥) = 𝑥 ↔ (rank‘𝑦) = 𝑦))
128, 11anbi12d 632 . . . 4 (𝑥 = 𝑦 → ((𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥) ↔ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)))
137, 12imbi12d 344 . . 3 (𝑥 = 𝑦 → ((𝑥 ∈ dom 𝑅1 → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)) ↔ (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦))))
14 eleq1 2819 . . . 4 (𝑥 = 𝐴 → (𝑥 ∈ dom 𝑅1𝐴 ∈ dom 𝑅1))
15 eleq1 2819 . . . . 5 (𝑥 = 𝐴 → (𝑥 (𝑅1 “ On) ↔ 𝐴 (𝑅1 “ On)))
16 fveq2 6828 . . . . . 6 (𝑥 = 𝐴 → (rank‘𝑥) = (rank‘𝐴))
17 id 22 . . . . . 6 (𝑥 = 𝐴𝑥 = 𝐴)
1816, 17eqeq12d 2747 . . . . 5 (𝑥 = 𝐴 → ((rank‘𝑥) = 𝑥 ↔ (rank‘𝐴) = 𝐴))
1915, 18anbi12d 632 . . . 4 (𝑥 = 𝐴 → ((𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥) ↔ (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴)))
2014, 19imbi12d 344 . . 3 (𝑥 = 𝐴 → ((𝑥 ∈ dom 𝑅1 → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)) ↔ (𝐴 ∈ dom 𝑅1 → (𝐴 (𝑅1 “ On) ∧ (rank‘𝐴) = 𝐴))))
21 ordtr1 6356 . . . . . . . . . 10 (Ord dom 𝑅1 → ((𝑦𝑥𝑥 ∈ dom 𝑅1) → 𝑦 ∈ dom 𝑅1))
224, 21ax-mp 5 . . . . . . . . 9 ((𝑦𝑥𝑥 ∈ dom 𝑅1) → 𝑦 ∈ dom 𝑅1)
2322ancoms 458 . . . . . . . 8 ((𝑥 ∈ dom 𝑅1𝑦𝑥) → 𝑦 ∈ dom 𝑅1)
24 pm5.5 361 . . . . . . . 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 3153 . . . . . 6 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 ∈ dom 𝑅1 → (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) ↔ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)))
27 simplr 768 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦𝑥)
28 ordelon 6336 . . . . . . . . . . . . . . . . . . . . . 22 ((Ord dom 𝑅1𝑥 ∈ dom 𝑅1) → 𝑥 ∈ On)
294, 28mpan 690 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ dom 𝑅1𝑥 ∈ On)
3029ad2antrr 726 . . . . . . . . . . . . . . . . . . . 20 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ On)
31 eloni 6322 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ On → Ord 𝑥)
3230, 31syl 17 . . . . . . . . . . . . . . . . . . 19 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → Ord 𝑥)
33 ordelsuc 7756 . . . . . . . . . . . . . . . . . . 19 ((𝑦𝑥 ∧ Ord 𝑥) → (𝑦𝑥 ↔ suc 𝑦𝑥))
3427, 32, 33syl2anc 584 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑦𝑥 ↔ suc 𝑦𝑥))
3527, 34mpbid 232 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → suc 𝑦𝑥)
3623adantr 480 . . . . . . . . . . . . . . . . . . 19 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ dom 𝑅1)
37 limsuc 7785 . . . . . . . . . . . . . . . . . . . 20 (Lim dom 𝑅1 → (𝑦 ∈ dom 𝑅1 ↔ suc 𝑦 ∈ dom 𝑅1))
382, 37ax-mp 5 . . . . . . . . . . . . . . . . . . 19 (𝑦 ∈ dom 𝑅1 ↔ suc 𝑦 ∈ dom 𝑅1)
3936, 38sylib 218 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → suc 𝑦 ∈ dom 𝑅1)
40 simpll 766 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ dom 𝑅1)
41 r1ord3g 9678 . . . . . . . . . . . . . . . . . 18 ((suc 𝑦 ∈ dom 𝑅1𝑥 ∈ dom 𝑅1) → (suc 𝑦𝑥 → (𝑅1‘suc 𝑦) ⊆ (𝑅1𝑥)))
4239, 40, 41syl2anc 584 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (suc 𝑦𝑥 → (𝑅1‘suc 𝑦) ⊆ (𝑅1𝑥)))
4335, 42mpd 15 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑅1‘suc 𝑦) ⊆ (𝑅1𝑥))
44 rankidb 9699 . . . . . . . . . . . . . . . . . 18 (𝑦 (𝑅1 “ On) → 𝑦 ∈ (𝑅1‘suc (rank‘𝑦)))
4544ad2antrl 728 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ (𝑅1‘suc (rank‘𝑦)))
46 suceq 6380 . . . . . . . . . . . . . . . . . . 19 ((rank‘𝑦) = 𝑦 → suc (rank‘𝑦) = suc 𝑦)
4746ad2antll 729 . . . . . . . . . . . . . . . . . 18 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → suc (rank‘𝑦) = suc 𝑦)
4847fveq2d 6832 . . . . . . . . . . . . . . . . 17 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑅1‘suc (rank‘𝑦)) = (𝑅1‘suc 𝑦))
4945, 48eleqtrd 2833 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ (𝑅1‘suc 𝑦))
5043, 49sseldd 3930 . . . . . . . . . . . . . . 15 (((𝑥 ∈ dom 𝑅1𝑦𝑥) ∧ (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑦 ∈ (𝑅1𝑥))
5150ex 412 . . . . . . . . . . . . . 14 ((𝑥 ∈ dom 𝑅1𝑦𝑥) → ((𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → 𝑦 ∈ (𝑅1𝑥)))
5251ralimdva 3144 . . . . . . . . . . . . 13 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → ∀𝑦𝑥 𝑦 ∈ (𝑅1𝑥)))
5352imp 406 . . . . . . . . . . . 12 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → ∀𝑦𝑥 𝑦 ∈ (𝑅1𝑥))
54 dfss3 3918 . . . . . . . . . . . 12 (𝑥 ⊆ (𝑅1𝑥) ↔ ∀𝑦𝑥 𝑦 ∈ (𝑅1𝑥))
5553, 54sylibr 234 . . . . . . . . . . 11 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ⊆ (𝑅1𝑥))
56 vex 3440 . . . . . . . . . . . 12 𝑥 ∈ V
5756elpw 4553 . . . . . . . . . . 11 (𝑥 ∈ 𝒫 (𝑅1𝑥) ↔ 𝑥 ⊆ (𝑅1𝑥))
5855, 57sylibr 234 . . . . . . . . . 10 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ 𝒫 (𝑅1𝑥))
59 r1sucg 9668 . . . . . . . . . . 11 (𝑥 ∈ dom 𝑅1 → (𝑅1‘suc 𝑥) = 𝒫 (𝑅1𝑥))
6059adantr 480 . . . . . . . . . 10 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑅1‘suc 𝑥) = 𝒫 (𝑅1𝑥))
6158, 60eleqtrrd 2834 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ (𝑅1‘suc 𝑥))
62 r1elwf 9695 . . . . . . . . 9 (𝑥 ∈ (𝑅1‘suc 𝑥) → 𝑥 (𝑅1 “ On))
6361, 62syl 17 . . . . . . . 8 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 (𝑅1 “ On))
64 rankval3b 9725 . . . . . . . . . 10 (𝑥 (𝑅1 “ On) → (rank‘𝑥) = {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧})
6563, 64syl 17 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (rank‘𝑥) = {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧})
66 eleq1 2819 . . . . . . . . . . . . . . . 16 ((rank‘𝑦) = 𝑦 → ((rank‘𝑦) ∈ 𝑧𝑦𝑧))
6766adantl 481 . . . . . . . . . . . . . . 15 ((𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → ((rank‘𝑦) ∈ 𝑧𝑦𝑧))
6867ralimi 3069 . . . . . . . . . . . . . 14 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → ∀𝑦𝑥 ((rank‘𝑦) ∈ 𝑧𝑦𝑧))
69 ralbi 3087 . . . . . . . . . . . . . 14 (∀𝑦𝑥 ((rank‘𝑦) ∈ 𝑧𝑦𝑧) → (∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧 ↔ ∀𝑦𝑥 𝑦𝑧))
7068, 69syl 17 . . . . . . . . . . . . 13 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → (∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧 ↔ ∀𝑦𝑥 𝑦𝑧))
71 dfss3 3918 . . . . . . . . . . . . 13 (𝑥𝑧 ↔ ∀𝑦𝑥 𝑦𝑧)
7270, 71bitr4di 289 . . . . . . . . . . . 12 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → (∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧𝑥𝑧))
7372rabbidv 3402 . . . . . . . . . . 11 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧} = {𝑧 ∈ On ∣ 𝑥𝑧})
7473inteqd 4902 . . . . . . . . . 10 (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧} = {𝑧 ∈ On ∣ 𝑥𝑧})
7574adantl 481 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → {𝑧 ∈ On ∣ ∀𝑦𝑥 (rank‘𝑦) ∈ 𝑧} = {𝑧 ∈ On ∣ 𝑥𝑧})
7629adantr 480 . . . . . . . . . 10 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → 𝑥 ∈ On)
77 intmin 4918 . . . . . . . . . 10 (𝑥 ∈ On → {𝑧 ∈ On ∣ 𝑥𝑧} = 𝑥)
7876, 77syl 17 . . . . . . . . 9 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → {𝑧 ∈ On ∣ 𝑥𝑧} = 𝑥)
7965, 75, 783eqtrd 2770 . . . . . . . 8 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (rank‘𝑥) = 𝑥)
8063, 79jca 511 . . . . . . 7 ((𝑥 ∈ dom 𝑅1 ∧ ∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦)) → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥))
8180ex 412 . . . . . 6 (𝑥 ∈ dom 𝑅1 → (∀𝑦𝑥 (𝑦 (𝑅1 “ On) ∧ (rank‘𝑦) = 𝑦) → (𝑥 (𝑅1 “ On) ∧ (rank‘𝑥) = 𝑥)))
8226, 81sylbid 240 . . . . 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 7794 . 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 206  wa 395   = wceq 1541  wcel 2111  wral 3047  {crab 3395  wss 3897  𝒫 cpw 4549   cuni 4858   cint 4897  dom cdm 5619  cima 5622  Ord word 6311  Oncon0 6312  Lim wlim 6313  suc csuc 6314  Fun wfun 6481  cfv 6487  𝑅1cr1 9661  rankcrnk 9662
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-sep 5236  ax-nul 5246  ax-pow 5305  ax-pr 5372  ax-un 7674
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-ral 3048  df-rex 3057  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3737  df-csb 3846  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3917  df-nul 4283  df-if 4475  df-pw 4551  df-sn 4576  df-pr 4578  df-op 4582  df-uni 4859  df-int 4898  df-iun 4943  df-br 5094  df-opab 5156  df-mpt 5175  df-tr 5201  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6254  df-ord 6315  df-on 6316  df-lim 6317  df-suc 6318  df-iota 6443  df-fun 6489  df-fn 6490  df-f 6491  df-f1 6492  df-fo 6493  df-f1o 6494  df-fv 6495  df-ov 7355  df-om 7803  df-2nd 7928  df-frecs 8217  df-wrecs 8248  df-recs 8297  df-rdg 8335  df-r1 9663  df-rank 9664
This theorem is referenced by:  rankonid  9728  onwf  9729  onssr1  9730
  Copyright terms: Public domain W3C validator