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

Theorem seqomlem2 8396
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 8380 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5935 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6597 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 231 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6859 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄𝑏))
72seqomlem1 8395 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
86, 7eqtrd 2764 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
9 fvex 6853 . . . . . . . . 9 (2nd ‘(𝑄𝑏)) ∈ V
10 opelxpi 5668 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
119, 10mpan2 691 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2828 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3046 . . . . . 6 𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7073 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 711 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6677 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5103 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6903 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6859 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄𝑐))
2221eqeq1d 2731 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3074 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 297 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8395 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2625adantl 481 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2726eqeq1d 2731 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3448 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6853 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄𝑐)) ∈ V
3028, 29opth1 5430 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30biimtrdi 253 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6849 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 229 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 39 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6840 . . . . . . . . . . . . 13 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3448 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3448 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 7956 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2781 . . . . . . . . . . . 12 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎)))
4034, 39syl6 35 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
4140rexlimdva 3134 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
422seqomlem1 8395 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
43 fveqeq2 6849 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩ ↔ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4443rspcev 3585 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩) → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4542, 44mpdan 687 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
46 opeq2 4834 . . . . . . . . . . . . 13 (𝑏 = (2nd ‘(𝑄𝑎)) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4746eqeq2d 2740 . . . . . . . . . . . 12 (𝑏 = (2nd ‘(𝑄𝑎)) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4847rexbidv 3157 . . . . . . . . . . 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 6853 . . . . . . . 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 3569 . . . . . . 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 7054 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 711 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5644 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6661 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 231 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6672 . 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 3444  wss 3911  c0 4292  cop 4591   class class class wbr 5102   I cid 5525   × cxp 5629  ran crn 5632  cres 5633  cima 5634  suc csuc 6322   Fn wfn 6494  wf 6495  cfv 6499  (class class class)co 7369  cmpo 7371  ωcom 7822  2nd c2nd 7946  reccrdg 8354
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 5246  ax-nul 5256  ax-pr 5382  ax-un 7691
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 3352  df-rab 3403  df-v 3446  df-sbc 3751  df-csb 3860  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-pss 3931  df-nul 4293  df-if 4485  df-pw 4561  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4868  df-iun 4953  df-br 5103  df-opab 5165  df-mpt 5184  df-tr 5210  df-id 5526  df-eprel 5531  df-po 5539  df-so 5540  df-fr 5584  df-we 5586  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-pred 6262  df-ord 6323  df-on 6324  df-lim 6325  df-suc 6326  df-iota 6452  df-fun 6501  df-fn 6502  df-f 6503  df-f1 6504  df-fo 6505  df-f1o 6506  df-fv 6507  df-ov 7372  df-oprab 7373  df-mpo 7374  df-om 7823  df-2nd 7948  df-frecs 8237  df-wrecs 8268  df-recs 8317  df-rdg 8355
This theorem is referenced by:  seqomlem3  8397  seqomlem4  8398  fnseqom  8400
  Copyright terms: Public domain W3C validator