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

Theorem rankr1 4654
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 4651 . . . . 5 |- (rank` A) e. On
2 eleq1 1531 . . . . 5 |- (B = (rank`
A) -> (B e. On <-> (rank` A) e. On))
31, 2mpbiri 194 . . . 4 |- (B = (rank`
A) -> B e. On)
4 eloni 2953 . . . . 5 |- (B e. On -> Ord B)
5 ordzsl 3111 . . . . . 6 |- (Ord B <-> (B = (/) \/ E.x e. On B = suc x \/ Lim B))
6 noel 2280 . . . . . . . . 9 |- -. A e. (/)
7 fveq2 3715 . . . . . . . . . . 11 |- (B = (/) -> (R1` B) = (R1` (/)))
8 r10 4631 . . . . . . . . . . 11 |- (R1` (/)) = (/)
97, 8syl6eq 1520 . . . . . . . . . 10 |- (B = (/) -> (R1` B) = (/))
109eleq2d 1538 . . . . . . . . 9 |- (B = (/) -> (A e. (R1` B) <-> A e. (/)))
116, 10mtbiri 716 . . . . . . . 8 |- (B = (/) -> -. A e. (R1` B))
1211a1d 12 . . . . . . 7 |- (B = (/) -> (B = (rank` A) -> -. A e. (R1` B)))
13 visset 1809 . . . . . . . . . . . . . . 15 |- x e. V
1413sucid 3046 . . . . . . . . . . . . . 14 |- x e. suc x
15 eleq2 1532 . . . . . . . . . . . . . 14 |- (B = suc x -> (x e. B <-> x e. suc x))
1614, 15mpbiri 194 . . . . . . . . . . . . 13 |- (B = suc x -> x e. B)
1716adantl 388 . . . . . . . . . . . 12 |- ((x e. On /\ B = suc x) -> x e. B)
18 ontri1 2976 . . . . . . . . . . . . . 14 |- ((B e. On /\ x e. On) -> (B (_ x <-> -. x e. B))
1918con2bid 525 . . . . . . . . . . . . 13 |- ((B e. On /\ x e. On) -> (x e. B <-> -. B (_ x))
20 eleq1a 1540 . . . . . . . . . . . . . . 15 |- (suc x e. On -> (B = suc x -> B e. On))
2120imp 350 . . . . . . . . . . . . . 14 |- ((suc x e. On /\ B = suc x) -> B e. On)
22 suceloni 3057 . . . . . . . . . . . . . 14 |- (x e. On -> suc x e. On)
2321, 22sylan 448 . . . . . . . . . . . . 13 |- ((x e. On /\ B = suc x) -> B e. On)
24 pm3.26 319 . . . . . . . . . . . . 13 |- ((x e. On /\ B = suc x) -> x e. On)
2519, 23, 24sylanc 471 . . . . . . . . . . . 12 |- ((x e. On /\ B = suc x) -> (x e. B <-> -. B (_ x))
2617, 25mpbid 195 . . . . . . . . . . 11 |- ((x e. On /\ B = suc x) -> -. B (_ x)
2726adantr 389 . . . . . . . . . 10 |- (((x e. On /\ B = suc x) /\ B = (rank`
A)) -> -. B (_ x)
28 rankr1.1 . . . . . . . . . . . . . . . . . . 19 |- A e. V
2928rankval 4648 . . . . . . . . . . . . . . . . . 18 |- (rank` A) = |^|{y e. On | A e. (R1` suc y)}
3029eqeq2i 1482 . . . . . . . . . . . . . . . . 17 |- (B = (rank`
A) <-> B = |^|{y e. On | A e. (R1` suc y)})
3130biimp 151 . . . . . . . . . . . . . . . 16 |- (B = (rank`
A) -> B = |^|{y e. On | A e. (R1` suc y)})
3231sseq1d 2084 . . . . . . . . . . . . . . 15 |- (B = (rank`
A) -> (B (_ x <-> |^|{y e. On | A e. (R1` suc y)} (_ x))
33 suceq 3029 . . . . . . . . . . . . . . . . . . 19 |- (y = x -> suc y = suc x)
3433fveq2d 3719 . . . . . . . . . . . . . . . . . 18 |- (y = x -> (R1` suc y) = (R1` suc x))
3534eleq2d 1538 . . . . . . . . . . . . . . . . 17 |- (y = x -> (A e. (R1` suc y) <-> A e. (R1` suc x)))
3635onintss 3006 . . . . . . . . . . . . . . . 16 |- (x e. On -> (A e. (R1` suc x) -> |^|{y e. On | A e. (R1` suc y)} (_ x))
3736imp 350 . . . . . . . . . . . . . . 15 |- ((x e. On /\ A e. (R1` suc x)) -> |^|{y e. On | A e. (R1` suc y)} (_ x)
3832, 37syl5bir 210 . . . . . . . . . . . . . 14 |- (B = (rank`
A) -> ((x e. On /\ A e. (R1` suc x)) -> B (_ x))
39 fveq2 3715 . . . . . . . . . . . . . . . 16 |- (B = suc x -> (R1` B) = (R1` suc x))
4039eleq2d 1538 . . . . . . . . . . . . . . 15 |- (B = suc x -> (A e. (R1` B) <-> A e. (R1` suc x)))
4140biimpa 416 . . . . . . . . . . . . . 14 |- ((B = suc x /\ A e. (R1` B)) -> A e. (R1` suc x))
4238, 41sylan2i 465 . . . . . . . . . . . . 13 |- (B = (rank`
A) -> ((x e. On /\ (B = suc x /\ A e. (R1` B))) -> B (_ x))
4342exp4d 381 . . . . . . . . . . . 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 362 . . . . . . . . . 10 |- (((x e. On /\ B = suc x) /\ B = (rank`
A)) -> (A e. (R1` B) -> B (_ x))
4627, 45mtod 108 . . . . . . . . 9 |- (((x e. On /\ B = suc x) /\ B = (rank`
A)) -> -. A e. (R1` B))
4746exp31 376 . . . . . . . 8 |- (x e. On -> (B = suc x -> (B = (rank` A) -> -. A e. (R1` B))))
4847r19.23aiv 1740 . . . . . . 7 |- (E.x e. On B = suc x -> (B = (rank` A) -> -. A e. (R1` B)))
49 eleq2 1532 . . . . . . . . . . . . . . . . . 18 |- (B = (rank`
A) -> (x e. B <-> x e. (rank`
A)))
501onel 3093 . . . . . . . . . . . . . . . . . 18 |- (x e. (rank` A) -> x e. On)
5149, 50syl6bi 214 . . . . . . . . . . . . . . . . 17 |- (B = (rank`
A) -> (x e. B -> x e. On))
5251anc2li 302 . . . . . . . . . . . . . . . 16 |- (B = (rank`
A) -> (x e. B -> (B = (rank` A) /\ x e. On)))
53 r1ord2 4636 . . . . . . . . . . . . . . . . . . . . . 22 |- (suc x e. On -> (x e. suc x -> (R1` x) (_ (R1` suc x)))
5414, 53mpi 44 . . . . . . . . . . . . . . . . . . . . 21 |- (suc x e. On -> (R1` x) (_ (R1` suc x))
5522, 54syl 10 . . . . . . . . . . . . . . . . . . . 20 |- (x e. On -> (R1` x) (_ (R1` suc x))
5655sseld 2063 . . . . . . . . . . . . . . . . . . 19 |- (x e. On -> (A e. (R1` x) -> A e. (R1` suc x)))
5729sseq1i 2081 . . . . . . . . . . . . . . . . . . . 20 |- ((rank` A) (_ x <-> |^|{y e. On | A e. (R1` suc y)} (_ x)
5836, 57syl6ibr 213 . . . . . . . . . . . . . . . . . . 19 |- (x e. On -> (A e. (R1` suc x) -> (rank` A) (_ x))
5956, 58syld 27 . . . . . . . . . . . . . . . . . 18 |- (x e. On -> (A e. (R1` x) -> (rank` A) (_ x))
60 sseq1 2078 . . . . . . . . . . . . . . . . . . 19 |- (B = (rank`
A) -> (B (_ x <-> (rank` A) (_ x))
6160biimprd 154 . . . . . . . . . . . . . . . . . 18 |- (B = (rank`
A) -> ((rank` A) (_ x -> B (_ x))
6259, 61sylan9r 469 . . . . . . . . . . . . . . . . 17 |- ((B = (rank` A) /\ x e. On) -> (A e. (R1` x) -> B (_ x))
6318, 3sylan 448 . . . . . . . . . . . . . . . . 17 |- ((B = (rank` A) /\ x e. On) -> (B (_ x <-> -. x e. B))
6462, 63sylibd 202 . . . . . . . . . . . . . . . 16 |- ((B = (rank` A) /\ x e. On) -> (A e. (R1` x) -> -. x e. B))
6552, 64syl6 22 . . . . . . . . . . . . . . 15 |- (B = (rank`
A) -> (x e. B -> (A e. (R1` x) -> -. x e. B)))
6665com3l 34 . . . . . . . . . . . . . 14 |- (x e. B -> (A e. (R1` x) -> (B = (rank` A) -> -. x e. B)))
67 con2 90 . . . . . . . . . . . . . 14 |- ((B = (rank` A) -> -. x e. B) -> (x e. B -> -. B = (rank`
A)))
6866, 67syl6 22 . . . . . . . . . . . . 13 |- (x e. B -> (A e. (R1` x) -> (x e. B -> -. B = (rank` A))))
6968pm2.43a 66 . . . . . . . . . . . 12 |- (x e. B -> (A e. (R1` x) -> -. B = (rank` A)))
7069r19.23aiv 1740 . . . . . . . . . . 11 |- (E.x e. B A e. (R1` x) -> -. B = (rank` A))
7170con2i 97 . . . . . . . . . 10 |- (B = (rank`
A) -> -. E.x e. B A e. (R1` x))
7271adantr 389 . . . . . . . . 9 |- ((B = (rank` A) /\ Lim B) -> -. E.x e. B A e. (R1` x))
73 r1lim 4633 . . . . . . . . . . . 12 |- ((B e. V /\ Lim B) -> (R1` B) = U_x e. B (R1` x))
74 fvex 3723 . . . . . . . . . . . . 13 |- (rank` A) e. V
75 eleq1 1531 . . . . . . . . . . . . 13 |- (B = (rank`
A) -> (B e. V <-> (rank` A) e. V))
7674, 75mpbiri 194 . . . . . . . . . . . 12 |- (B = (rank`
A) -> B e. V)
7773, 76sylan 448 . . . . . . . . . . 11 |- ((B = (rank` A) /\ Lim B) -> (R1` B) = U_x e. B (R1` x))
7877eleq2d 1538 . . . . . . . . . 10 |- ((B = (rank` A) /\ Lim B) -> (A e. (R1` B) <-> A e. U_x e. B (R1` x)))
79 eliun 2565 . . . . . . . . . 10 |- (A e. U_x e. B (R1` x) <-> E.x e. B A e. (R1` x))
8078, 79syl6bb 535 . . . . . . . . 9 |- ((B = (rank` A) /\ Lim B) -> (A e. (R1` B) <-> E.x e. B A e. (R1` x)))
8172, 80mtbird 714 . . . . . . . 8