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

Theorem seqomlem2 8465
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 8447 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5965 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6637 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 234 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6905 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄‘𝑏))
72seqomlem1 8464 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄‘𝑏) = ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩)
86, 7eqtrd 2795 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩)
9 fvex 6899 . . . . . . . . 9 (2nd ‘(𝑄‘𝑏)) ∈ V
10 opelxpi 5687 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄‘𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩ ∈ (ω × V))
119, 10mpan2 704 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2860 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3078 . . . . . 6 ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7120 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 724 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6718 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5103 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6946 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6905 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄‘𝑐))
2221eqeq1d 2762 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3107 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 300 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8464 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄‘𝑐) = ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩)
2625adantl 487 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄‘𝑐) = ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩)
2726eqeq1d 2762 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3454 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6899 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄‘𝑐)) ∈ V
3028, 29opth1 5443 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30biimtrdi 256 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6895 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 232 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 40 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6886 . . . . . . . . . . . . 13 ((𝑄‘𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄‘𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3454 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3454 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 8011 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2812 . . . . . . . . . . . 12 ((𝑄‘𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎)))
4034, 39syl6 36 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎))))
4140rexlimdva 3163 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎))))
422seqomlem1 8464 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
43 fveqeq2 6895 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩ ↔ (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4443rspcev 3576 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩) → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
4542, 44mpdan 700 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
46 opeq2 4840 . . . . . . . . . . . . 13 (𝑏 = (2nd ‘(𝑄‘𝑎)) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
4746eqeq2d 2771 . . . . . . . . . . . 12 (𝑏 = (2nd ‘(𝑄‘𝑎)) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4847rexbidv 3186 . . . . . . . . . . 11 (𝑏 = (2nd ‘(𝑄‘𝑎)) → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4945, 48syl5ibrcom 250 . . . . . . . . . 10 (𝑎 ∈ ω → (𝑏 = (2nd ‘(𝑄‘𝑎)) → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩))
5041, 49impbid 215 . . . . . . . . 9 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5124, 50bitrid 286 . . . . . . . 8 (𝑎 ∈ ω → (𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5251alrimiv 1959 . . . . . . 7 (𝑎 ∈ ω → ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
53 fvex 6899 . . . . . . . 8 (2nd ‘(𝑄‘𝑎)) ∈ V
54 eqeq2 2772 . . . . . . . . . 10 (𝑐 = (2nd ‘(𝑄‘𝑎)) → (𝑏 = 𝑐 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5554bibi2d 345 . . . . . . . . 9 (𝑐 = (2nd ‘(𝑄‘𝑎)) → ((𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐) ↔ (𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎)))))
5655albidv 1952 . . . . . . . 8 (𝑐 = (2nd ‘(𝑄‘𝑎)) → (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐) ↔ ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎)))))
5753, 56spcev 3560 . . . . . . 7 (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))) → ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
5852, 57syl 18 . . . . . 6 (𝑎 ∈ ω → ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
59 eu6 2599 . . . . . 6 (∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
6058, 59sylibr 237 . . . . 5 (𝑎 ∈ ω → ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏)
6160rgen 3078 . . . 4 ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏
62 dff3 7101 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 724 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5663 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6701 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 234 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6712 . 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 1567   = wceq 1569  ∃wex 1811   ∈ wcel 2144  ∃!weu 2593  ∀wral 3076  ∃wrex 3086  Vcvv 3450   ⊆ wss 3895  ∅c0 4278  ⟨cop 4834   class class class wbr 5102   I cid 5544   × cxp 5648  ran crn 5651   ↾ cres 5652   “ cima 5653  suc csuc 6364   Fn wfn 6534  ⟶wf 6535  ‘cfv 6539  (class class class)co 7421   ∈ cmpo 7423  ωcom 7878  2nd c2nd 8001  reccrdg 8421
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pr 5390  ax-un 7752
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-ss 3896  df-pss 4014  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-op 4835  df-uni 4867  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5545  df-eprel 5550  df-po 5558  df-so 5559  df-fr 5603  df-we 5605  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-pred 6304  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6541  df-fn 6542  df-f 6543  df-f1 6544  df-fo 6545  df-f1o 6546  df-fv 6547  df-ov 7424  df-oprab 7425  df-mpo 7426  df-om 7879  df-2nd 8003  df-frecs 8303  df-wrecs 8334  df-recs 8383  df-rdg 8422
This theorem is used by:  seqomlem3  8466  seqomlem4  8467  fnseqom  8469
  Copyright terms: Public domain W3C validator