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

Theorem subfacp1 27241
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 27232, subfac1 27233. (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 5743 . . . 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 5802 . . . . . . 7  |-  ( z  =  y  ->  (
g `  z )  =  ( g `  y ) )
5 id 22 . . . . . . 7  |-  ( z  =  y  ->  z  =  y )
64, 5neeq12d 2731 . . . . . 6  |-  ( z  =  y  ->  (
( g `  z
)  =/=  z  <->  ( g `  y )  =/=  y
) )
76cbvralv 3053 . . . . 5  |-  ( A. z  e.  ( 1 ... ( N  + 
1 ) ) ( g `  z )  =/=  z  <->  A. y  e.  ( 1 ... ( N  +  1 ) ) ( g `  y )  =/=  y
)
8 fveq1 5801 . . . . . . 7  |-  ( g  =  f  ->  (
g `  y )  =  ( f `  y ) )
98neeq1d 2729 . . . . . 6  |-  ( g  =  f  ->  (
( g `  y
)  =/=  y  <->  ( f `  y )  =/=  y
) )
109ralbidv 2846 . . . . 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 710 . . 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 2597 . 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 27240 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 369    = wceq 1370    e. wcel 1758   {cab 2439    =/= wne 2648   A.wral 2799    |-> cmpt 4461   -1-1-onto->wf1o 5528   ` cfv 5529  (class class class)co 6203   Fincfn 7423   1c1 9398    + caddc 9400    x. cmul 9402    - cmin 9710   NNcn 10437   NN0cn0 10694   ...cfz 11558   #chash 12224
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1592  ax-4 1603  ax-5 1671  ax-6 1710  ax-7 1730  ax-8 1760  ax-9 1762  ax-10 1777  ax-11 1782  ax-12 1794  ax-13 1955  ax-ext 2432  ax-rep 4514  ax-sep 4524  ax-nul 4532  ax-pow 4581  ax-pr 4642  ax-un 6485  ax-cnex 9453  ax-resscn 9454  ax-1cn 9455  ax-icn 9456  ax-addcl 9457  ax-addrcl 9458  ax-mulcl 9459  ax-mulrcl 9460  ax-mulcom 9461  ax-addass 9462  ax-mulass 9463  ax-distr 9464  ax-i2m1 9465  ax-1ne0 9466  ax-1rid 9467  ax-rnegex 9468  ax-rrecex 9469  ax-cnre 9470  ax-pre-lttri 9471  ax-pre-lttrn 9472  ax-pre-ltadd 9473  ax-pre-mulgt0 9474
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1373  df-ex 1588  df-nf 1591  df-sb 1703  df-eu 2266  df-mo 2267  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2650  df-nel 2651  df-ral 2804  df-rex 2805  df-reu 2806  df-rmo 2807  df-rab 2808  df-v 3080  df-sbc 3295  df-csb 3399  df-dif 3442  df-un 3444  df-in 3446  df-ss 3453  df-pss 3455  df-nul 3749  df-if 3903  df-pw 3973  df-sn 3989  df-pr 3991  df-tp 3993  df-op 3995  df-uni 4203  df-int 4240  df-iun 4284  df-br 4404  df-opab 4462  df-mpt 4463  df-tr 4497  df-eprel 4743  df-id 4747  df-po 4752  df-so 4753  df-fr 4790  df-we 4792  df-ord 4833  df-on 4834  df-lim 4835  df-suc 4836  df-xp 4957  df-rel 4958  df-cnv 4959  df-co 4960  df-dm 4961  df-rn 4962  df-res 4963  df-ima 4964  df-iota 5492  df-fun 5531  df-fn 5532  df-f 5533  df-f1 5534  df-fo 5535  df-f1o 5536  df-fv 5537  df-riota 6164  df-ov 6206  df-oprab 6207  df-mpt2 6208  df-om 6590  df-1st 6690  df-2nd 6691  df-recs 6945  df-rdg 6979  df-1o 7033  df-2o 7034  df-oadd 7037  df-er 7214  df-map 7329  df-pm 7330  df-en 7424  df-dom 7425  df-sdom 7426  df-fin 7427  df-card 8224  df-cda 8452  df-pnf 9535  df-mnf 9536  df-xr 9537  df-ltxr 9538  df-le 9539  df-sub 9712  df-neg 9713  df-nn 10438  df-2 10495  df-n0 10695  df-z 10762  df-uz 10977  df-fz 11559  df-hash 12225
This theorem is referenced by:  subfacval2  27242
  Copyright terms: Public domain W3C validator