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

Theorem seqomlem2 8454
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 8436 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5966 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6634 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 234 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6902 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄‘𝑏))
72seqomlem1 8453 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄‘𝑏) = ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩)
86, 7eqtrd 2796 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩)
9 fvex 6896 . . . . . . . . 9 (2nd ‘(𝑄‘𝑏)) ∈ V
10 opelxpi 5688 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄‘𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩ ∈ (ω × V))
119, 10mpan2 704 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2861 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3079 . . . . . 6 ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7117 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 724 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6715 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5104 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6943 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6902 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄‘𝑐))
2221eqeq1d 2763 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3108 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 300 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8453 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄‘𝑐) = ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩)
2625adantl 487 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄‘𝑐) = ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩)
2726eqeq1d 2763 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3455 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6896 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄‘𝑐)) ∈ V
3028, 29opth1 5444 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30biimtrdi 256 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6892 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 232 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 40 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6883 . . . . . . . . . . . . 13 ((𝑄‘𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄‘𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3455 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3455 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 8008 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2813 . . . . . . . . . . . 12 ((𝑄‘𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎)))
4034, 39syl6 36 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎))))
4140rexlimdva 3164 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎))))
422seqomlem1 8453 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
43 fveqeq2 6892 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩ ↔ (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4443rspcev 3577 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩) → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
4542, 44mpdan 700 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
46 opeq2 4834 . . . . . . . . . . . . 13 (𝑏 = (2nd ‘(𝑄‘𝑎)) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
4746eqeq2d 2772 . . . . . . . . . . . 12 (𝑏 = (2nd ‘(𝑄‘𝑎)) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4847rexbidv 3187 . . . . . . . . . . 11 (𝑏 = (2nd ‘(𝑄‘𝑎)) → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4945, 48syl5ibrcom 250 . . . . . . . . . 10 (𝑎 ∈ ω → (𝑏 = (2nd ‘(𝑄‘𝑎)) → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩))
5041, 49impbid 215 . . . . . . . . 9 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5124, 50bitrid 286 . . . . . . . 8 (𝑎 ∈ ω → (𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5251alrimiv 1960 . . . . . . 7 (𝑎 ∈ ω → ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
53 fvex 6896 . . . . . . . 8 (2nd ‘(𝑄‘𝑎)) ∈ V
54 eqeq2 2773 . . . . . . . . . 10 (𝑐 = (2nd ‘(𝑄‘𝑎)) → (𝑏 = 𝑐 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5554bibi2d 345 . . . . . . . . 9 (𝑐 = (2nd ‘(𝑄‘𝑎)) → ((𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐) ↔ (𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎)))))
5655albidv 1953 . . . . . . . 8 (𝑐 = (2nd ‘(𝑄‘𝑎)) → (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐) ↔ ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎)))))
5753, 56spcev 3561 . . . . . . 7 (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))) → ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
5852, 57syl 18 . . . . . 6 (𝑎 ∈ ω → ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
59 eu6 2600 . . . . . 6 (∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
6058, 59sylibr 237 . . . . 5 (𝑎 ∈ ω → ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏)
6160rgen 3079 . . . 4 ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏
62 dff3 7098 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 724 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5664 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6698 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 234 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6709 . 2 ((𝑄 “ ω) Fn ω ↔ (𝑄 “ ω):ω⟶V)
6866, 67mpbir 234 1 (𝑄 “ ω) Fn ω
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   ↔ wb 209   ∧ wa 401  ∀wal 1568   = wceq 1570  ∃wex 1812   ∈ wcel 2145  ∃!weu 2594  ∀wral 3077  ∃wrex 3087  Vcvv 3451   ⊆ wss 3899  ∅c0 4279  ⟨cop 4590   class class class wbr 5103   I cid 5545   × cxp 5649  ran crn 5652   ↾ cres 5653   “ cima 5654  suc csuc 6363   Fn wfn 6532  ⟶wf 6533  ‘cfv 6537  (class class class)co 7418   ∈ cmpo 7420  ωcom 7875  2nd c2nd 7998  reccrdg 8410
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391  ax-un 7749
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-ov 7421  df-oprab 7422  df-mpo 7423  df-om 7876  df-2nd 8000  df-frecs 8292  df-wrecs 8323  df-recs 8372  df-rdg 8411
This theorem is used by:  seqomlem3  8455  seqomlem4  8456  fnseqom  8458
  Copyright terms: Public domain W3C validator