MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  seqomlem2 Structured version   Visualization version   GIF version

Theorem seqomlem2 8373
Description: Lemma for seqω. (Contributed by Stefan O'Rear, 1-Nov-2014.) (Revised by Mario Carneiro, 23-Jun-2015.)
Hypothesis
Ref Expression
seqomlem.a 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
Assertion
Ref Expression
seqomlem2 (𝑄 “ ω) Fn ω
Distinct variable groups:   𝑄,𝑖,𝑣   𝑖,𝐹,𝑣
Allowed substitution hints:   𝐼(𝑣,𝑖)

Proof of Theorem seqomlem2
Dummy variables 𝑎 𝑏 𝑐 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 frfnom 8357 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5926 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6579 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 231 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6841 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄𝑏))
72seqomlem1 8372 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
86, 7eqtrd 2764 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
9 fvex 6835 . . . . . . . . 9 (2nd ‘(𝑄𝑏)) ∈ V
10 opelxpi 5656 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
119, 10mpan2 691 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2828 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3046 . . . . . 6 𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7053 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 711 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6659 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5093 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6883 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6841 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄𝑐))
2221eqeq1d 2731 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3074 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 297 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8372 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2625adantl 481 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2726eqeq1d 2731 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3440 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6835 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄𝑐)) ∈ V
3028, 29opth1 5418 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30biimtrdi 253 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6831 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 229 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 39 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6822 . . . . . . . . . . . . 13 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3440 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3440 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 7933 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2781 . . . . . . . . . . . 12 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎)))
4034, 39syl6 35 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
4140rexlimdva 3130 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
422seqomlem1 8372 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
43 fveqeq2 6831 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩ ↔ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4443rspcev 3577 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩) → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4542, 44mpdan 687 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
46 opeq2 4825 . . . . . . . . . . . . 13 (𝑏 = (2nd ‘(𝑄𝑎)) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4746eqeq2d 2740 . . . . . . . . . . . 12 (𝑏 = (2nd ‘(𝑄𝑎)) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4847rexbidv 3153 . . . . . . . . . . 11 (𝑏 = (2nd ‘(𝑄𝑎)) → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4945, 48syl5ibrcom 247 . . . . . . . . . 10 (𝑎 ∈ ω → (𝑏 = (2nd ‘(𝑄𝑎)) → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩))
5041, 49impbid 212 . . . . . . . . 9 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ 𝑏 = (2nd ‘(𝑄𝑎))))
5124, 50bitrid 283 . . . . . . . 8 (𝑎 ∈ ω → (𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎))))
5251alrimiv 1927 . . . . . . 7 (𝑎 ∈ ω → ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎))))
53 fvex 6835 . . . . . . . 8 (2nd ‘(𝑄𝑎)) ∈ V
54 eqeq2 2741 . . . . . . . . . 10 (𝑐 = (2nd ‘(𝑄𝑎)) → (𝑏 = 𝑐𝑏 = (2nd ‘(𝑄𝑎))))
5554bibi2d 342 . . . . . . . . 9 (𝑐 = (2nd ‘(𝑄𝑎)) → ((𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐) ↔ (𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎)))))
5655albidv 1920 . . . . . . . 8 (𝑐 = (2nd ‘(𝑄𝑎)) → (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐) ↔ ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎)))))
5753, 56spcev 3561 . . . . . . 7 (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎))) → ∃𝑐𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐))
5852, 57syl 17 . . . . . 6 (𝑎 ∈ ω → ∃𝑐𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐))
59 eu6 2567 . . . . . 6 (∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐))
6058, 59sylibr 234 . . . . 5 (𝑎 ∈ ω → ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏)
6160rgen 3046 . . . 4 𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏
62 dff3 7034 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 711 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5632 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6643 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 231 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6654 . 2 ((𝑄 “ ω) Fn ω ↔ (𝑄 “ ω):ω⟶V)
6866, 67mpbir 231 1 (𝑄 “ ω) Fn ω
Colors of variables: wff setvar class
Syntax hints:  wb 206  wa 395  wal 1538   = wceq 1540  wex 1779  wcel 2109  ∃!weu 2561  wral 3044  wrex 3053  Vcvv 3436  wss 3903  c0 4284  cop 4583   class class class wbr 5092   I cid 5513   × cxp 5617  ran crn 5620  cres 5621  cima 5622  suc csuc 6309   Fn wfn 6477  wf 6478  cfv 6482  (class class class)co 7349  cmpo 7351  ωcom 7799  2nd c2nd 7923  reccrdg 8331
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5235  ax-nul 5245  ax-pr 5371  ax-un 7671
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4859  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332
This theorem is referenced by:  seqomlem3  8374  seqomlem4  8375  fnseqom  8377
  Copyright terms: Public domain W3C validator