ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  frind Unicode version

Theorem frind 4089
Description: Induction over a well-founded set. (Contributed by Jim Kingdon, 28-Sep-2021.)
Hypotheses
Ref Expression
frind.sb  |-  ( x  =  y  ->  ( ph 
<->  ps ) )
frind.ind  |-  ( ( ch  /\  x  e.  A )  ->  ( A. y  e.  A  ( y R x  ->  ps )  ->  ph ) )
frind.fr  |-  ( ch 
->  R  Fr  A
)
frind.a  |-  ( ch 
->  A  e.  V
)
Assertion
Ref Expression
frind  |-  ( ( ch  /\  x  e.  A )  ->  ph )
Distinct variable groups:    x, A, y   
x, R, y    ch, x    ph, y    ps, x
Allowed substitution hints:    ph( x)    ps( y)    ch( y)    V( x, y)

Proof of Theorem frind
Dummy variables  s  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 frind.ind . . . . . . . 8  |-  ( ( ch  /\  x  e.  A )  ->  ( A. y  e.  A  ( y R x  ->  ps )  ->  ph ) )
21ralrimiva 2392 . . . . . . 7  |-  ( ch 
->  A. x  e.  A  ( A. y  e.  A  ( y R x  ->  ps )  ->  ph ) )
3 nfv 1421 . . . . . . . 8  |-  F/ z ( A. y  e.  A  ( y R x  ->  ps )  ->  ph )
4 nfv 1421 . . . . . . . . 9  |-  F/ x A. y  e.  A  ( y R z  ->  ps )
5 nfs1v 1815 . . . . . . . . 9  |-  F/ x [ z  /  x ] ph
64, 5nfim 1464 . . . . . . . 8  |-  F/ x
( A. y  e.  A  ( y R z  ->  ps )  ->  [ z  /  x ] ph )
7 breq2 3768 . . . . . . . . . . 11  |-  ( x  =  z  ->  (
y R x  <->  y R
z ) )
87imbi1d 220 . . . . . . . . . 10  |-  ( x  =  z  ->  (
( y R x  ->  ps )  <->  ( y R z  ->  ps ) ) )
98ralbidv 2326 . . . . . . . . 9  |-  ( x  =  z  ->  ( A. y  e.  A  ( y R x  ->  ps )  <->  A. y  e.  A  ( y R z  ->  ps ) ) )
10 sbequ12 1654 . . . . . . . . 9  |-  ( x  =  z  ->  ( ph 
<->  [ z  /  x ] ph ) )
119, 10imbi12d 223 . . . . . . . 8  |-  ( x  =  z  ->  (
( A. y  e.  A  ( y R x  ->  ps )  ->  ph )  <->  ( A. y  e.  A  (
y R z  ->  ps )  ->  [ z  /  x ] ph ) ) )
123, 6, 11cbvral 2529 . . . . . . 7  |-  ( A. x  e.  A  ( A. y  e.  A  ( y R x  ->  ps )  ->  ph )  <->  A. z  e.  A  ( A. y  e.  A  ( y R z  ->  ps )  ->  [ z  /  x ] ph ) )
132, 12sylib 127 . . . . . 6  |-  ( ch 
->  A. z  e.  A  ( A. y  e.  A  ( y R z  ->  ps )  ->  [ z  /  x ] ph ) )
14 frind.sb . . . . . . . . . . . 12  |-  ( x  =  y  ->  ( ph 
<->  ps ) )
1514elrab3 2699 . . . . . . . . . . 11  |-  ( y  e.  A  ->  (
y  e.  { x  e.  A  |  ph }  <->  ps ) )
1615imbi2d 219 . . . . . . . . . 10  |-  ( y  e.  A  ->  (
( y R z  ->  y  e.  {
x  e.  A  |  ph } )  <->  ( y R z  ->  ps ) ) )
1716ralbiia 2338 . . . . . . . . 9  |-  ( A. y  e.  A  (
y R z  -> 
y  e.  { x  e.  A  |  ph }
)  <->  A. y  e.  A  ( y R z  ->  ps ) )
1817a1i 9 . . . . . . . 8  |-  ( z  e.  A  ->  ( A. y  e.  A  ( y R z  ->  y  e.  {
x  e.  A  |  ph } )  <->  A. y  e.  A  ( y R z  ->  ps ) ) )
19 nfcv 2178 . . . . . . . . . 10  |-  F/_ x
z
20 nfcv 2178 . . . . . . . . . 10  |-  F/_ x A
2119, 20, 5, 10elrabf 2696 . . . . . . . . 9  |-  ( z  e.  { x  e.  A  |  ph }  <->  ( z  e.  A  /\  [ z  /  x ] ph ) )
2221baib 828 . . . . . . . 8  |-  ( z  e.  A  ->  (
z  e.  { x  e.  A  |  ph }  <->  [ z  /  x ] ph ) )
2318, 22imbi12d 223 . . . . . . 7  |-  ( z  e.  A  ->  (
( A. y  e.  A  ( y R z  ->  y  e.  { x  e.  A  |  ph } )  ->  z  e.  { x  e.  A  |  ph } )  <->  ( A. y  e.  A  (
y R z  ->  ps )  ->  [ z  /  x ] ph ) ) )
2423ralbiia 2338 . . . . . 6  |-  ( A. z  e.  A  ( A. y  e.  A  ( y R z  ->  y  e.  {
x  e.  A  |  ph } )  ->  z  e.  { x  e.  A  |  ph } )  <->  A. z  e.  A  ( A. y  e.  A  (
y R z  ->  ps )  ->  [ z  /  x ] ph ) )
2513, 24sylibr 137 . . . . 5  |-  ( ch 
->  A. z  e.  A  ( A. y  e.  A  ( y R z  ->  y  e.  {
x  e.  A  |  ph } )  ->  z  e.  { x  e.  A  |  ph } ) )
26 frind.fr . . . . . . . 8  |-  ( ch 
->  R  Fr  A
)
27 df-frind 4069 . . . . . . . 8  |-  ( R  Fr  A  <->  A. sFrFor  R A s )
2826, 27sylib 127 . . . . . . 7  |-  ( ch 
->  A. sFrFor  R A s )
29 frind.a . . . . . . . 8  |-  ( ch 
->  A  e.  V
)
30 rabexg 3900 . . . . . . . 8  |-  ( A  e.  V  ->  { x  e.  A  |  ph }  e.  _V )
31 frforeq3 4084 . . . . . . . . 9  |-  ( s  =  { x  e.  A  |  ph }  ->  (FrFor  R A s  <-> FrFor  R A { x  e.  A  |  ph }
) )
3231spcgv 2640 . . . . . . . 8  |-  ( { x  e.  A  |  ph }  e.  _V  ->  ( A. sFrFor  R A s  -> FrFor  R A {
x  e.  A  |  ph } ) )
3329, 30, 323syl 17 . . . . . . 7  |-  ( ch 
->  ( A. sFrFor  R A s  -> FrFor  R A { x  e.  A  |  ph } ) )
3428, 33mpd 13 . . . . . 6  |-  ( ch 
-> FrFor  R A { x  e.  A  |  ph }
)
35 df-frfor 4068 . . . . . 6  |-  (FrFor  R A { x  e.  A  |  ph }  <->  ( A. z  e.  A  ( A. y  e.  A  ( y R z  ->  y  e.  {
x  e.  A  |  ph } )  ->  z  e.  { x  e.  A  |  ph } )  ->  A  C_  { x  e.  A  |  ph }
) )
3634, 35sylib 127 . . . . 5  |-  ( ch 
->  ( A. z  e.  A  ( A. y  e.  A  ( y R z  ->  y  e.  { x  e.  A  |  ph } )  -> 
z  e.  { x  e.  A  |  ph }
)  ->  A  C_  { x  e.  A  |  ph }
) )
3725, 36mpd 13 . . . 4  |-  ( ch 
->  A  C_  { x  e.  A  |  ph }
)
38 ssrab 3018 . . . 4  |-  ( A 
C_  { x  e.  A  |  ph }  <->  ( A  C_  A  /\  A. x  e.  A  ph ) )
3937, 38sylib 127 . . 3  |-  ( ch 
->  ( A  C_  A  /\  A. x  e.  A  ph ) )
4039simprd 107 . 2  |-  ( ch 
->  A. x  e.  A  ph )
4140r19.21bi 2407 1  |-  ( ( ch  /\  x  e.  A )  ->  ph )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 97    <-> wb 98   A.wal 1241    e. wcel 1393   [wsb 1645   A.wral 2306   {crab 2310   _Vcvv 2557    C_ wss 2917   class class class wbr 3764  FrFor wfrfor 4064    Fr wfr 4065
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 99  ax-ia2 100  ax-ia3 101  ax-io 630  ax-5 1336  ax-7 1337  ax-gen 1338  ax-ie1 1382  ax-ie2 1383  ax-8 1395  ax-10 1396  ax-11 1397  ax-i12 1398  ax-bndl 1399  ax-4 1400  ax-17 1419  ax-i9 1423  ax-ial 1427  ax-i5r 1428  ax-ext 2022  ax-sep 3875
This theorem depends on definitions:  df-bi 110  df-3an 887  df-tru 1246  df-nf 1350  df-sb 1646  df-clab 2027  df-cleq 2033  df-clel 2036  df-nfc 2167  df-ral 2311  df-rab 2315  df-v 2559  df-un 2922  df-in 2924  df-ss 2931  df-sn 3381  df-pr 3382  df-op 3384  df-br 3765  df-frfor 4068  df-frind 4069
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator