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

Theorem seqomlem2 8419
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 8403 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5946 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6615 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 231 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6877 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄𝑏))
72seqomlem1 8418 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
86, 7eqtrd 2764 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
9 fvex 6871 . . . . . . . . 9 (2nd ‘(𝑄𝑏)) ∈ V
10 opelxpi 5675 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
119, 10mpan2 691 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2828 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3046 . . . . . 6 𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7091 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 711 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6695 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5108 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6921 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6877 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄𝑐))
2221eqeq1d 2731 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3074 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 297 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8418 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2625adantl 481 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2726eqeq1d 2731 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3451 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6871 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄𝑐)) ∈ V
3028, 29opth1 5435 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30biimtrdi 253 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6867 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 229 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 39 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6858 . . . . . . . . . . . . 13 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3451 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3451 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 7977 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2781 . . . . . . . . . . . 12 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎)))
4034, 39syl6 35 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
4140rexlimdva 3134 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
422seqomlem1 8418 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
43 fveqeq2 6867 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩ ↔ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4443rspcev 3588 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩) → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4542, 44mpdan 687 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
46 opeq2 4838 . . . . . . . . . . . . 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 6871 . . . . . . . 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 3572 . . . . . . 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 7072 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 711 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5651 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6679 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 231 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6690 . 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 3447  wss 3914  c0 4296  cop 4595   class class class wbr 5107   I cid 5532   × cxp 5636  ran crn 5639  cres 5640  cima 5641  suc csuc 6334   Fn wfn 6506  wf 6507  cfv 6511  (class class class)co 7387  cmpo 7389  ωcom 7842  2nd c2nd 7967  reccrdg 8377
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 5251  ax-nul 5261  ax-pr 5387  ax-un 7711
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 3355  df-rab 3406  df-v 3449  df-sbc 3754  df-csb 3863  df-dif 3917  df-un 3919  df-in 3921  df-ss 3931  df-pss 3934  df-nul 4297  df-if 4489  df-pw 4565  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4872  df-iun 4957  df-br 5108  df-opab 5170  df-mpt 5189  df-tr 5215  df-id 5533  df-eprel 5538  df-po 5546  df-so 5547  df-fr 5591  df-we 5593  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-rn 5649  df-res 5650  df-ima 5651  df-pred 6274  df-ord 6335  df-on 6336  df-lim 6337  df-suc 6338  df-iota 6464  df-fun 6513  df-fn 6514  df-f 6515  df-f1 6516  df-fo 6517  df-f1o 6518  df-fv 6519  df-ov 7390  df-oprab 7391  df-mpo 7392  df-om 7843  df-2nd 7969  df-frecs 8260  df-wrecs 8291  df-recs 8340  df-rdg 8378
This theorem is referenced by:  seqomlem3  8420  seqomlem4  8421  fnseqom  8423
  Copyright terms: Public domain W3C validator