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

Theorem seqomlem2 8499
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 8481 . . . . . . 7 (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω
2 seqomlem.a . . . . . . . . 9 𝑄 = rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩)
32reseq1i 5982 . . . . . . . 8 (𝑄 ↾ ω) = (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω)
43fneq1i 6666 . . . . . . 7 ((𝑄 ↾ ω) Fn ω ↔ (rec((𝑖 ∈ ω, 𝑣 ∈ V ↦ ⟨suc 𝑖, (𝑖𝐹𝑣)⟩), ⟨∅, ( I ‘𝐼)⟩) ↾ ω) Fn ω)
51, 4mpbir 234 . . . . . 6 (𝑄 ↾ ω) Fn ω
6 fvres 6935 . . . . . . . . 9 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = (𝑄‘𝑏))
72seqomlem1 8498 . . . . . . . . 9 (𝑏 ∈ ω → (𝑄‘𝑏) = ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩)
86, 7eqtrd 2798 . . . . . . . 8 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) = ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩)
9 fvex 6929 . . . . . . . . 9 (2nd ‘(𝑄‘𝑏)) ∈ V
10 opelxpi 5695 . . . . . . . . 9 ((𝑏 ∈ ω ∧ (2nd ‘(𝑄‘𝑏)) ∈ V) → ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩ ∈ (ω × V))
119, 10mpan2 704 . . . . . . . 8 (𝑏 ∈ ω → ⟨𝑏, (2nd ‘(𝑄‘𝑏))⟩ ∈ (ω × V))
128, 11eqeltrd 2864 . . . . . . 7 (𝑏 ∈ ω → ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V))
1312rgen 3082 . . . . . 6 ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)
14 ffnfv 7151 . . . . . 6 ((𝑄 ↾ ω):ω⟶(ω × V) ↔ ((𝑄 ↾ ω) Fn ω ∧ ∀𝑏 ∈ ω ((𝑄 ↾ ω)‘𝑏) ∈ (ω × V)))
155, 13, 14mpbir2an 724 . . . . 5 (𝑄 ↾ ω):ω⟶(ω × V)
16 frn 6747 . . . . 5 ((𝑄 ↾ ω):ω⟶(ω × V) → ran (𝑄 ↾ ω) ⊆ (ω × V))
1715, 16ax-mp 5 . . . 4 ran (𝑄 ↾ ω) ⊆ (ω × V)
18 df-br 5109 . . . . . . . . . 10 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω))
19 fvelrnb 6976 . . . . . . . . . . 11 ((𝑄 ↾ ω) Fn ω → (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩))
205, 19ax-mp 5 . . . . . . . . . 10 (⟨𝑎, 𝑏⟩ ∈ ran (𝑄 ↾ ω) ↔ ∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩)
21 fvres 6935 . . . . . . . . . . . 12 (𝑐 ∈ ω → ((𝑄 ↾ ω)‘𝑐) = (𝑄‘𝑐))
2221eqeq1d 2765 . . . . . . . . . . 11 (𝑐 ∈ ω → (((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩))
2322rexbiia 3111 . . . . . . . . . 10 (∃𝑐 ∈ ω ((𝑄 ↾ ω)‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩)
2418, 20, 233bitri 300 . . . . . . . . 9 (𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩)
252seqomlem1 8498 . . . . . . . . . . . . . . . 16 (𝑐 ∈ ω → (𝑄‘𝑐) = ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩)
2625adantl 487 . . . . . . . . . . . . . . 15 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → (𝑄‘𝑐) = ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩)
2726eqeq1d 2765 . . . . . . . . . . . . . 14 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩ = ⟨𝑎, 𝑏⟩))
28 vex 3458 . . . . . . . . . . . . . . 15 𝑐 ∈ V
29 fvex 6929 . . . . . . . . . . . . . . 15 (2nd ‘(𝑄‘𝑐)) ∈ V
3028, 29opth1 5451 . . . . . . . . . . . . . 14 (⟨𝑐, (2nd ‘(𝑄‘𝑐))⟩ = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎)
3127, 30biimtrdi 256 . . . . . . . . . . . . 13 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑐 = 𝑎))
32 fveqeq2 6925 . . . . . . . . . . . . . 14 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
3332biimpd 232 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
3431, 33syli 40 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → (𝑄‘𝑎) = ⟨𝑎, 𝑏⟩))
35 fveq2 6916 . . . . . . . . . . . . 13 ((𝑄‘𝑎) = ⟨𝑎, 𝑏⟩ → (2nd ‘(𝑄‘𝑎)) = (2nd ‘⟨𝑎, 𝑏⟩))
36 vex 3458 . . . . . . . . . . . . . 14 𝑎 ∈ V
37 vex 3458 . . . . . . . . . . . . . 14 𝑏 ∈ V
3836, 37op2nd 8044 . . . . . . . . . . . . 13 (2nd ‘⟨𝑎, 𝑏⟩) = 𝑏
3935, 38eqtr2di 2815 . . . . . . . . . . . 12 ((𝑄‘𝑎) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎)))
4034, 39syl6 36 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑐 ∈ ω) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎))))
4140rexlimdva 3167 . . . . . . . . . 10 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ → 𝑏 = (2nd ‘(𝑄‘𝑎))))
422seqomlem1 8498 . . . . . . . . . . . 12 (𝑎 ∈ ω → (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
43 fveqeq2 6925 . . . . . . . . . . . . 13 (𝑐 = 𝑎 → ((𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩ ↔ (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4443rspcev 3580 . . . . . . . . . . . 12 ((𝑎 ∈ ω ∧ (𝑄‘𝑎) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩) → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
4542, 44mpdan 700 . . . . . . . . . . 11 (𝑎 ∈ ω → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
46 opeq2 4846 . . . . . . . . . . . . 13 (𝑏 = (2nd ‘(𝑄‘𝑎)) → ⟨𝑎, 𝑏⟩ = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩)
4746eqeq2d 2774 . . . . . . . . . . . 12 (𝑏 = (2nd ‘(𝑄‘𝑎)) → ((𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4847rexbidv 3190 . . . . . . . . . . 11 (𝑏 = (2nd ‘(𝑄‘𝑎)) → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, (2nd ‘(𝑄‘𝑎))⟩))
4945, 48syl5ibrcom 250 . . . . . . . . . 10 (𝑎 ∈ ω → (𝑏 = (2nd ‘(𝑄‘𝑎)) → ∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩))
5041, 49impbid 215 . . . . . . . . 9 (𝑎 ∈ ω → (∃𝑐 ∈ ω (𝑄‘𝑐) = ⟨𝑎, 𝑏⟩ ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5124, 50bitrid 286 . . . . . . . 8 (𝑎 ∈ ω → (𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5251alrimiv 1962 . . . . . . 7 (𝑎 ∈ ω → ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
53 fvex 6929 . . . . . . . 8 (2nd ‘(𝑄‘𝑎)) ∈ V
54 eqeq2 2775 . . . . . . . . . 10 (𝑐 = (2nd ‘(𝑄‘𝑎)) → (𝑏 = 𝑐 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))))
5554bibi2d 345 . . . . . . . . 9 (𝑐 = (2nd ‘(𝑄‘𝑎)) → ((𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐) ↔ (𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎)))))
5655albidv 1955 . . . . . . . 8 (𝑐 = (2nd ‘(𝑄‘𝑎)) → (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐) ↔ ∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎)))))
5753, 56spcev 3564 . . . . . . 7 (∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = (2nd ‘(𝑄‘𝑎))) → ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
5852, 57syl 18 . . . . . 6 (𝑎 ∈ ω → ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
59 eu6 2602 . . . . . 6 (∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏 ↔ ∃𝑐∀𝑏(𝑎ran (𝑄 ↾ ω)𝑏 ↔ 𝑏 = 𝑐))
6058, 59sylibr 237 . . . . 5 (𝑎 ∈ ω → ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏)
6160rgen 3082 . . . 4 ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏
62 dff3 7132 . . . 4 (ran (𝑄 ↾ ω):ω⟶V ↔ (ran (𝑄 ↾ ω) ⊆ (ω × V) ∧ ∀𝑎 ∈ ω ∃!𝑏 𝑎ran (𝑄 ↾ ω)𝑏))
6317, 61, 62mpbir2an 724 . . 3 ran (𝑄 ↾ ω):ω⟶V
64 df-ima 5671 . . . 4 (𝑄 “ ω) = ran (𝑄 ↾ ω)
6564feq1i 6730 . . 3 ((𝑄 “ ω):ω⟶V ↔ ran (𝑄 ↾ ω):ω⟶V)
6663, 65mpbir 234 . 2 (𝑄 “ ω):ω⟶V
67 dffn2 6741 . 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 2147  ∃!weu 2596  ∀wral 3080  ∃wrex 3090  Vcvv 3454   ⊆ wss 3900  ∅c0 4281  ⟨cop 4840   class class class wbr 5108   I cid 5552   × cxp 5656  ran crn 5659   ↾ cres 5660   “ cima 5661  suc csuc 6390   Fn wfn 6561  ⟶wf 6562  ‘cfv 6566  (class class class)co 7451   ∈ cmpo 7453  ωcom 7911  2nd c2nd 8034  reccrdg 8455
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5255  ax-nul 5266  ax-pr 5398  ax-un 7783
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-lim 6393  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-ov 7454  df-oprab 7455  df-mpo 7456  df-om 7912  df-2nd 8036  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-rdg 8456
This theorem is used by:  seqomlem3  8500  seqomlem4  8501  fnseqom  8503
  Copyright terms: Public domain W3C validator