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

Theorem seqomlem2 8397
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 8381 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5933 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6599 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 230 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6861 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄𝑏))
72seqomlem1 8396 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
86, 7eqtrd 2776 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄𝑏))⟩)
9 fvex 6855 . . . . . . . . 9 (2nd ‘(𝑄𝑏)) ∈ V
10 opelxpi 5670 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
119, 10mpan2 689 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2838 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3066 . . . . . 6 𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7066 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 709 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6675 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5106 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6903 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6861 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄𝑐))
2221eqeq1d 2738 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3095 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 296 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8396 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2625adantl 482 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄𝑐) = ⟨𝑐, (2nd ‘(𝑄𝑐))⟩)
2726eqeq1d 2738 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3449 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6855 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄𝑐)) ∈ V
3028, 29opth1 5432 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30syl6bi 252 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6851 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 228 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 39 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6842 . . . . . . . . . . . . 13 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3449 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3449 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 7930 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2793 . . . . . . . . . . . 12 ((𝑄𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎)))
4034, 39syl6 35 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
4140rexlimdva 3152 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄𝑎))))
422seqomlem1 8396 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
43 fveqeq2 6851 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩ ↔ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4443rspcev 3581 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄𝑎) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩) → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4542, 44mpdan 685 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
46 opeq2 4831 . . . . . . . . . . . . 13 (𝑏 = (2nd ‘(𝑄𝑎)) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩)
4746eqeq2d 2747 . . . . . . . . . . . 12 (𝑏 = (2nd ‘(𝑄𝑎)) → ((𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4847rexbidv 3175 . . . . . . . . . . 11 (𝑏 = (2nd ‘(𝑄𝑎)) → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, (2nd ‘(𝑄𝑎))⟩))
4945, 48syl5ibrcom 246 . . . . . . . . . 10 (𝑎 ∈ ω → (𝑏 = (2nd ‘(𝑄𝑎)) → ∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩))
5041, 49impbid 211 . . . . . . . . 9 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄𝑐) = ⟨𝑎, 𝑏⟩ ↔ 𝑏 = (2nd ‘(𝑄𝑎))))
5124, 50bitrid 282 . . . . . . . 8 (𝑎 ∈ ω → (𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎))))
5251alrimiv 1930 . . . . . . 7 (𝑎 ∈ ω → ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎))))
53 fvex 6855 . . . . . . . 8 (2nd ‘(𝑄𝑎)) ∈ V
54 eqeq2 2748 . . . . . . . . . 10 (𝑐 = (2nd ‘(𝑄𝑎)) → (𝑏 = 𝑐𝑏 = (2nd ‘(𝑄𝑎))))
5554bibi2d 342 . . . . . . . . 9 (𝑐 = (2nd ‘(𝑄𝑎)) → ((𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐) ↔ (𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎)))))
5655albidv 1923 . . . . . . . 8 (𝑐 = (2nd ‘(𝑄𝑎)) → (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐) ↔ ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎)))))
5753, 56spcev 3565 . . . . . . 7 (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = (2nd ‘(𝑄𝑎))) → ∃𝑐𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐))
5852, 57syl 17 . . . . . 6 (𝑎 ∈ ω → ∃𝑐𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐))
59 eu6 2572 . . . . . 6 (∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐𝑏(𝑎ran (𝑄 ↾ ω)𝑏𝑏 = 𝑐))
6058, 59sylibr 233 . . . . 5 (𝑎 ∈ ω → ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏)
6160rgen 3066 . . . 4 𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏
62 dff3 7050 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 709 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5646 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6659 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 230 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6670 . 2 ((𝑄 “ ω) Fn ω ↔ (𝑄 “ ω):ω⟶V)
6866, 67mpbir 230 1 (𝑄 “ ω) Fn ω
Colors of variables: wff setvar class
Syntax hints:  wb 205  wa 396  wal 1539   = wceq 1541  wex 1781  wcel 2106  ∃!weu 2566  wral 3064  wrex 3073  Vcvv 3445  wss 3910  c0 4282  cop 4592   class class class wbr 5105   I cid 5530   × cxp 5631  ran crn 5634  cres 5635  cima 5636  suc csuc 6319   Fn wfn 6491  wf 6492  cfv 6496  (class class class)co 7357  cmpo 7359  ωcom 7802  2nd c2nd 7920  reccrdg 8355
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2707  ax-sep 5256  ax-nul 5263  ax-pr 5384  ax-un 7672
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2889  df-ne 2944  df-ral 3065  df-rex 3074  df-reu 3354  df-rab 3408  df-v 3447  df-sbc 3740  df-csb 3856  df-dif 3913  df-un 3915  df-in 3917  df-ss 3927  df-pss 3929  df-nul 4283  df-if 4487  df-pw 4562  df-sn 4587  df-pr 4589  df-op 4593  df-uni 4866  df-iun 4956  df-br 5106  df-opab 5168  df-mpt 5189  df-tr 5223  df-id 5531  df-eprel 5537  df-po 5545  df-so 5546  df-fr 5588  df-we 5590  df-xp 5639  df-rel 5640  df-cnv 5641  df-co 5642  df-dm 5643  df-rn 5644  df-res 5645  df-ima 5646  df-pred 6253  df-ord 6320  df-on 6321  df-lim 6322  df-suc 6323  df-iota 6448  df-fun 6498  df-fn 6499  df-f 6500  df-f1 6501  df-fo 6502  df-f1o 6503  df-fv 6504  df-ov 7360  df-oprab 7361  df-mpo 7362  df-om 7803  df-2nd 7922  df-frecs 8212  df-wrecs 8243  df-recs 8317  df-rdg 8356
This theorem is referenced by:  seqomlem3  8398  seqomlem4  8399  fnseqom  8401
  Copyright terms: Public domain W3C validator