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

Theorem scott0 5847
Description: Scott's trick collects all sets that have a certain property and are of smallest possible rank. This theorem shows that the resulting collection, expressed as in Equation 9.3 of [Jech] p. 72, contains at least one representative with the property, if there is one. In other words, the collection is empty iff no set has the property (i.e. A is empty).
Assertion
Ref Expression
scott0 |- (A = (/) <-> {x e. A | A.y e. A (rank` x) C_ (rank` y)} = (/))
Distinct variable group:   x,y,A

Proof of Theorem scott0
StepHypRef Expression
1 rabeq 2289 . . 3 |- (A = (/) -> {x e. A | A.y e. A (rank` x) C_ (rank` y)} = {x e. (/) | A.y e. A (rank` x) C_ (rank` y)})
2 rab0 2894 . . 3 |- {x e. (/) | A.y e. A (rank` x) C_ (rank` y)} = (/)
31, 2syl6eq 1944 . 2 |- (A = (/) -> {x e. A | A.y e. A (rank` x) C_ (rank` y)} = (/))
4 n0 2884 . . . . . . . . 9 |- (A =/= (/) <-> E.x x e. A)
5 hbre1 2150 . . . . . . . . . 10 |- (E.x e. A (rank` x) = (rank`
x) -> A.xE.x e. A (rank` x) = (rank` x))
6 eqid 1884 . . . . . . . . . . 11 |- (rank` x) = (rank` x)
7 ra4e 2156 . . . . . . . . . . 11 |- ((x e. A /\ (rank` x) = (rank` x)) -> E.x e. A (rank` x) = (rank` x))
86, 7mpan2 760 . . . . . . . . . 10 |- (x e. A -> E.x e. A (rank` x) = (rank` x))
95, 819.23ai 1412 . . . . . . . . 9 |- (E.x x e. A -> E.x e. A (rank` x) = (rank` x))
104, 9sylbi 216 . . . . . . . 8 |- (A =/= (/) -> E.x e. A (rank` x) = (rank` x))
11 fvex 4689 . . . . . . . . . . . 12 |- (rank` x) e. _V
12 eqeq1 1890 . . . . . . . . . . . . 13 |- (y = (rank`
x) -> (y = (rank` x) <-> (rank` x) = (rank`
x)))
1312anbi2d 678 . . . . . . . . . . . 12 |- (y = (rank`
x) -> ((x e. A /\ y = (rank` x)) <-> (x e. A /\ (rank` x) = (rank` x))))
1411, 13cla4ev 2371 . . . . . . . . . . 11 |- ((x e. A /\ (rank` x) = (rank` x)) -> E.y(x e. A /\ y = (rank` x)))
1514eximi 1387 . . . . . . . . . 10 |- (E.x(x e. A /\ (rank` x) = (rank` x)) -> E.xE.y(x e. A /\ y = (rank` x)))
16 excom 1393 . . . . . . . . . 10 |- (E.yE.x(x e. A /\ y = (rank` x)) <-> E.xE.y(x e. A /\ y = (rank` x)))
1715, 16sylibr 217 . . . . . . . . 9 |- (E.x(x e. A /\ (rank` x) = (rank` x)) -> E.yE.x(x e. A /\ y = (rank` x)))
18 df-rex 2110 . . . . . . . . 9 |- (E.x e. A (rank` x) = (rank`
x) <-> E.x(x e. A /\ (rank`
x) = (rank` x)))
19 df-rex 2110 . . . . . . . . . 10 |- (E.x e. A y = (rank`
x) <-> E.x(x e. A /\ y = (rank` x)))
2019exbii 1398 . . . . . . . . 9 |- (E.yE.x e. A y = (rank` x) <-> E.yE.x(x e. A /\ y = (rank` x)))
2117, 18, 203imtr4i 236 . . . . . . . 8 |- (E.x e. A (rank` x) = (rank`
x) -> E.yE.x e. A y = (rank` x))
2210, 21syl 12 . . . . . . 7 |- (A =/= (/) -> E.yE.x e. A y = (rank`
x))
23 abn0 2892 . . . . . . 7 |- ({y | E.x e. A y = (rank` x)} =/= (/) <-> E.yE.x e. A y = (rank` x))
2422, 23sylibr 217 . . . . . 6 |- (A =/= (/) -> {y | E.x e. A y = (rank` x)} =/= (/))
25 hbab1 1874 . . . . . . . . . 10 |- (z e. {y | E.x e. A y = (rank` x)} -> A.y z e. {y | E.x e. A y = (rank`
x)})
26 ax-17 1317 . . . . . . . . . 10 |- (z e. On -> A.y z e. On)
2725, 26dfss2f 2612 . . . . . . . . 9 |- ({y | E.x e. A y = (rank` x)} C_ On <-> A.y(y e. {y | E.x e. A y = (rank`
x)} -> y e. On))
28 abid 1873 . . . . . . . . . 10 |- (y e. {y | E.x e. A y = (rank` x)} <-> E.x e. A y = (rank` x))
29 rankon 5782 . . . . . . . . . . . . 13 |- (rank` x) e. On
30 eleq1 1957 . . . . . . . . . . . . 13 |- (y = (rank`
x) -> (y e. On <-> (rank` x) e. On))
3129, 30mpbiri 211 . . . . . . . . . . . 12 |- (y = (rank`
x) -> y e. On)
3231a1i 8 . . . . . . . . . . 11 |- (x e. A -> (y = (rank` x) -> y e. On))
3332r19.23aiv 2211 . . . . . . . . . 10 |- (E.x e. A y = (rank`
x) -> y e. On)
3428, 33sylbi 216 . . . . . . . . 9 |- (y e. {y | E.x e. A y = (rank` x)} -> y e. On)
3527, 34mpgbir 1334 . . . . . . . 8 |- {y | E.x e. A y = (rank` x)} C_ On
36 onint 3876 . . . . . . . 8 |- (({y | E.x e. A y = (rank`
x)} C_ On /\ {y | E.x e. A y = (rank` x)} =/= (/)) -> |^|{y | E.x e. A y = (rank`
x)} e. {y | E.x e. A y = (rank`
x)})
3735, 36mpan 759 . . . . . . 7 |- ({y | E.x e. A y = (rank` x)} =/= (/) -> |^|{y | E.x e. A y = (rank` x)} e. {y | E.x e. A y = (rank` x)})
3811dfiin2 3287 . . . . . . 7 |- |^|_x e. A (rank` x) = |^|{y | E.x e. A y = (rank` x)}
3937, 38syl5eqel 1975 . . . . . 6 |- ({y | E.x e. A y = (rank` x)} =/= (/) -> |^|_x e. A (rank` x) e. {y | E.x e. A y = (rank` x)})
4024, 39syl 12 . . . . 5 |- (A =/= (/) -> |^|_x e. A (rank` x) e. {y | E.x e. A y = (rank` x)})
41 hbii1 3282 . . . . . . . . 9 |- (y e. |^|_x e. A (rank` x) -> A.x y e. |^|_x e. A (rank` x))
4241hbeleq 1997 . . . . . . . 8 |- (y = |^|_x e. A (rank` x) -> A.x y = |^|_x e. A (rank` x))
43 eqeq1 1890 . . . . . . . 8 |- (y = |^|_x e. A (rank` x) -> (y = (rank`
x) <-> |^|_x e. A (rank` x) = (rank` x)))
4442, 43rexbid 2122 . . . . . . 7 |- (y = |^|_x e. A (rank` x) -> (E.x e. A y = (rank`
x) <-> E.x e. A |^|_x e. A (rank` x) = (rank` x)))
4544elabg 2405 . . . . . 6 |- (|^|_x e. A (rank` x) e. {y | E.x e. A y = (rank`
x)} -> (|^|_x e. A (rank` x) e. {y | E.x e. A y = (rank` x)} <-> E.x e. A |^|_x e. A (rank` x) = (rank` x)))
4645ibi 652 . . . . 5 |- (|^|_x e. A (rank` x) e. {y | E.x e. A y = (rank`
x)} -> E.x e. A |^|_x e. A (rank` x) = (rank` x))
47 sseq1 2637 . . . . . . . 8 |- (|^|_x e. A (rank` x) = (rank` x) -> (|^|_x e. A (rank` x) C_ (rank` y) <-> (rank`
x) C_ (rank` y)))
48 ssid 2634 . . . . . . . . . 10 |- (rank` y) C_ (rank` y)
49 fveq2 4681 . . . . . . . . . . . 12 |- (x = y -> (rank` x) = (rank`
y))
5049sseq1d 2644 . . . . . . . . . . 11 |- (x = y -> ((rank` x) C_ (rank` y) <-> (rank` y) C_ (rank` y)))
5150rcla4ev 2381 . . . . . . . . . 10 |- ((y e. A /\ (rank` y) C_ (rank` y)) -> E.x e. A (rank` x) C_ (rank` y))
5248, 51mpan2 760 . . . . . . . . 9 |- (y e. A -> E.x e. A (rank` x) C_ (rank` y))
53 iinss 3304 . . . . . . . . 9 |- (E.x e. A (rank` x) C_ (rank` y) -> |^|_x e. A (rank` x) C_ (rank` y))
5452, 53syl 12 . . . . . . . 8 |- (y e. A -> |^|_x e. A (rank` x) C_ (rank` y))
5547, 54syl5bi 225 . . . . . . 7 |- (|^|_x e. A (rank` x) = (rank` x) -> (y e. A -> (rank` x) C_ (rank` y)))
5655r19.21aiv 2175 . . . . . 6 |- (|^|_x e. A (rank` x) = (rank` x) -> A.y e. A (rank` x) C_ (rank` y))
5756reximi 2198 . . . . 5 |- (E.x e. A |^|_x e. A (rank` x) = (rank` x) -> E.x e. A A.y e. A (rank` x) C_ (rank` y))
5840, 46, 573syl 24 . . . 4 |- (A =/= (/) -> E.x e. A A.y e. A (rank` x) C_ (rank` y))
59 rabn0 2893 . . . 4 |- ({x e. A | A.y e. A (rank` x) C_ (rank` y)} =/= (/) <-> E.x e. A A.y e. A (rank` x) C_ (rank` y))
6058, 59sylibr 217 . . 3 |- (A =/= (/) -> {x e. A | A.y e. A (rank` x) C_ (rank` y)} =/= (/))
6160necon4i 2069 . 2 |- ({x e. A | A.y e. A (rank` x) C_ (rank` y)} = (/) -> A = (/))
623, 61impbii 174 1 |- (A = (/) <-> {x e. A | A.y e. A (rank` x) C_ (rank` y)} = (/))
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 163   /\ wa 240   = wceq 1298   e. wcel 1300  E.wex 1326  {cab 1871   =/= wne 2017  A.wral 2105  E.wrex 2106  {crab 2108   C_ wss 2593  (/)c0 2875  |^|cint 3214  |^|_ciin 3256  Oncon0 3657  ` cfv 3998  rankcrnk 5749
This theorem is referenced by:  scott0s 5849  cplem1 5850  karden 5856
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 1304  ax-gen 1305  ax-8 1306  ax-9 1307  ax-10 1308  ax-11 1309  ax-12 1310  ax-13 1311  ax-14 1312  ax-17 1317  ax-4 1319  ax-5o 1321  ax-6o 1324  ax-9o 1481  ax-10o 1500  ax-16 1580  ax-11o 1588  ax-ext 1865  ax-rep 3428  ax-sep 3438  ax-nul 3445  ax-pow 3481  ax-pr 3524  ax-un 3790  ax-reg 5695  ax-inf2 5731
This theorem depends on definitions:  df-bi 164  df-or 241  df-an 242  df-3or 859  df-3an 860  df-ex 1327  df-sb 1536  df-eu 1775  df-mo 1776  df-clab 1872  df-cleq 1877  df-clel 1880  df-ne 2019  df-ral 2109  df-rex 2110  df-rab 2112  df-v 2294  df-sbc 2454  df-csb 2541  df-dif 2597  df-un 2600  df-in 2603  df-ss 2605  df-pss 2607  df-nul 2876  df-if 2983  df-pw 3035  df-sn 3049  df-pr 3050  df-tp 3052  df-op 3053  df-uni 3178  df-int 3215  df-iun 3257  df-iin 3258  df-br 3339  df-opab 3396  df-tr 3412  df-eprel 3583  df-id 3586  df-po 3591  df-so 3604  df-fr 3625  df-we 3644  df-ord 3660  df-on 3661  df-lim 3662  df-suc 3663  df-om 3950  df-xp 4000  df-rel 4001  df-cnv 4002  df-co 4003  df-dm 4004  df-rn 4005  df-res 4006  df-ima 4007  df-fun 4008  df-fn 4009  df-fv 4014  df-rdg 5140  df-r1 5750  df-rank 5751
Copyright terms: Public domain