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

Theorem frrlem15 9749
Description: Lemma for general well-founded recursion. Two acceptable functions are compatible. (Contributed by Scott Fenton, 11-Sep-2023.)
Hypotheses
Ref Expression
frrlem15.1 𝐵 = {𝑓 ∣ ∃𝑥(𝑓 Fn 𝑥 ∧ (𝑥𝐴 ∧ ∀𝑦𝑥 Pred(𝑅, 𝐴, 𝑦) ⊆ 𝑥) ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝑦𝐺(𝑓 ↾ Pred(𝑅, 𝐴, 𝑦))))}
frrlem15.2 𝐹 = frecs(𝑅, 𝐴, 𝐺)
Assertion
Ref Expression
frrlem15 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → ((𝑥𝑔𝑢𝑥𝑣) → 𝑢 = 𝑣))
Distinct variable groups:   𝐴,𝑓,𝑥,𝑦,𝑔,,𝑢,𝑣   𝑅,𝑓,𝑥,𝑦,𝑔,,𝑢,𝑣   𝑓,𝐺,𝑥,𝑦,𝑔,,𝑢,𝑣
Allowed substitution hints:   𝐵(𝑥,𝑦,𝑣,𝑢,𝑓,𝑔,)   𝐹(𝑥,𝑦,𝑣,𝑢,𝑓,𝑔,)

Proof of Theorem frrlem15
Dummy variable 𝑎 is distinct from all other variables.
StepHypRef Expression
1 vex 3479 . . . . . 6 𝑥 ∈ V
2 vex 3479 . . . . . 6 𝑢 ∈ V
31, 2breldm 5907 . . . . 5 (𝑥𝑔𝑢𝑥 ∈ dom 𝑔)
43adantr 482 . . . 4 ((𝑥𝑔𝑢𝑥𝑣) → 𝑥 ∈ dom 𝑔)
5 vex 3479 . . . . . 6 𝑣 ∈ V
61, 5breldm 5907 . . . . 5 (𝑥𝑣𝑥 ∈ dom )
76adantl 483 . . . 4 ((𝑥𝑔𝑢𝑥𝑣) → 𝑥 ∈ dom )
84, 7elind 4194 . . 3 ((𝑥𝑔𝑢𝑥𝑣) → 𝑥 ∈ (dom 𝑔 ∩ dom ))
9 id 22 . . 3 ((𝑥𝑔𝑢𝑥𝑣) → (𝑥𝑔𝑢𝑥𝑣))
102brresi 5989 . . . . 5 (𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢 ↔ (𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥𝑔𝑢))
115brresi 5989 . . . . 5 (𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣 ↔ (𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥𝑣))
1210, 11anbi12i 628 . . . 4 ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣) ↔ ((𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥𝑔𝑢) ∧ (𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥𝑣)))
13 an4 655 . . . 4 (((𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥𝑔𝑢) ∧ (𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥𝑣)) ↔ ((𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥 ∈ (dom 𝑔 ∩ dom )) ∧ (𝑥𝑔𝑢𝑥𝑣)))
1412, 13bitri 275 . . 3 ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣) ↔ ((𝑥 ∈ (dom 𝑔 ∩ dom ) ∧ 𝑥 ∈ (dom 𝑔 ∩ dom )) ∧ (𝑥𝑔𝑢𝑥𝑣)))
158, 8, 9, 14syl21anbrc 1345 . 2 ((𝑥𝑔𝑢𝑥𝑣) → (𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣))
16 inss1 4228 . . . . . . . . 9 (dom 𝑔 ∩ dom ) ⊆ dom 𝑔
17 frrlem15.1 . . . . . . . . . 10 𝐵 = {𝑓 ∣ ∃𝑥(𝑓 Fn 𝑥 ∧ (𝑥𝐴 ∧ ∀𝑦𝑥 Pred(𝑅, 𝐴, 𝑦) ⊆ 𝑥) ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝑦𝐺(𝑓 ↾ Pred(𝑅, 𝐴, 𝑦))))}
1817frrlem3 8270 . . . . . . . . 9 (𝑔𝐵 → dom 𝑔𝐴)
1916, 18sstrid 3993 . . . . . . . 8 (𝑔𝐵 → (dom 𝑔 ∩ dom ) ⊆ 𝐴)
2019ad2antrl 727 . . . . . . 7 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → (dom 𝑔 ∩ dom ) ⊆ 𝐴)
21 simpll 766 . . . . . . 7 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → 𝑅 Fr 𝐴)
22 frss 5643 . . . . . . 7 ((dom 𝑔 ∩ dom ) ⊆ 𝐴 → (𝑅 Fr 𝐴𝑅 Fr (dom 𝑔 ∩ dom )))
2320, 21, 22sylc 65 . . . . . 6 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → 𝑅 Fr (dom 𝑔 ∩ dom ))
24 simplr 768 . . . . . . 7 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → 𝑅 Se 𝐴)
25 sess2 5645 . . . . . . 7 ((dom 𝑔 ∩ dom ) ⊆ 𝐴 → (𝑅 Se 𝐴𝑅 Se (dom 𝑔 ∩ dom )))
2620, 24, 25sylc 65 . . . . . 6 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → 𝑅 Se (dom 𝑔 ∩ dom ))
2717frrlem4 8271 . . . . . . 7 ((𝑔𝐵𝐵) → ((𝑔 ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )((𝑔 ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺((𝑔 ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))))
2827adantl 483 . . . . . 6 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → ((𝑔 ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )((𝑔 ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺((𝑔 ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))))
2917frrlem4 8271 . . . . . . . . 9 ((𝐵𝑔𝐵) → (( ↾ (dom ∩ dom 𝑔)) Fn (dom ∩ dom 𝑔) ∧ ∀𝑎 ∈ (dom ∩ dom 𝑔)(( ↾ (dom ∩ dom 𝑔))‘𝑎) = (𝑎𝐺(( ↾ (dom ∩ dom 𝑔)) ↾ Pred(𝑅, (dom ∩ dom 𝑔), 𝑎)))))
30 incom 4201 . . . . . . . . . . . 12 (dom 𝑔 ∩ dom ) = (dom ∩ dom 𝑔)
3130reseq2i 5977 . . . . . . . . . . 11 ( ↾ (dom 𝑔 ∩ dom )) = ( ↾ (dom ∩ dom 𝑔))
32 fneq12 6643 . . . . . . . . . . 11 ((( ↾ (dom 𝑔 ∩ dom )) = ( ↾ (dom ∩ dom 𝑔)) ∧ (dom 𝑔 ∩ dom ) = (dom ∩ dom 𝑔)) → (( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ↔ ( ↾ (dom ∩ dom 𝑔)) Fn (dom ∩ dom 𝑔)))
3331, 30, 32mp2an 691 . . . . . . . . . 10 (( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ↔ ( ↾ (dom ∩ dom 𝑔)) Fn (dom ∩ dom 𝑔))
3431fveq1i 6890 . . . . . . . . . . . 12 (( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (( ↾ (dom ∩ dom 𝑔))‘𝑎)
35 predeq2 6301 . . . . . . . . . . . . . . 15 ((dom 𝑔 ∩ dom ) = (dom ∩ dom 𝑔) → Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎) = Pred(𝑅, (dom ∩ dom 𝑔), 𝑎))
3630, 35ax-mp 5 . . . . . . . . . . . . . 14 Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎) = Pred(𝑅, (dom ∩ dom 𝑔), 𝑎)
3731, 36reseq12i 5978 . . . . . . . . . . . . 13 (( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)) = (( ↾ (dom ∩ dom 𝑔)) ↾ Pred(𝑅, (dom ∩ dom 𝑔), 𝑎))
3837oveq2i 7417 . . . . . . . . . . . 12 (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎))) = (𝑎𝐺(( ↾ (dom ∩ dom 𝑔)) ↾ Pred(𝑅, (dom ∩ dom 𝑔), 𝑎)))
3934, 38eqeq12i 2751 . . . . . . . . . . 11 ((( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎))) ↔ (( ↾ (dom ∩ dom 𝑔))‘𝑎) = (𝑎𝐺(( ↾ (dom ∩ dom 𝑔)) ↾ Pred(𝑅, (dom ∩ dom 𝑔), 𝑎))))
4030, 39raleqbii 3339 . . . . . . . . . 10 (∀𝑎 ∈ (dom 𝑔 ∩ dom )(( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎))) ↔ ∀𝑎 ∈ (dom ∩ dom 𝑔)(( ↾ (dom ∩ dom 𝑔))‘𝑎) = (𝑎𝐺(( ↾ (dom ∩ dom 𝑔)) ↾ Pred(𝑅, (dom ∩ dom 𝑔), 𝑎))))
4133, 40anbi12i 628 . . . . . . . . 9 ((( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )(( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))) ↔ (( ↾ (dom ∩ dom 𝑔)) Fn (dom ∩ dom 𝑔) ∧ ∀𝑎 ∈ (dom ∩ dom 𝑔)(( ↾ (dom ∩ dom 𝑔))‘𝑎) = (𝑎𝐺(( ↾ (dom ∩ dom 𝑔)) ↾ Pred(𝑅, (dom ∩ dom 𝑔), 𝑎)))))
4229, 41sylibr 233 . . . . . . . 8 ((𝐵𝑔𝐵) → (( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )(( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))))
4342ancoms 460 . . . . . . 7 ((𝑔𝐵𝐵) → (( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )(( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))))
4443adantl 483 . . . . . 6 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → (( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )(( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))))
45 frr3g 9748 . . . . . 6 (((𝑅 Fr (dom 𝑔 ∩ dom ) ∧ 𝑅 Se (dom 𝑔 ∩ dom )) ∧ ((𝑔 ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )((𝑔 ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺((𝑔 ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎)))) ∧ (( ↾ (dom 𝑔 ∩ dom )) Fn (dom 𝑔 ∩ dom ) ∧ ∀𝑎 ∈ (dom 𝑔 ∩ dom )(( ↾ (dom 𝑔 ∩ dom ))‘𝑎) = (𝑎𝐺(( ↾ (dom 𝑔 ∩ dom )) ↾ Pred(𝑅, (dom 𝑔 ∩ dom ), 𝑎))))) → (𝑔 ↾ (dom 𝑔 ∩ dom )) = ( ↾ (dom 𝑔 ∩ dom )))
4623, 26, 28, 44, 45syl211anc 1377 . . . . 5 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → (𝑔 ↾ (dom 𝑔 ∩ dom )) = ( ↾ (dom 𝑔 ∩ dom )))
4746breqd 5159 . . . 4 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → (𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣))
4847biimprd 247 . . 3 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → (𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣))
4917frrlem2 8269 . . . . . 6 (𝑔𝐵 → Fun 𝑔)
5049funresd 6589 . . . . 5 (𝑔𝐵 → Fun (𝑔 ↾ (dom 𝑔 ∩ dom )))
5150ad2antrl 727 . . . 4 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → Fun (𝑔 ↾ (dom 𝑔 ∩ dom )))
52 dffun2 6551 . . . . 5 (Fun (𝑔 ↾ (dom 𝑔 ∩ dom )) ↔ (Rel (𝑔 ↾ (dom 𝑔 ∩ dom )) ∧ ∀𝑥𝑢𝑣((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣)))
53 2sp 2180 . . . . . 6 (∀𝑢𝑣((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣) → ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣))
5453sps 2179 . . . . 5 (∀𝑥𝑢𝑣((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣) → ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣))
5552, 54simplbiim 506 . . . 4 (Fun (𝑔 ↾ (dom 𝑔 ∩ dom )) → ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣))
5651, 55syl 17 . . 3 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣))
5748, 56sylan2d 606 . 2 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → ((𝑥(𝑔 ↾ (dom 𝑔 ∩ dom ))𝑢𝑥( ↾ (dom 𝑔 ∩ dom ))𝑣) → 𝑢 = 𝑣))
5815, 57syl5 34 1 (((𝑅 Fr 𝐴𝑅 Se 𝐴) ∧ (𝑔𝐵𝐵)) → ((𝑥𝑔𝑢𝑥𝑣) → 𝑢 = 𝑣))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 397  w3a 1088  wal 1540   = wceq 1542  wex 1782  wcel 2107  {cab 2710  wral 3062  cin 3947  wss 3948   class class class wbr 5148   Fr wfr 5628   Se wse 5629  dom cdm 5676  cres 5678  Rel wrel 5681  Predcpred 6297  Fun wfun 6535   Fn wfn 6536  cfv 6541  (class class class)co 7406  frecscfrecs 8262
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2704  ax-rep 5285  ax-sep 5299  ax-nul 5306  ax-pr 5427  ax-un 7722  ax-inf2 9633
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2535  df-eu 2564  df-clab 2711  df-cleq 2725  df-clel 2811  df-nfc 2886  df-ne 2942  df-ral 3063  df-rex 3072  df-rmo 3377  df-reu 3378  df-rab 3434  df-v 3477  df-sbc 3778  df-csb 3894  df-dif 3951  df-un 3953  df-in 3955  df-ss 3965  df-pss 3967  df-nul 4323  df-if 4529  df-pw 4604  df-sn 4629  df-pr 4631  df-op 4635  df-uni 4909  df-int 4951  df-iun 4999  df-br 5149  df-opab 5211  df-mpt 5232  df-tr 5266  df-id 5574  df-eprel 5580  df-po 5588  df-so 5589  df-fr 5631  df-se 5632  df-we 5633  df-xp 5682  df-rel 5683  df-cnv 5684  df-co 5685  df-dm 5686  df-rn 5687  df-res 5688  df-ima 5689  df-pred 6298  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6493  df-fun 6543  df-fn 6544  df-f 6545  df-f1 6546  df-fo 6547  df-f1o 6548  df-fv 6549  df-riota 7362  df-ov 7409  df-oprab 7410  df-mpo 7411  df-om 7853  df-2nd 7973  df-frecs 8263  df-wrecs 8294  df-recs 8368  df-rdg 8407  df-1o 8463  df-oadd 8467  df-ttrcl 9700
This theorem is referenced by:  frr1  9751  frr2  9752
  Copyright terms: Public domain W3C validator