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

Theorem grur1 9805
Description: A characterization of Grothendieck universes, part 2. (Contributed by Mario Carneiro, 24-Jun-2013.)
Hypothesis
Ref Expression
gruina.1 𝐴 = (𝑈 ∩ On)
Assertion
Ref Expression
grur1 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → 𝑈 = (𝑅1𝐴))

Proof of Theorem grur1
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nss 3792 . . . . 5 𝑈 ⊆ (𝑅1𝐴) ↔ ∃𝑥(𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴)))
2 fveq2 6340 . . . . . . . . . . . 12 (𝑦 = 𝑥 → (rank‘𝑦) = (rank‘𝑥))
32eqeq1d 2750 . . . . . . . . . . 11 (𝑦 = 𝑥 → ((rank‘𝑦) = 𝐴 ↔ (rank‘𝑥) = 𝐴))
43rspcev 3437 . . . . . . . . . 10 ((𝑥𝑈 ∧ (rank‘𝑥) = 𝐴) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴)
54ex 449 . . . . . . . . 9 (𝑥𝑈 → ((rank‘𝑥) = 𝐴 → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
65ad2antrl 766 . . . . . . . 8 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → ((rank‘𝑥) = 𝐴 → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
7 simplr 809 . . . . . . . . . . . 12 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → 𝑈 (𝑅1 “ On))
8 simprl 811 . . . . . . . . . . . 12 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → 𝑥𝑈)
9 r1elssi 8829 . . . . . . . . . . . . 13 (𝑈 (𝑅1 “ On) → 𝑈 (𝑅1 “ On))
109sseld 3731 . . . . . . . . . . . 12 (𝑈 (𝑅1 “ On) → (𝑥𝑈𝑥 (𝑅1 “ On)))
117, 8, 10sylc 65 . . . . . . . . . . 11 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → 𝑥 (𝑅1 “ On))
12 tcrank 8908 . . . . . . . . . . 11 (𝑥 (𝑅1 “ On) → (rank‘𝑥) = (rank “ (TC‘𝑥)))
1311, 12syl 17 . . . . . . . . . 10 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → (rank‘𝑥) = (rank “ (TC‘𝑥)))
1413eleq2d 2813 . . . . . . . . 9 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → (𝐴 ∈ (rank‘𝑥) ↔ 𝐴 ∈ (rank “ (TC‘𝑥))))
15 gruelss 9779 . . . . . . . . . . . 12 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → 𝑥𝑈)
16 grutr 9778 . . . . . . . . . . . . 13 (𝑈 ∈ Univ → Tr 𝑈)
1716adantr 472 . . . . . . . . . . . 12 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → Tr 𝑈)
18 vex 3331 . . . . . . . . . . . . 13 𝑥 ∈ V
19 tcmin 8778 . . . . . . . . . . . . 13 (𝑥 ∈ V → ((𝑥𝑈 ∧ Tr 𝑈) → (TC‘𝑥) ⊆ 𝑈))
2018, 19ax-mp 5 . . . . . . . . . . . 12 ((𝑥𝑈 ∧ Tr 𝑈) → (TC‘𝑥) ⊆ 𝑈)
2115, 17, 20syl2anc 696 . . . . . . . . . . 11 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → (TC‘𝑥) ⊆ 𝑈)
22 rankf 8818 . . . . . . . . . . . . 13 rank: (𝑅1 “ On)⟶On
23 ffun 6197 . . . . . . . . . . . . 13 (rank: (𝑅1 “ On)⟶On → Fun rank)
2422, 23ax-mp 5 . . . . . . . . . . . 12 Fun rank
25 fvelima 6398 . . . . . . . . . . . 12 ((Fun rank ∧ 𝐴 ∈ (rank “ (TC‘𝑥))) → ∃𝑦 ∈ (TC‘𝑥)(rank‘𝑦) = 𝐴)
2624, 25mpan 708 . . . . . . . . . . 11 (𝐴 ∈ (rank “ (TC‘𝑥)) → ∃𝑦 ∈ (TC‘𝑥)(rank‘𝑦) = 𝐴)
27 ssrexv 3796 . . . . . . . . . . 11 ((TC‘𝑥) ⊆ 𝑈 → (∃𝑦 ∈ (TC‘𝑥)(rank‘𝑦) = 𝐴 → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
2821, 26, 27syl2im 40 . . . . . . . . . 10 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → (𝐴 ∈ (rank “ (TC‘𝑥)) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
2928ad2ant2r 800 . . . . . . . . 9 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → (𝐴 ∈ (rank “ (TC‘𝑥)) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
3014, 29sylbid 230 . . . . . . . 8 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → (𝐴 ∈ (rank‘𝑥) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
31 simprr 813 . . . . . . . . . 10 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → ¬ 𝑥 ∈ (𝑅1𝐴))
32 ne0i 4052 . . . . . . . . . . . . . . 15 (𝑥𝑈𝑈 ≠ ∅)
33 gruina.1 . . . . . . . . . . . . . . . 16 𝐴 = (𝑈 ∩ On)
3433gruina 9803 . . . . . . . . . . . . . . 15 ((𝑈 ∈ Univ ∧ 𝑈 ≠ ∅) → 𝐴 ∈ Inacc)
3532, 34sylan2 492 . . . . . . . . . . . . . 14 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → 𝐴 ∈ Inacc)
36 inawina 9675 . . . . . . . . . . . . . 14 (𝐴 ∈ Inacc → 𝐴 ∈ Inaccw)
37 winaon 9673 . . . . . . . . . . . . . 14 (𝐴 ∈ Inaccw𝐴 ∈ On)
3835, 36, 373syl 18 . . . . . . . . . . . . 13 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → 𝐴 ∈ On)
39 r1fnon 8791 . . . . . . . . . . . . . 14 𝑅1 Fn On
40 fndm 6139 . . . . . . . . . . . . . 14 (𝑅1 Fn On → dom 𝑅1 = On)
4139, 40ax-mp 5 . . . . . . . . . . . . 13 dom 𝑅1 = On
4238, 41syl6eleqr 2838 . . . . . . . . . . . 12 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → 𝐴 ∈ dom 𝑅1)
4342ad2ant2r 800 . . . . . . . . . . 11 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → 𝐴 ∈ dom 𝑅1)
44 rankr1ag 8826 . . . . . . . . . . 11 ((𝑥 (𝑅1 “ On) ∧ 𝐴 ∈ dom 𝑅1) → (𝑥 ∈ (𝑅1𝐴) ↔ (rank‘𝑥) ∈ 𝐴))
4511, 43, 44syl2anc 696 . . . . . . . . . 10 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → (𝑥 ∈ (𝑅1𝐴) ↔ (rank‘𝑥) ∈ 𝐴))
4631, 45mtbid 313 . . . . . . . . 9 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → ¬ (rank‘𝑥) ∈ 𝐴)
47 rankon 8819 . . . . . . . . . . . . 13 (rank‘𝑥) ∈ On
48 eloni 5882 . . . . . . . . . . . . . 14 ((rank‘𝑥) ∈ On → Ord (rank‘𝑥))
49 eloni 5882 . . . . . . . . . . . . . 14 (𝐴 ∈ On → Ord 𝐴)
50 ordtri3or 5904 . . . . . . . . . . . . . 14 ((Ord (rank‘𝑥) ∧ Ord 𝐴) → ((rank‘𝑥) ∈ 𝐴 ∨ (rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥)))
5148, 49, 50syl2an 495 . . . . . . . . . . . . 13 (((rank‘𝑥) ∈ On ∧ 𝐴 ∈ On) → ((rank‘𝑥) ∈ 𝐴 ∨ (rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥)))
5247, 38, 51sylancr 698 . . . . . . . . . . . 12 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → ((rank‘𝑥) ∈ 𝐴 ∨ (rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥)))
53 3orass 1075 . . . . . . . . . . . 12 (((rank‘𝑥) ∈ 𝐴 ∨ (rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥)) ↔ ((rank‘𝑥) ∈ 𝐴 ∨ ((rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥))))
5452, 53sylib 208 . . . . . . . . . . 11 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → ((rank‘𝑥) ∈ 𝐴 ∨ ((rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥))))
5554ord 391 . . . . . . . . . 10 ((𝑈 ∈ Univ ∧ 𝑥𝑈) → (¬ (rank‘𝑥) ∈ 𝐴 → ((rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥))))
5655ad2ant2r 800 . . . . . . . . 9 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → (¬ (rank‘𝑥) ∈ 𝐴 → ((rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥))))
5746, 56mpd 15 . . . . . . . 8 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → ((rank‘𝑥) = 𝐴𝐴 ∈ (rank‘𝑥)))
586, 30, 57mpjaod 395 . . . . . . 7 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴))) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴)
5958ex 449 . . . . . 6 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → ((𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴)) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
6059exlimdv 1998 . . . . 5 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → (∃𝑥(𝑥𝑈 ∧ ¬ 𝑥 ∈ (𝑅1𝐴)) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
611, 60syl5bi 232 . . . 4 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → (¬ 𝑈 ⊆ (𝑅1𝐴) → ∃𝑦𝑈 (rank‘𝑦) = 𝐴))
62 simpll 807 . . . . . . 7 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝑈 ∈ Univ)
63 ne0i 4052 . . . . . . . . . 10 (𝑦𝑈𝑈 ≠ ∅)
6463, 34sylan2 492 . . . . . . . . 9 ((𝑈 ∈ Univ ∧ 𝑦𝑈) → 𝐴 ∈ Inacc)
6564ad2ant2r 800 . . . . . . . 8 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝐴 ∈ Inacc)
6665, 36, 373syl 18 . . . . . . 7 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝐴 ∈ On)
67 simprl 811 . . . . . . 7 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝑦𝑈)
68 fveq2 6340 . . . . . . . . . 10 ((rank‘𝑦) = 𝐴 → (cf‘(rank‘𝑦)) = (cf‘𝐴))
6968ad2antll 767 . . . . . . . . 9 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → (cf‘(rank‘𝑦)) = (cf‘𝐴))
70 elina 9672 . . . . . . . . . . 11 (𝐴 ∈ Inacc ↔ (𝐴 ≠ ∅ ∧ (cf‘𝐴) = 𝐴 ∧ ∀𝑥𝐴 𝒫 𝑥𝐴))
7170simp2bi 1138 . . . . . . . . . 10 (𝐴 ∈ Inacc → (cf‘𝐴) = 𝐴)
7265, 71syl 17 . . . . . . . . 9 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → (cf‘𝐴) = 𝐴)
7369, 72eqtrd 2782 . . . . . . . 8 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → (cf‘(rank‘𝑦)) = 𝐴)
74 rankcf 9762 . . . . . . . . 9 ¬ 𝑦 ≺ (cf‘(rank‘𝑦))
75 fvex 6350 . . . . . . . . . 10 (cf‘(rank‘𝑦)) ∈ V
76 vex 3331 . . . . . . . . . 10 𝑦 ∈ V
77 domtri 9541 . . . . . . . . . 10 (((cf‘(rank‘𝑦)) ∈ V ∧ 𝑦 ∈ V) → ((cf‘(rank‘𝑦)) ≼ 𝑦 ↔ ¬ 𝑦 ≺ (cf‘(rank‘𝑦))))
7875, 76, 77mp2an 710 . . . . . . . . 9 ((cf‘(rank‘𝑦)) ≼ 𝑦 ↔ ¬ 𝑦 ≺ (cf‘(rank‘𝑦)))
7974, 78mpbir 221 . . . . . . . 8 (cf‘(rank‘𝑦)) ≼ 𝑦
8073, 79syl6eqbrr 4832 . . . . . . 7 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝐴𝑦)
81 grudomon 9802 . . . . . . 7 ((𝑈 ∈ Univ ∧ 𝐴 ∈ On ∧ (𝑦𝑈𝐴𝑦)) → 𝐴𝑈)
8262, 66, 67, 80, 81syl112anc 1467 . . . . . 6 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝐴𝑈)
83 elin 3927 . . . . . . . . 9 (𝐴 ∈ (𝑈 ∩ On) ↔ (𝐴𝑈𝐴 ∈ On))
8483biimpri 218 . . . . . . . 8 ((𝐴𝑈𝐴 ∈ On) → 𝐴 ∈ (𝑈 ∩ On))
8584, 33syl6eleqr 2838 . . . . . . 7 ((𝐴𝑈𝐴 ∈ On) → 𝐴𝐴)
86 ordirr 5890 . . . . . . . . 9 (Ord 𝐴 → ¬ 𝐴𝐴)
8749, 86syl 17 . . . . . . . 8 (𝐴 ∈ On → ¬ 𝐴𝐴)
8887adantl 473 . . . . . . 7 ((𝐴𝑈𝐴 ∈ On) → ¬ 𝐴𝐴)
8985, 88pm2.21dd 186 . . . . . 6 ((𝐴𝑈𝐴 ∈ On) → 𝑈 ⊆ (𝑅1𝐴))
9082, 66, 89syl2anc 696 . . . . 5 (((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) ∧ (𝑦𝑈 ∧ (rank‘𝑦) = 𝐴)) → 𝑈 ⊆ (𝑅1𝐴))
9190rexlimdvaa 3158 . . . 4 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → (∃𝑦𝑈 (rank‘𝑦) = 𝐴𝑈 ⊆ (𝑅1𝐴)))
9261, 91syld 47 . . 3 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → (¬ 𝑈 ⊆ (𝑅1𝐴) → 𝑈 ⊆ (𝑅1𝐴)))
9392pm2.18d 124 . 2 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → 𝑈 ⊆ (𝑅1𝐴))
9433grur1a 9804 . . 3 (𝑈 ∈ Univ → (𝑅1𝐴) ⊆ 𝑈)
9594adantr 472 . 2 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → (𝑅1𝐴) ⊆ 𝑈)
9693, 95eqssd 3749 1 ((𝑈 ∈ Univ ∧ 𝑈 (𝑅1 “ On)) → 𝑈 = (𝑅1𝐴))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wo 382  wa 383  w3o 1071   = wceq 1620  wex 1841  wcel 2127  wne 2920  wral 3038  wrex 3039  Vcvv 3328  cin 3702  wss 3703  c0 4046  𝒫 cpw 4290   cuni 4576   class class class wbr 4792  Tr wtr 4892  dom cdm 5254  cima 5257  Ord word 5871  Oncon0 5872  Fun wfun 6031   Fn wfn 6032  wf 6033  cfv 6037  cdom 8107  csdm 8108  TCctc 8773  𝑅1cr1 8786  rankcrnk 8787  cfccf 8924  Inaccwcwina 9667  Inacccina 9668  Univcgru 9775
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1859  ax-4 1874  ax-5 1976  ax-6 2042  ax-7 2078  ax-8 2129  ax-9 2136  ax-10 2156  ax-11 2171  ax-12 2184  ax-13 2379  ax-ext 2728  ax-rep 4911  ax-sep 4921  ax-nul 4929  ax-pow 4980  ax-pr 5043  ax-un 7102  ax-inf2 8699  ax-ac2 9448
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1073  df-3an 1074  df-tru 1623  df-ex 1842  df-nf 1847  df-sb 2035  df-eu 2599  df-mo 2600  df-clab 2735  df-cleq 2741  df-clel 2744  df-nfc 2879  df-ne 2921  df-ral 3043  df-rex 3044  df-reu 3045  df-rmo 3046  df-rab 3047  df-v 3330  df-sbc 3565  df-csb 3663  df-dif 3706  df-un 3708  df-in 3710  df-ss 3717  df-pss 3719  df-nul 4047  df-if 4219  df-pw 4292  df-sn 4310  df-pr 4312  df-tp 4314  df-op 4316  df-uni 4577  df-int 4616  df-iun 4662  df-iin 4663  df-br 4793  df-opab 4853  df-mpt 4870  df-tr 4893  df-id 5162  df-eprel 5167  df-po 5175  df-so 5176  df-fr 5213  df-se 5214  df-we 5215  df-xp 5260  df-rel 5261  df-cnv 5262  df-co 5263  df-dm 5264  df-rn 5265  df-res 5266  df-ima 5267  df-pred 5829  df-ord 5875  df-on 5876  df-lim 5877  df-suc 5878  df-iota 6000  df-fun 6039  df-fn 6040  df-f 6041  df-f1 6042  df-fo 6043  df-f1o 6044  df-fv 6045  df-isom 6046  df-riota 6762  df-ov 6804  df-oprab 6805  df-mpt2 6806  df-om 7219  df-1st 7321  df-2nd 7322  df-wrecs 7564  df-recs 7625  df-rdg 7663  df-1o 7717  df-er 7899  df-map 8013  df-en 8110  df-dom 8111  df-sdom 8112  df-fin 8113  df-tc 8774  df-r1 8788  df-rank 8789  df-card 8926  df-cf 8928  df-acn 8929  df-ac 9100  df-wina 9669  df-ina 9670  df-gru 9776
This theorem is referenced by:  grutsk  9807  bj-grur1  33300
  Copyright terms: Public domain W3C validator