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

Theorem inf0 4751
Description: Our Axiom of Infinity derived from existence of omega. The proof shows that the especially contrived class "ran (rec({<.v, u>. | u = suc v}, x) |` om)" exists, is a subset of its union, and contains a given set x (and thus is non-empty). Thus it provides an example demonstrating that a set y exists with the necessary properties demanded by ax-inf 4767.
Hypothesis
Ref Expression
inf0.1 |- om e. V
Assertion
Ref Expression
inf0 |- E.y(x e. y /\ A.z(z e. y -> E.w(z e. w /\ w e. y)))
Distinct variable group:   x,y,z,w

Proof of Theorem inf0
StepHypRef Expression
1 visset 1859 . . . 4 |- x e. V
2 fr0g 4253 . . . 4 |- (x e. V -> ((rec({<.v, u>. | u = suc v}, x) |` om)` (/)) = x)
31, 2ax-mp 7 . . 3 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` (/)) = x
4 frfnom 4252 . . . 4 |- (rec({<.v, u>. | u = suc v}, x) |` om) Fn om
5 peano1 3237 . . . 4 |- (/) e. om
6 fnfvelrn 3927 . . . 4 |- (((rec({<.v, u>. | u = suc v}, x) |` om) Fn om /\ (/) e. om) -> ((rec({<.v, u>. | u = suc v}, x) |` om)` (/)) e. ran (rec({<.v, u>. | u = suc v}, x) |` om))
74, 5, 6mp2an 701 . . 3 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` (/)) e. ran (rec({<.v, u>. | u = suc v}, x) |` om)
83, 7eqeltrri 1588 . 2 |- x e. ran (rec({<.v, u>. | u = suc v}, x) |` om)
9 fvelrnb 3871 . . . . 5 |- ((rec({<.v, u>. | u = suc v}, x) |` om) Fn om -> (z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) <-> E.f e. om ((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z))
104, 9ax-mp 7 . . . 4 |- (z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) <-> E.f e. om ((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z)
11 eleq1 1577 . . . . . . . 8 |- (((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z -> (((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) <-> z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f)))
12 fvex 3843 . . . . . . . . . . 11 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. V
1312sucex 3168 . . . . . . . . . 10 |- suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. V
14 ax-17 1007 . . . . . . . . . . 11 |- (z e. x -> A.v z e. x)
15 ax-17 1007 . . . . . . . . . . 11 |- (z e. f -> A.v z e. f)
16 hbopab1 2890 . . . . . . . . . . . . . . 15 |- (z e. {<.v, u>. | u = suc v} -> A.v z e. {<.v, u>. | u = suc v})
1716, 14hbrdg 4237 . . . . . . . . . . . . . 14 |- (z e. rec({<.v, u>. | u = suc v}, x) -> A.v z e. rec({<.v, u>. | u = suc v}, x))
18 ax-17 1007 . . . . . . . . . . . . . 14 |- (z e. om -> A.v z e. om)
1917, 18hbres 3457 . . . . . . . . . . . . 13 |- (z e. (rec({<.v, u>. | u = suc v}, x) |` om) -> A.v z e. (rec({<.v, u>. | u = suc v}, x) |` om))
2019, 15hbfv 3840 . . . . . . . . . . . 12 |- (z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` f) -> A.v z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` f))
2120hbsuc 3044 . . . . . . . . . . 11 |- (z e. suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f) -> A.v z e. suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f))
22 eqid 1518 . . . . . . . . . . 11 |- (rec({<.v, u>. | u = suc v}, x) |` om) = (rec({<.v, u>. | u = suc v}, x) |` om)
23 suceq 3038 . . . . . . . . . . 11 |- (v = ((rec({<.v, u>. | u = suc v}, x) |` om)` f) -> suc v = suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f))
2414, 15, 21, 22, 23frsucopab 4255 . . . . . . . . . 10 |- ((f e. om /\ suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. V) -> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) = suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f))
2513, 24mpan2 700 . . . . . . . . 9 |- (f e. om -> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) = suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f))
2612sucid 3051 . . . . . . . . 9 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f)
2725, 26syl5eleqr 1598 . . . . . . . 8 |- (f e. om -> ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f))
2811, 27syl5bi 206 . . . . . . 7 |- (((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z -> (f e. om -> z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f)))
29 peano2b 3234 . . . . . . . . 9 |- (f e. om <-> suc f e. om)
30 fnfvelrn 3927 . . . . . . . . . 10 |- (((rec({<.v, u>. | u = suc v}, x) |` om) Fn om /\ suc f e. om) -> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om))
314, 30mpan 699 . . . . . . . . 9 |- (suc f e. om -> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om))
3229, 31sylbi 197 . . . . . . . 8 |- (f e. om -> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om))
3332a1i 8 . . . . . . 7 |- (((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z -> (f e. om -> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
3428, 33jcad 603 . . . . . 6 |- (((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z -> (f e. om -> (z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) /\ ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om))))
35 fvex 3843 . . . . . . 7 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. V
36 eleq2 1578 . . . . . . . 8 |- (w = ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) -> (z e. w <-> z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f)))
37 eleq1 1577 . . . . . . . 8 |- (w = ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) -> (w e. ran (rec({<.v, u>. | u = suc v}, x) |` om) <-> ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
3836, 37anbi12d 631 . . . . . . 7 |- (w = ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) -> ((z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)) <-> (z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) /\ ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om))))
3935, 38cla4ev 1915 . . . . . 6 |- ((z e. ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) /\ ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. ran (rec({<.v, u>. | u = suc v}, x) |` om)) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
4034, 39syl6com 53 . . . . 5 |- (f e. om -> (((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om))))
4140r19.23aiv 1789 . . . 4 |- (E.f e. om ((rec({<.v, u>. | u = suc v}, x) |` om)` f) = z -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
4210, 41sylbi 197 . . 3 |- (z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
4342ax-gen 999 . 2 |- A.z(z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
44 fndm 3693 . . . . . 6 |- ((rec({<.v, u>. | u = suc v}, x) |` om) Fn om -> dom (rec({<.v, u>. | u = suc v}, x) |` om) = om)
454, 44ax-mp 7 . . . . 5 |- dom (rec({<.v, u>. | u = suc v}, x) |` om) = om
46 inf0.1 . . . . 5 |- om e. V
4745, 46eqeltri 1587 . . . 4 |- dom (rec({<.v, u>. | u = suc v}, x) |` om) e. V
48 fnfun 3691 . . . . 5 |- ((rec({<.v, u>. | u = suc v}, x) |` om) Fn om -> Fun (rec({<.v, u>. | u = suc v}, x) |` om))
494, 48ax-mp 7 . . . 4 |- Fun (rec({<.v, u>. | u = suc v}, x) |` om)
50 funrnex 3720 . . . 4 |- (dom (rec({<.v, u>. | u = suc v}, x) |` om) e. V -> (Fun (rec({<.v, u>. | u = suc v}, x) |` om) -> ran (rec({<.v, u>. | u = suc v}, x) |` om) e. V))
5147, 49, 50mp2 43 . . 3 |- ran (rec({<.v, u>. | u = suc v}, x) |` om) e. V
52 eleq2 1578 . . . 4 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> (x e. y <-> x e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
53 eleq2 1578 . . . . . 6 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> (z e. y <-> z e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
54 eleq2 1578 . . . . . . . 8 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> (w e. y <-> w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))
5554anbi2d 619 . . . . . . 7 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> ((z e. w /\ w e. y) <-> (z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om))))
5655exbidv 1317 . . . . . 6 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> (E.w(z e. w /\ w e. y) <-> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om))))
5753, 56imbi12d 629 . . . . 5 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> ((z e. y -> E.w(z e. w /\ w e. y)) <-> (z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))))
5857albidv 1316 . . . 4 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> (A.z(z e. y -> E.w(z e. w /\ w e. y)) <-> A.z(z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))))
5952, 58anbi12d 631 . . 3 |- (y = ran (rec({<.v, u>. | u = suc v}, x) |` om) -> ((x e. y /\ A.z(z e. y -> E.w(z e. w /\ w e. y))) <-> (x e. ran (rec({<.v, u>. | u = suc v}, x) |` om) /\ A.z(z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om))))))
6051, 59cla4ev 1915 . 2 |- ((x e. ran (rec({<.v, u>. | u = suc v}, x) |` om) /\ A.z(z e. ran (rec({<.v, u>. | u = suc v}, x) |` om) -> E.w(z e. w /\ w e. ran (rec({<.v, u>. | u = suc v}, x) |` om)))) -> E.y(x e. y /\ A.z(z e. y -> E.w(z e. w /\ w e. y))))
618, 43, 60mp2an 701 1 |- E.y(x e. y /\ A.z(z e. y -> E.w(z e. w /\ w e. y)))
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 144   /\ wa 221  A.wal 990   = wceq 992   e. wcel 994  E.wex 1016  E.wrex 1692  Vcvv 1857  (/)c0 2332  {copab 2740  suc csuc 2977  omcom 3218  dom cdm 3251  ran crn 3252   |` cres 3253  Fun wfun 3257   Fn wfn 3258  ` cfv 3263  reccrdg 4232
This theorem is referenced by:  axinf 4773
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 998  ax-gen 999  ax-8 1000  ax-9 1001  ax-10 1002  ax-11 1003  ax-12 1004  ax-13 1005  ax-14 1006  ax-17 1007  ax-4 1009  ax-5o 1011  ax-6o 1014  ax-9o 1159  ax-10o 1177  ax-16 1247  ax-11o 1255  ax-ext 1500  ax-rep 2767  ax-sep 2777  ax-nul 2784  ax-pow 2818  ax-pr 2855  ax-un 3089
This theorem depends on definitions:  df-bi 145  df-or 222  df-an 223  df-3or 782  df-3an 783  df-ex 1017  df-sb 1209  df-eu 1421  df-mo 1422  df-clab 1506  df-cleq 1511  df-clel 1514  df-ne 1630  df-ral 1695  df-rex 1696  df-rab 1698  df-v 1858  df-sbc 1987  df-csb 2052  df-dif 2101  df-un 2102  df-in 2103  df-ss 2105  df-nul 2333  df-if 2416  df-pw 2459  df-sn 2470  df-pr 2471  df-tp 2473  df-op 2474  df-uni 2570  df-iun 2635  df-br 2693  df-opab 2741  df-tr 2755  df-eprel 2910  df-id 2913  df-po 2918  df-so 2929  df-fr 2947  df-we 2962  df-ord 2978  df-on 2979  df-lim 2980  df-suc 2981  df-om 3219  df-xp 3265  df-rel 3266  df-cnv 3267  df-co 3268  df-dm 3269  df-rn 3270  df-res 3271  df-ima 3272  df-fun 3273  df-fn 3274  df-fv 3279  df-rdg 4233
Copyright terms: Public domain