HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem rankr1 3518
Description: A relationship between the rank function and the cumulative hierarchy of sets function R1. Proposition 9.15(2) of [TakeutiZaring] p. 79.
Hypothesis
Ref Expression
rankr1.1 |- A e. V
Assertion
Ref Expression
rankr1 |- (B = (rank`
A) <-> (-. A e. (R1` B) /\ A e. (R1` suc B)))

Proof of Theorem rankr1
StepHypRef Expression
1 rankon 3515 . . . . 5 |- (rank` A) e. On
2 eleq1 1149 . . . . 5 |- (B = (rank`
A) -> (B e. On <-> (rank` A) e. On))
31, 2mpbiri 169 . . . 4 |- (B = (rank`
A) -> B e. On)
4 eloni 2209 . . . . 5 |- (B e. On -> Ord B)
5 ordzsl 2366 . . . . . 6 |- (Ord B <-> (B = (/) \/ E.x e. On B = suc x \/ Lim B))
6 noel 1711 . . . . . . . . 9 |- -. A e. (/)
7 fveq2 2832 . . . . . . . . . . 11 |- (B = (/) -> (R1` B) = (R1` (/)))
8 r10 3495 . . . . . . . . . . 11 |- (R1` (/)) = (/)
97, 8syl6eq 1140 . . . . . . . . . 10 |- (B = (/) -> (R1` B) = (/))
109eleq2d 1156 . . . . . . . . 9 |- (B = (/) -> (A e. (R1` B) <-> A e. (/)))
116, 10mtbiri 539 . . . . . . . 8 |- (B = (/) -> -. A e. (R1` B))
1211a1d 14 . . . . . . 7 |- (B = (/) -> (B = (rank` A) -> -. A e. (R1` B)))
13 visset 1350 . . . . . . . . . . . . . . 15 |- x e. V
1413sucid 2304 . . . . . . . . . . . . . 14 |- x e. suc x
15 eleq2 1150 . . . . . . . . . . . . . 14 |- (B = suc x -> (x e. B <-> x e. suc x))
1614, 15mpbiri 169 . . . . . . . . . . . . 13 |- (B = suc x -> x e. B)
1716adantl 305 . . . . . . . . . . . 12 |- ((x e. On /\ B = suc x) -> x e. B)
18 ontri1 2232 . . . . . . . . . . . . . 14 |- ((B e. On /\ x e. On) -> (B (_ x <-> -. x e. B))
1918bicon2d 404 . . . . . . . . . . . . 13 |- ((B e. On /\ x e. On) -> (x e. B <-> -. B (_ x))
20 eleq1a 1158 . . . . . . . . . . . . . . 15 |- (suc x e. On -> (B = suc x -> B e. On))
2120imp 277 . . . . . . . . . . . . . 14 |- ((suc x e. On /\ B = suc x) -> B e. On)
22 suceloni 2314 . . . . . . . . . . . . . 14 |- (x e. On -> suc x e. On)
2321, 22sylan 343 . . . . . . . . . . . . 13 |- ((x e. On /\ B = suc x) -> B e. On)
24 pm3.26 256 . . . . . . . . . . . . 13 |- ((x e. On /\ B = suc x) -> x e. On)
2519, 23, 24sylanc 361 . . . . . . . . . . . 12 |- ((x e. On /\ B = suc x) -> (x e. B <-> -. B (_ x))
2617, 25mpbid 170 . . . . . . . . . . 11 |- ((x e. On /\ B = suc x) -> -. B (_ x)
2726adantr 306 . . . . . . . . . 10 |- (((x e. On /\ B = suc x) /\ B = (rank`
A)) -> -. B (_ x)
28 rankr1.1 . . . . . . . . . . . . . . . . . . 19 |- A e. V
2928rankval 3512 . . . . . . . . . . . . . . . . . 18 |- (rank` A) = |^|{y e. On | A e. (R1` suc y)}
3029cleq2i 1111 . . . . . . . . . . . . . . . . 17 |- (B = (rank`
A) <-> B = |^|{y e. On | A e. (R1` suc y)})
3130biimp 133 . . . . . . . . . . . . . . . 16 |- (B = (rank`
A) -> B = |^|{y e. On | A e. (R1` suc y)})
3231sseq1d 1527 . . . . . . . . . . . . . . 15 |- (B = (rank`
A) -> (B (_ x <-> |^|{y e. On | A e. (R1` suc y)} (_ x))
33 suceq 2288 . . . . . . . . . . . . . . . . . . 19 |- (y = x -> suc y = suc x)
3433fveq2d 2836 . . . . . . . . . . . . . . . . . 18 |- (y = x -> (R1` suc y) = (R1` suc x))
3534eleq2d 1156 . . . . . . . . . . . . . . . . 17 |- (y = x -> (A e. (R1` suc y) <-> A e. (R1` suc x)))
3635onintss 2266 . . . . . . . . . . . . . . . 16 |- (x e. On -> (A e. (R1` suc x) -> |^|{y e. On | A e. (R1` suc y)} (_ x))
3736imp 277 . . . . . . . . . . . . . . 15 |- ((x e. On /\ A e. (R1` suc x)) -> |^|{y e. On | A e. (R1` suc y)} (_ x)
3832, 37syl5bir 184 . . . . . . . . . . . . . 14 |- (B = (rank`
A) -> ((x e. On /\ A e. (R1` suc x)) -> B (_ x))
39 fveq2 2832 . . . . . . . . . . . . . . . 16 |- (B = suc x -> (R1` B) = (R1` suc x))
4039eleq2d 1156 . . . . . . . . . . . . . . 15 |- (B = suc x -> (A e. (R1` B) <-> A e. (R1` suc x)))
4140biimpa 324 . . . . . . . . . . . . . 14 |- ((B = suc x /\ A e. (R1` B)) -> A e. (R1` suc x))
4238, 41sylan2i 357 . . . . . . . . . . . . 13 |- (B = (rank`
A) -> ((x e. On /\ (B = suc x /\ A e. (R1` B))) -> B (_ x))
4342exp4d 298 . . . . . . . . . . . 12 |- (B = (rank`
A) -> (x e. On -> (B = suc x -> (A e. (R1` B) -> B (_ x))))
4443com3l 34 . . . . . . . . . . 11 |- (x e. On -> (B = suc x -> (B = (rank` A) -> (A e. (R1` B) -> B (_ x))))
4544imp31 280 . . . . . . . . . 10 |- (((x e. On /\ B = suc x) /\ B = (rank`
A)) -> (A e. (R1` B) -> B (_ x))
4627, 45mtod 95 . . . . . . . . 9 |- (((x e. On /\ B = suc x) /\ B = (rank`
A)) -> -. A e. (R1` B))
4746exp31 293 . . . . . . . 8 |- (x e. On -> (B = suc x -> (B = (rank` A) -> -. A e. (R1` B))))
4847r19.23aiv 1284 . . . . . . 7 |- (E.x e. On B = suc x -> (B = (rank` A) -> -. A e. (R1` B)))
49 eleq2 1150 . . . . . . . . . . . . . . . . . . 19 |- (B = (rank`
A) -> (x e. B <-> x e. (rank`
A)))
501onel 2346 . . . . . . . . . . . . . . . . . . 19 |- (x e. (rank` A) -> x e. On)
5149, 50syl6bi 187 . . . . . . . . . . . . . . . . . 18 |- (B = (rank`
A) -> (x e. B -> x e. On))
5251anc2li 250 . . . . . . . . . . . . . . . . 17 |- (B = (rank`
A) -> (x e. B -> (B = (rank` A) /\ x e. On)))
53 r1ord2 3500 . . . . . . . . . . . . . . . . . . . . . . 23 |- (suc x e. On -> (x e. suc x -> (R1` x) (_ (R1` suc x)))
5414, 53mpi 44 . . . . . . . . . . . . . . . . . . . . . 22 |- (suc x e. On -> (R1` x) (_ (R1` suc x))
5522, 54syl 12 . . . . . . . . . . . . . . . . . . . . 21 |- (x e. On -> (R1` x) (_ (R1` suc x))
5655sseld 1506 . . . . . . . . . . . . . . . . . . . 20 |- (x e. On -> (A e. (R1` x) -> A e. (R1` suc x)))
5729sseq1i 1524 . . . . . . . . . . . . . . . . . . . . 21 |- ((rank` A) (_ x <-> |^|{y e. On | A e. (R1` suc y)} (_ x)
5836, 57syl6ibr 186 . . . . . . . . . . . . . . . . . . . 20 |- (x e. On -> (A e. (R1` suc x) -> (rank` A) (_ x))
5956, 58syld 27 . . . . . . . . . . . . . . . . . . 19 |- (x e. On -> (A e. (R1` x) -> (rank` A) (_ x))
60 sseq1 1521 . . . . . . . . . . . . . . . . . . . 20 |- (B = (rank`
A) -> (B (_ x <-> (rank` A) (_ x))
6160biimprd 136 . . . . . . . . . . . . . . . . . . 19 |- (B = (rank`
A) -> ((rank` A) (_ x -> B (_ x))
6259, 61sylan9r 360 . . . . . . . . . . . . . . . . . 18 |- ((B = (rank` A) /\ x e. On) -> (A e. (R1` x) -> B (_ x))
6318, 3sylan 343 . . . . . . . . . . . . . . . . . 18 |- ((B = (rank` A) /\ x e. On) -> (B (_ x <-> -. x e. B))
6462, 63sylibd 177 . . . . . . . . . . . . . . . . 17 |- ((B = (rank` A) /\ x e. On) -> (A e. (R1` x) -> -. x e. B))
6552, 64syl6 23 . . . . . . . . . . . . . . . 16 |- (B = (rank`
A) -> (x e. B -> (A e. (R1` x) -> -. x e. B)))
6665com3l 34 . . . . . . . . . . . . . . 15 |- (x e. B -> (A e. (R1` x) -> (B = (rank` A) -> -. x e. B)))
67 con2 82 . . . . . . . . . . . . . . 15 |- ((B = (rank` A) -> -. x e. B) -> (x e. B -> -. B = (rank`
A)))
6866, 67syl6 23 . . . . . . . . . . . . . 14 |- (x e. B -> (A e. (R1` x) -> (x e. B -> -. B = (rank` A))))
6968pm2.43a 60 . . . . . . . . . . . . 13 |- (x e. B -> (A e. (R1` x) -> -. B = (rank` A)))
7069r19.23aiv 1284 . . . . . . . . . . . 12 |- (E.x e. B A e. (R1` x) -> -. B = (rank` A))
7170con2i 89 . . . . . . . . . . 11 |- (B = (rank`
A) -> -. E.x e. B A e. (R1` x))
7271adantr 306 . . . . . . . . . 10 |- ((B = (rank` A) /\ Lim B) -> -. E.x e. B A e. (R1` x))
73 r1lim 3497 . . . . . . . . . . . . 13 |- ((B e. V /\ Lim B) -> (R1` B) = U.x e. B (R1` x))
74 fvex 2838 . . . . . . . . . . . . . 14 |- (rank` A) e. V
75 eleq1 1149 . . . . . . . . . . . . . 14 |- (B = (rank`
A) -> (B e. V <-> (rank` A) e. V))
7674, 75mpbiri 169 . . . . . . . . . . . . 13 |- (B = (rank`
A) -> B e. V)
7773, 76sylan 343 . . . . . . . . . . . 12 |- ((B = (rank` A) /\ Lim B) -> (R1` B) = U.x e. B (R1` x))
7877eleq2d 1156 . . . . . . . . . . 11 |- ((B = (rank` A) /\ Lim B) -> (A e. (R1` B) <-> A e. U.x e. B (R1` x)))
79 eliun 1998 . . . . . . . . . . 11 |- (A e. U.x e. B (R1` x) <-> E.x e. B A e. (R1` x))
8078, 79syl6bb 414 . . . . . . . . . 10 |- ((B = (rank` A) /\ Lim B) -> (A e. (R1` B) <-> E.x e. B A e. (R1` x)))
8172, 80mtbird 537 . . . . . . . . 9 |- ((B = (rank` A) /\ Lim B) -> -. A e. (R1` B))
8281exp 291 . . . . . . . 8 |- (B = (rank`
A) -> (Lim B -> -. A e. (R1` B)))
8382com12 13 . . . . . . 7 |- (Lim B -> (B = (rank`
A) -> -. A e. (R1` B)))
8412, 48, 833jaoi 633 . . . . . 6 |- ((B = (/)