Users' Mathboxes Mathbox for Mario Carneiro < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  subfacp1 Structured version   Unicode version

Theorem subfacp1 29470
Description: A two-term recurrence for the subfactorial. This theorem allows us to forget the combinatorial definition of the derangement number in favor of the recursive definition provided by this theorem and subfac0 29461, subfac1 29462. (Contributed by Mario Carneiro, 23-Jan-2015.)
Hypotheses
Ref Expression
derang.d  |-  D  =  ( x  e.  Fin  |->  ( # `  { f  |  ( f : x -1-1-onto-> x  /\  A. y  e.  x  ( f `  y )  =/=  y
) } ) )
subfac.n  |-  S  =  ( n  e.  NN0  |->  ( D `  ( 1 ... n ) ) )
Assertion
Ref Expression
subfacp1  |-  ( N  e.  NN  ->  ( S `  ( N  +  1 ) )  =  ( N  x.  ( ( S `  N )  +  ( S `  ( N  -  1 ) ) ) ) )
Distinct variable groups:    f, n, x, y, N    D, n    S, n, x, y
Allowed substitution hints:    D( x, y, f)    S( f)

Proof of Theorem subfacp1
Dummy variables  g 
z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 derang.d . 2  |-  D  =  ( x  e.  Fin  |->  ( # `  { f  |  ( f : x -1-1-onto-> x  /\  A. y  e.  x  ( f `  y )  =/=  y
) } ) )
2 subfac.n . 2  |-  S  =  ( n  e.  NN0  |->  ( D `  ( 1 ... n ) ) )
3 f1oeq1 5789 . . . 4  |-  ( g  =  f  ->  (
g : ( 1 ... ( N  + 
1 ) ) -1-1-onto-> ( 1 ... ( N  + 
1 ) )  <->  f :
( 1 ... ( N  +  1 ) ) -1-1-onto-> ( 1 ... ( N  +  1 ) ) ) )
4 fveq2 5848 . . . . . . 7  |-  ( z  =  y  ->  (
g `  z )  =  ( g `  y ) )
5 id 22 . . . . . . 7  |-  ( z  =  y  ->  z  =  y )
64, 5neeq12d 2682 . . . . . 6  |-  ( z  =  y  ->  (
( g `  z
)  =/=  z  <->  ( g `  y )  =/=  y
) )
76cbvralv 3033 . . . . 5  |-  ( A. z  e.  ( 1 ... ( N  + 
1 ) ) ( g `  z )  =/=  z  <->  A. y  e.  ( 1 ... ( N  +  1 ) ) ( g `  y )  =/=  y
)
8 fveq1 5847 . . . . . . 7  |-  ( g  =  f  ->  (
g `  y )  =  ( f `  y ) )
98neeq1d 2680 . . . . . 6  |-  ( g  =  f  ->  (
( g `  y
)  =/=  y  <->  ( f `  y )  =/=  y
) )
109ralbidv 2842 . . . . 5  |-  ( g  =  f  ->  ( A. y  e.  (
1 ... ( N  + 
1 ) ) ( g `  y )  =/=  y  <->  A. y  e.  ( 1 ... ( N  +  1 ) ) ( f `  y )  =/=  y
) )
117, 10syl5bb 257 . . . 4  |-  ( g  =  f  ->  ( A. z  e.  (
1 ... ( N  + 
1 ) ) ( g `  z )  =/=  z  <->  A. y  e.  ( 1 ... ( N  +  1 ) ) ( f `  y )  =/=  y
) )
123, 11anbi12d 709 . . 3  |-  ( g  =  f  ->  (
( g : ( 1 ... ( N  +  1 ) ) -1-1-onto-> ( 1 ... ( N  +  1 ) )  /\  A. z  e.  ( 1 ... ( N  +  1 ) ) ( g `  z )  =/=  z
)  <->  ( f : ( 1 ... ( N  +  1 ) ) -1-1-onto-> ( 1 ... ( N  +  1 ) )  /\  A. y  e.  ( 1 ... ( N  +  1 ) ) ( f `  y )  =/=  y
) ) )
1312cbvabv 2545 . 2  |-  { g  |  ( g : ( 1 ... ( N  +  1 ) ) -1-1-onto-> ( 1 ... ( N  +  1 ) )  /\  A. z  e.  ( 1 ... ( N  +  1 ) ) ( g `  z )  =/=  z
) }  =  {
f  |  ( f : ( 1 ... ( N  +  1 ) ) -1-1-onto-> ( 1 ... ( N  +  1 ) )  /\  A. y  e.  ( 1 ... ( N  +  1 ) ) ( f `  y )  =/=  y
) }
141, 2, 13subfacp1lem6 29469 1  |-  ( N  e.  NN  ->  ( S `  ( N  +  1 ) )  =  ( N  x.  ( ( S `  N )  +  ( S `  ( N  -  1 ) ) ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 367    = wceq 1405    e. wcel 1842   {cab 2387    =/= wne 2598   A.wral 2753    |-> cmpt 4452   -1-1-onto->wf1o 5567   ` cfv 5568  (class class class)co 6277   Fincfn 7553   1c1 9522    + caddc 9524    x. cmul 9526    - cmin 9840   NNcn 10575   NN0cn0 10835   ...cfz 11724   #chash 12450
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1639  ax-4 1652  ax-5 1725  ax-6 1771  ax-7 1814  ax-8 1844  ax-9 1846  ax-10 1861  ax-11 1866  ax-12 1878  ax-13 2026  ax-ext 2380  ax-rep 4506  ax-sep 4516  ax-nul 4524  ax-pow 4571  ax-pr 4629  ax-un 6573  ax-cnex 9577  ax-resscn 9578  ax-1cn 9579  ax-icn 9580  ax-addcl 9581  ax-addrcl 9582  ax-mulcl 9583  ax-mulrcl 9584  ax-mulcom 9585  ax-addass 9586  ax-mulass 9587  ax-distr 9588  ax-i2m1 9589  ax-1ne0 9590  ax-1rid 9591  ax-rnegex 9592  ax-rrecex 9593  ax-cnre 9594  ax-pre-lttri 9595  ax-pre-lttrn 9596  ax-pre-ltadd 9597  ax-pre-mulgt0 9598
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3or 975  df-3an 976  df-tru 1408  df-ex 1634  df-nf 1638  df-sb 1764  df-eu 2242  df-mo 2243  df-clab 2388  df-cleq 2394  df-clel 2397  df-nfc 2552  df-ne 2600  df-nel 2601  df-ral 2758  df-rex 2759  df-reu 2760  df-rmo 2761  df-rab 2762  df-v 3060  df-sbc 3277  df-csb 3373  df-dif 3416  df-un 3418  df-in 3420  df-ss 3427  df-pss 3429  df-nul 3738  df-if 3885  df-pw 3956  df-sn 3972  df-pr 3974  df-tp 3976  df-op 3978  df-uni 4191  df-int 4227  df-iun 4272  df-br 4395  df-opab 4453  df-mpt 4454  df-tr 4489  df-eprel 4733  df-id 4737  df-po 4743  df-so 4744  df-fr 4781  df-we 4783  df-xp 4828  df-rel 4829  df-cnv 4830  df-co 4831  df-dm 4832  df-rn 4833  df-res 4834  df-ima 4835  df-pred 5366  df-ord 5412  df-on 5413  df-lim 5414  df-suc 5415  df-iota 5532  df-fun 5570  df-fn 5571  df-f 5572  df-f1 5573  df-fo 5574  df-f1o 5575  df-fv 5576  df-riota 6239  df-ov 6280  df-oprab 6281  df-mpt2 6282  df-om 6683  df-1st 6783  df-2nd 6784  df-wrecs 7012  df-recs 7074  df-rdg 7112  df-1o 7166  df-2o 7167  df-oadd 7170  df-er 7347  df-map 7458  df-pm 7459  df-en 7554  df-dom 7555  df-sdom 7556  df-fin 7557  df-card 8351  df-cda 8579  df-pnf 9659  df-mnf 9660  df-xr 9661  df-ltxr 9662  df-le 9663  df-sub 9842  df-neg 9843  df-nn 10576  df-2 10634  df-n0 10836  df-z 10905  df-uz 11127  df-fz 11725  df-hash 12451
This theorem is referenced by:  subfacval2  29471
  Copyright terms: Public domain W3C validator