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

Theorem tfrlem9 8378
Description: Lemma for transfinite recursion. Here we compute the value of recs (the union of all acceptable functions). (Contributed by NM, 17-Aug-1994.)
Hypothesis
Ref Expression
tfrlem.1 𝐴 = {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))}
Assertion
Ref Expression
tfrlem9 (𝐵 ∈ dom recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))
Distinct variable groups:   𝑥,𝑓,𝑦,𝐵   𝑓,𝐹,𝑥,𝑦
Allowed substitution hints:   𝐴(𝑥, 𝑦, 𝑓)

Proof of Theorem tfrlem9
Dummy variable 𝑧 is distinct from all other variables.
StepHypRef Expression
1 eldm2g 5891 . . 3 (𝐵 ∈ dom recs(𝐹) → (𝐵 ∈ dom recs(𝐹) ↔ ∃𝑧𝐵, 𝑧⟩ ∈ recs(𝐹)))
21ibi 270 . 2 (𝐵 ∈ dom recs(𝐹) → ∃𝑧𝐵, 𝑧⟩ ∈ recs(𝐹))
3 dfrecs3 8365 . . . . . 6 recs(𝐹) = {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))}
43eleq2i 2857 . . . . 5 (⟨𝐵, 𝑧⟩ ∈ recs(𝐹) ↔ ⟨𝐵, 𝑧⟩ ∈ {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))})
5 eluniab 4888 . . . . 5 (⟨𝐵, 𝑧⟩ ∈ {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))} ↔ ∃𝑓(⟨𝐵, 𝑧⟩ ∈ 𝑓 ∧ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))))
64, 5bitri 278 . . . 4 (⟨𝐵, 𝑧⟩ ∈ recs(𝐹) ↔ ∃𝑓(⟨𝐵, 𝑧⟩ ∈ 𝑓 ∧ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))))
7 fnop 6648 . . . . . . . . . . . . . 14 ((𝑓 Fn 𝑥 ∧ ⟨𝐵, 𝑧⟩ ∈ 𝑓) → 𝐵𝑥)
8 rspe 3257 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ On ∧ (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦))))
9 tfrlem.1 . . . . . . . . . . . . . . . . . 18 𝐴 = {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))}
109eqabri 2907 . . . . . . . . . . . . . . . . 17 (𝑓𝐴 ↔ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦))))
11 elssuni 4906 . . . . . . . . . . . . . . . . . 18 (𝑓𝐴𝑓 𝐴)
129recsfval 8373 . . . . . . . . . . . . . . . . . 18 recs(𝐹) = 𝐴
1311, 12sseqtrrdi 3979 . . . . . . . . . . . . . . . . 17 (𝑓𝐴𝑓 ⊆ recs(𝐹))
1410, 13sylbir 238 . . . . . . . . . . . . . . . 16 (∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦))) → 𝑓 ⊆ recs(𝐹))
158, 14syl 18 . . . . . . . . . . . . . . 15 ((𝑥 ∈ On ∧ (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → 𝑓 ⊆ recs(𝐹))
16 fveq2 6885 . . . . . . . . . . . . . . . . . . . 20 (𝑦 = 𝐵 → (𝑓𝑦) = (𝑓𝐵))
17 reseq2 5975 . . . . . . . . . . . . . . . . . . . . 21 (𝑦 = 𝐵 → (𝑓𝑦) = (𝑓𝐵))
1817fveq2d 6889 . . . . . . . . . . . . . . . . . . . 20 (𝑦 = 𝐵 → (𝐹‘(𝑓𝑦)) = (𝐹‘(𝑓𝐵)))
1916, 18eqeq12d 2781 . . . . . . . . . . . . . . . . . . 19 (𝑦 = 𝐵 → ((𝑓𝑦) = (𝐹‘(𝑓𝑦)) ↔ (𝑓𝐵) = (𝐹‘(𝑓𝐵))))
2019rspcv 3579 . . . . . . . . . . . . . . . . . 18 (𝐵𝑥 → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (𝑓𝐵) = (𝐹‘(𝑓𝐵))))
21 fndm 6642 . . . . . . . . . . . . . . . . . . . . 21 (𝑓 Fn 𝑥 → dom 𝑓 = 𝑥)
2221eleq2d 2851 . . . . . . . . . . . . . . . . . . . 20 (𝑓 Fn 𝑥 → (𝐵 ∈ dom 𝑓𝐵𝑥))
239tfrlem7 8376 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Fun recs(𝐹)
24 funssfv 6906 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((Fun recs(𝐹) ∧ 𝑓 ⊆ recs(𝐹) ∧ 𝐵 ∈ dom 𝑓) → (recs(𝐹)‘𝐵) = (𝑓𝐵))
2523, 24mp3an1 1477 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑓 ⊆ recs(𝐹) ∧ 𝐵 ∈ dom 𝑓) → (recs(𝐹)‘𝐵) = (𝑓𝐵))
2625adantrl 729 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑓 ⊆ recs(𝐹) ∧ ((𝑓 Fn 𝑥𝑥 ∈ On) ∧ 𝐵 ∈ dom 𝑓)) → (recs(𝐹)‘𝐵) = (𝑓𝐵))
2721eleq1d 2850 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑓 Fn 𝑥 → (dom 𝑓 ∈ On ↔ 𝑥 ∈ On))
28 onelss 6407 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (dom 𝑓 ∈ On → (𝐵 ∈ dom 𝑓𝐵 ⊆ dom 𝑓))
2927, 28biimtrrdi 257 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑓 Fn 𝑥 → (𝑥 ∈ On → (𝐵 ∈ dom 𝑓𝐵 ⊆ dom 𝑓)))
3029imp31 423 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑓 Fn 𝑥𝑥 ∈ On) ∧ 𝐵 ∈ dom 𝑓) → 𝐵 ⊆ dom 𝑓)
31 fun2ssres 6585 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((Fun recs(𝐹) ∧ 𝑓 ⊆ recs(𝐹) ∧ 𝐵 ⊆ dom 𝑓) → (recs(𝐹) ↾ 𝐵) = (𝑓𝐵))
3231fveq2d 6889 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((Fun recs(𝐹) ∧ 𝑓 ⊆ recs(𝐹) ∧ 𝐵 ⊆ dom 𝑓) → (𝐹‘(recs(𝐹) ↾ 𝐵)) = (𝐹‘(𝑓𝐵)))
3323, 32mp3an1 1477 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑓 ⊆ recs(𝐹) ∧ 𝐵 ⊆ dom 𝑓) → (𝐹‘(recs(𝐹) ↾ 𝐵)) = (𝐹‘(𝑓𝐵)))
3430, 33sylan2 605 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑓 ⊆ recs(𝐹) ∧ ((𝑓 Fn 𝑥𝑥 ∈ On) ∧ 𝐵 ∈ dom 𝑓)) → (𝐹‘(recs(𝐹) ↾ 𝐵)) = (𝐹‘(𝑓𝐵)))
3526, 34eqeq12d 2781 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑓 ⊆ recs(𝐹) ∧ ((𝑓 Fn 𝑥𝑥 ∈ On) ∧ 𝐵 ∈ dom 𝑓)) → ((recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)) ↔ (𝑓𝐵) = (𝐹‘(𝑓𝐵))))
3635exbiri 823 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑓 ⊆ recs(𝐹) → (((𝑓 Fn 𝑥𝑥 ∈ On) ∧ 𝐵 ∈ dom 𝑓) → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))
3736com3l 90 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑓 Fn 𝑥𝑥 ∈ On) ∧ 𝐵 ∈ dom 𝑓) → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))
3837exp31 425 . . . . . . . . . . . . . . . . . . . . . 22 (𝑓 Fn 𝑥 → (𝑥 ∈ On → (𝐵 ∈ dom 𝑓 → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
3938com34 92 . . . . . . . . . . . . . . . . . . . . 21 (𝑓 Fn 𝑥 → (𝑥 ∈ On → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (𝐵 ∈ dom 𝑓 → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
4039com24 96 . . . . . . . . . . . . . . . . . . . 20 (𝑓 Fn 𝑥 → (𝐵 ∈ dom 𝑓 → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (𝑥 ∈ On → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
4122, 40sylbird 263 . . . . . . . . . . . . . . . . . . 19 (𝑓 Fn 𝑥 → (𝐵𝑥 → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (𝑥 ∈ On → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
4241com3l 90 . . . . . . . . . . . . . . . . . 18 (𝐵𝑥 → ((𝑓𝐵) = (𝐹‘(𝑓𝐵)) → (𝑓 Fn 𝑥 → (𝑥 ∈ On → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
4320, 42syld 48 . . . . . . . . . . . . . . . . 17 (𝐵𝑥 → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (𝑓 Fn 𝑥 → (𝑥 ∈ On → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
4443com24 96 . . . . . . . . . . . . . . . 16 (𝐵𝑥 → (𝑥 ∈ On → (𝑓 Fn 𝑥 → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
4544imp4d 430 . . . . . . . . . . . . . . 15 (𝐵𝑥 → ((𝑥 ∈ On ∧ (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → (𝑓 ⊆ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))
4615, 45mpdi 46 . . . . . . . . . . . . . 14 (𝐵𝑥 → ((𝑥 ∈ On ∧ (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵))))
477, 46syl 18 . . . . . . . . . . . . 13 ((𝑓 Fn 𝑥 ∧ ⟨𝐵, 𝑧⟩ ∈ 𝑓) → ((𝑥 ∈ On ∧ (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵))))
4847exp4d 439 . . . . . . . . . . . 12 ((𝑓 Fn 𝑥 ∧ ⟨𝐵, 𝑧⟩ ∈ 𝑓) → (𝑥 ∈ On → (𝑓 Fn 𝑥 → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵))))))
4948ex 418 . . . . . . . . . . 11 (𝑓 Fn 𝑥 → (⟨𝐵, 𝑧⟩ ∈ 𝑓 → (𝑥 ∈ On → (𝑓 Fn 𝑥 → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
5049com4r 95 . . . . . . . . . 10 (𝑓 Fn 𝑥 → (𝑓 Fn 𝑥 → (⟨𝐵, 𝑧⟩ ∈ 𝑓 → (𝑥 ∈ On → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))))
5150pm2.43i 53 . . . . . . . . 9 (𝑓 Fn 𝑥 → (⟨𝐵, 𝑧⟩ ∈ 𝑓 → (𝑥 ∈ On → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵))))))
5251com3l 90 . . . . . . . 8 (⟨𝐵, 𝑧⟩ ∈ 𝑓 → (𝑥 ∈ On → (𝑓 Fn 𝑥 → (∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵))))))
5352imp4a 428 . . . . . . 7 (⟨𝐵, 𝑧⟩ ∈ 𝑓 → (𝑥 ∈ On → ((𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦))) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))))
5453rexlimdv 3166 . . . . . 6 (⟨𝐵, 𝑧⟩ ∈ 𝑓 → (∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦))) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵))))
5554imp 412 . . . . 5 ((⟨𝐵, 𝑧⟩ ∈ 𝑓 ∧ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))
5655exlimiv 1963 . . . 4 (∃𝑓(⟨𝐵, 𝑧⟩ ∈ 𝑓 ∧ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))
576, 56sylbi 220 . . 3 (⟨𝐵, 𝑧⟩ ∈ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))
5857exlimiv 1963 . 2 (∃𝑧𝐵, 𝑧⟩ ∈ recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))
592, 58syl 18 1 (𝐵 ∈ dom recs(𝐹) → (recs(𝐹)‘𝐵) = (𝐹‘(recs(𝐹) ↾ 𝐵)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wex 1812  wcel 2146  {cab 2743  wral 3081  wrex 3091  wss 3906  cop 4597   cuni 4874  dom cdm 5663  cres 5665  Oncon0 6364  Fun wfun 6534   Fn wfn 6535  cfv 6540  recscrecs 8363
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-sep 5259  ax-nul 5271  ax-pr 5406  ax-un 7742
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 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3082  df-rex 3092  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-fo 6546  df-fv 6548  df-ov 7422  df-2nd 7993  df-frecs 8284  df-wrecs 8315  df-recs 8364
This theorem is used by:  tfrlem11  8381  tfr2a  8388
  Copyright terms: Public domain W3C validator