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

Theorem inf0 5712
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) " exi sts, 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 5728.
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 2295 . . . 4 |- x e. _V
2 fr0g 5160 . . . 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 5159 . . . 4 |- (rec({<.v, u>. | u = suc v}, x) |` om) Fn om
5 peano1 3971 . . . 4 |- (/) e. om
6 fnfvelrn 4786 . . . 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 761 . . 3 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` (/)) e. ran (rec({<.v, u>. | u = suc v}, x) |` om)
83, 7eqeltrri 1968 . 2 |- x e. ran (rec({<.v, u>. | u = suc v}, x) |` om)
9 fvelrnb 4719 . . . . 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 1957 . . . . . . . 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 4689 . . . . . . . . . . 11 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. _V
1312sucex 3892 . . . . . . . . . 10 |- suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. _V
14 ax-17 1317 . . . . . . . . . . 11 |- (z e. x -> A.v z e. x)
15 ax-17 1317 . . . . . . . . . . 11 |- (z e. f -> A.v z e. f)
16 hbopab1 3562 . . . . . . . . . . . . . . 15 |- (z e. {<.v, u>. | u = suc v} -> A.v z e. {<.v, u>. | u = suc v})
1716, 14hbrdg 5144 . . . . . . . . . . . . . 14 |- (z e. rec({<.v, u>. | u = suc v}, x) -> A.v z e. rec({<.v, u>. | u = suc v}, x))
18 ax-17 1317 . . . . . . . . . . . . . 14 |- (z e. om -> A.v z e. om)
1917, 18hbres 4220 . . . . . . . . . . . . 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 4686 . . . . . . . . . . . 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 3736 . . . . . . . . . . 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 1884 . . . . . . . . . . 11 |- (rec({<.v, u>. | u = suc v}, x) |` om) = (rec({<.v, u>. | u = suc v}, x) |` om)
23 suceq 3729 . . . . . . . . . . 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 5162 . . . . . . . . . 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 760 . . . . . . . . 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 3744 . . . . . . . . 9 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` f) e. suc ((rec({<.v, u>. | u = suc v}, x) |` om)` f)
2725, 26syl5eleqr 1978 . . . . . . . 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 225 . . . . . . 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 3968 . . . . . . . . 9 |- (f e. om <-> suc f e. om)
30 fnfvelrn 4786 . . . . . . . . . 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 759 . . . . . . . . 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 216 . . . . . . . 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 661 . . . . . 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 4689 . . . . . . 7 |- ((rec({<.v, u>. | u = suc v}, x) |` om)` suc f) e. _V
36 eleq2 1958 . . . . . . . 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 1957 . . . . . . . 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 690 . . . . . . 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 2371 . . . . . 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 64 . . . . 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 2211 . . . 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 216 . . 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 1305 . 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 4512 . . . . . 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 1967 . . . 4 |- dom (rec({<.v, u>. | u = suc v}, x) |` om) e. _V
48 fnfun 4510 . . . . 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 4544 . . . 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 54 . . 3 |- ran (rec({<.v, u>. | u = suc v}, x) |` om) e. _V
52 eleq2 1958 . . . 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 1958 . . . . . 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 1958 . . . . . . . 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 678 . . . . . . 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 1657 . . . . . 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 688 . . . . 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 1656 . . . 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 690 . . 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 2371 . 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 761 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 163   /\ wa 240  A.wal 1296   = wceq 1298   e. wcel 1300  E.wex 1326  E.wrex 2106  _Vcvv 2292  (/)c0 2875  {copab 3395  suc csuc 3659  omcom 3949  dom cdm 3986  ran crn 3987   |` cres 3988  Fun wfun 3992   Fn wfn 3993  ` cfv 3998  reccrdg 5139
This theorem is referenced by:  axinf 5734
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
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-iun 3257  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
Copyright terms: Public domain