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

Theorem subfacval3 33147
Description: Another closed form expression for the subfactorial. The expression ⌊‘(𝑥 + 1 / 2) is a way of saying "rounded to the nearest integer". (Contributed by Mario Carneiro, 23-Jan-2015.)
Hypotheses
Ref Expression
derang.d 𝐷 = (𝑥 ∈ Fin ↦ (♯‘{𝑓 ∣ (𝑓:𝑥1-1-onto𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) ≠ 𝑦)}))
subfac.n 𝑆 = (𝑛 ∈ ℕ0 ↦ (𝐷‘(1...𝑛)))
Assertion
Ref Expression
subfacval3 (𝑁 ∈ ℕ → (𝑆𝑁) = (⌊‘(((!‘𝑁) / e) + (1 / 2))))
Distinct variable groups:   𝑓,𝑛,𝑥,𝑦,𝑁   𝐷,𝑛   𝑆,𝑛,𝑥,𝑦
Allowed substitution hints:   𝐷(𝑥,𝑦,𝑓)   𝑆(𝑓)

Proof of Theorem subfacval3
StepHypRef Expression
1 nnnn0 12240 . . . . . . 7 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ0)
2 derang.d . . . . . . . . 9 𝐷 = (𝑥 ∈ Fin ↦ (♯‘{𝑓 ∣ (𝑓:𝑥1-1-onto𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) ≠ 𝑦)}))
3 subfac.n . . . . . . . . 9 𝑆 = (𝑛 ∈ ℕ0 ↦ (𝐷‘(1...𝑛)))
42, 3subfacf 33133 . . . . . . . 8 𝑆:ℕ0⟶ℕ0
54ffvelrni 6957 . . . . . . 7 (𝑁 ∈ ℕ0 → (𝑆𝑁) ∈ ℕ0)
61, 5syl 17 . . . . . 6 (𝑁 ∈ ℕ → (𝑆𝑁) ∈ ℕ0)
76nn0zd 12423 . . . . 5 (𝑁 ∈ ℕ → (𝑆𝑁) ∈ ℤ)
87zred 12425 . . . 4 (𝑁 ∈ ℕ → (𝑆𝑁) ∈ ℝ)
9 faccl 13995 . . . . . . . 8 (𝑁 ∈ ℕ0 → (!‘𝑁) ∈ ℕ)
101, 9syl 17 . . . . . . 7 (𝑁 ∈ ℕ → (!‘𝑁) ∈ ℕ)
1110nnred 11988 . . . . . 6 (𝑁 ∈ ℕ → (!‘𝑁) ∈ ℝ)
12 epr 15915 . . . . . 6 e ∈ ℝ+
13 rerpdivcl 12759 . . . . . 6 (((!‘𝑁) ∈ ℝ ∧ e ∈ ℝ+) → ((!‘𝑁) / e) ∈ ℝ)
1411, 12, 13sylancl 586 . . . . 5 (𝑁 ∈ ℕ → ((!‘𝑁) / e) ∈ ℝ)
15 halfre 12187 . . . . 5 (1 / 2) ∈ ℝ
16 readdcl 10955 . . . . 5 ((((!‘𝑁) / e) ∈ ℝ ∧ (1 / 2) ∈ ℝ) → (((!‘𝑁) / e) + (1 / 2)) ∈ ℝ)
1714, 15, 16sylancl 586 . . . 4 (𝑁 ∈ ℕ → (((!‘𝑁) / e) + (1 / 2)) ∈ ℝ)
18 elnn1uz2 12664 . . . . . . . 8 (𝑁 ∈ ℕ ↔ (𝑁 = 1 ∨ 𝑁 ∈ (ℤ‘2)))
19 fveq2 6771 . . . . . . . . . . . . . . . 16 (𝑁 = 1 → (!‘𝑁) = (!‘1))
20 fac1 13989 . . . . . . . . . . . . . . . 16 (!‘1) = 1
2119, 20eqtrdi 2796 . . . . . . . . . . . . . . 15 (𝑁 = 1 → (!‘𝑁) = 1)
2221oveq1d 7286 . . . . . . . . . . . . . 14 (𝑁 = 1 → ((!‘𝑁) / e) = (1 / e))
23 fveq2 6771 . . . . . . . . . . . . . . 15 (𝑁 = 1 → (𝑆𝑁) = (𝑆‘1))
242, 3subfac1 33136 . . . . . . . . . . . . . . 15 (𝑆‘1) = 0
2523, 24eqtrdi 2796 . . . . . . . . . . . . . 14 (𝑁 = 1 → (𝑆𝑁) = 0)
2622, 25oveq12d 7289 . . . . . . . . . . . . 13 (𝑁 = 1 → (((!‘𝑁) / e) − (𝑆𝑁)) = ((1 / e) − 0))
27 rpreccl 12755 . . . . . . . . . . . . . . . . 17 (e ∈ ℝ+ → (1 / e) ∈ ℝ+)
2812, 27ax-mp 5 . . . . . . . . . . . . . . . 16 (1 / e) ∈ ℝ+
29 rpre 12737 . . . . . . . . . . . . . . . 16 ((1 / e) ∈ ℝ+ → (1 / e) ∈ ℝ)
3028, 29ax-mp 5 . . . . . . . . . . . . . . 15 (1 / e) ∈ ℝ
3130recni 10990 . . . . . . . . . . . . . 14 (1 / e) ∈ ℂ
3231subid1i 11293 . . . . . . . . . . . . 13 ((1 / e) − 0) = (1 / e)
3326, 32eqtrdi 2796 . . . . . . . . . . . 12 (𝑁 = 1 → (((!‘𝑁) / e) − (𝑆𝑁)) = (1 / e))
3433fveq2d 6775 . . . . . . . . . . 11 (𝑁 = 1 → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) = (abs‘(1 / e)))
35 rpge0 12742 . . . . . . . . . . . . 13 ((1 / e) ∈ ℝ+ → 0 ≤ (1 / e))
3628, 35ax-mp 5 . . . . . . . . . . . 12 0 ≤ (1 / e)
37 absid 15006 . . . . . . . . . . . 12 (((1 / e) ∈ ℝ ∧ 0 ≤ (1 / e)) → (abs‘(1 / e)) = (1 / e))
3830, 36, 37mp2an 689 . . . . . . . . . . 11 (abs‘(1 / e)) = (1 / e)
3934, 38eqtrdi 2796 . . . . . . . . . 10 (𝑁 = 1 → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) = (1 / e))
40 egt2lt3 15913 . . . . . . . . . . . 12 (2 < e ∧ e < 3)
4140simpli 484 . . . . . . . . . . 11 2 < e
42 2re 12047 . . . . . . . . . . . 12 2 ∈ ℝ
43 ere 15796 . . . . . . . . . . . 12 e ∈ ℝ
44 2pos 12076 . . . . . . . . . . . 12 0 < 2
45 epos 15914 . . . . . . . . . . . 12 0 < e
4642, 43, 44, 45ltrecii 11891 . . . . . . . . . . 11 (2 < e ↔ (1 / e) < (1 / 2))
4741, 46mpbi 229 . . . . . . . . . 10 (1 / e) < (1 / 2)
4839, 47eqbrtrdi 5118 . . . . . . . . 9 (𝑁 = 1 → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 2))
49 eluz2nn 12623 . . . . . . . . . . . 12 (𝑁 ∈ (ℤ‘2) → 𝑁 ∈ ℕ)
5014, 8resubcld 11403 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → (((!‘𝑁) / e) − (𝑆𝑁)) ∈ ℝ)
5150recnd 11004 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (((!‘𝑁) / e) − (𝑆𝑁)) ∈ ℂ)
5249, 51syl 17 . . . . . . . . . . 11 (𝑁 ∈ (ℤ‘2) → (((!‘𝑁) / e) − (𝑆𝑁)) ∈ ℂ)
5352abscld 15146 . . . . . . . . . 10 (𝑁 ∈ (ℤ‘2) → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) ∈ ℝ)
5449nnrecred 12024 . . . . . . . . . 10 (𝑁 ∈ (ℤ‘2) → (1 / 𝑁) ∈ ℝ)
5515a1i 11 . . . . . . . . . 10 (𝑁 ∈ (ℤ‘2) → (1 / 2) ∈ ℝ)
562, 3subfaclim 33146 . . . . . . . . . . 11 (𝑁 ∈ ℕ → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 𝑁))
5749, 56syl 17 . . . . . . . . . 10 (𝑁 ∈ (ℤ‘2) → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 𝑁))
58 eluzle 12594 . . . . . . . . . . 11 (𝑁 ∈ (ℤ‘2) → 2 ≤ 𝑁)
59 nnre 11980 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
60 nngt0 12004 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 0 < 𝑁)
61 lerec 11858 . . . . . . . . . . . . . 14 (((2 ∈ ℝ ∧ 0 < 2) ∧ (𝑁 ∈ ℝ ∧ 0 < 𝑁)) → (2 ≤ 𝑁 ↔ (1 / 𝑁) ≤ (1 / 2)))
6242, 44, 61mpanl12 699 . . . . . . . . . . . . 13 ((𝑁 ∈ ℝ ∧ 0 < 𝑁) → (2 ≤ 𝑁 ↔ (1 / 𝑁) ≤ (1 / 2)))
6359, 60, 62syl2anc 584 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (2 ≤ 𝑁 ↔ (1 / 𝑁) ≤ (1 / 2)))
6449, 63syl 17 . . . . . . . . . . 11 (𝑁 ∈ (ℤ‘2) → (2 ≤ 𝑁 ↔ (1 / 𝑁) ≤ (1 / 2)))
6558, 64mpbid 231 . . . . . . . . . 10 (𝑁 ∈ (ℤ‘2) → (1 / 𝑁) ≤ (1 / 2))
6653, 54, 55, 57, 65ltletrd 11135 . . . . . . . . 9 (𝑁 ∈ (ℤ‘2) → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 2))
6748, 66jaoi 854 . . . . . . . 8 ((𝑁 = 1 ∨ 𝑁 ∈ (ℤ‘2)) → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 2))
6818, 67sylbi 216 . . . . . . 7 (𝑁 ∈ ℕ → (abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 2))
6915a1i 11 . . . . . . . 8 (𝑁 ∈ ℕ → (1 / 2) ∈ ℝ)
7014, 8, 69absdifltd 15143 . . . . . . 7 (𝑁 ∈ ℕ → ((abs‘(((!‘𝑁) / e) − (𝑆𝑁))) < (1 / 2) ↔ (((𝑆𝑁) − (1 / 2)) < ((!‘𝑁) / e) ∧ ((!‘𝑁) / e) < ((𝑆𝑁) + (1 / 2)))))
7168, 70mpbid 231 . . . . . 6 (𝑁 ∈ ℕ → (((𝑆𝑁) − (1 / 2)) < ((!‘𝑁) / e) ∧ ((!‘𝑁) / e) < ((𝑆𝑁) + (1 / 2))))
7271simpld 495 . . . . 5 (𝑁 ∈ ℕ → ((𝑆𝑁) − (1 / 2)) < ((!‘𝑁) / e))
738, 69, 14ltsubaddd 11571 . . . . 5 (𝑁 ∈ ℕ → (((𝑆𝑁) − (1 / 2)) < ((!‘𝑁) / e) ↔ (𝑆𝑁) < (((!‘𝑁) / e) + (1 / 2))))
7472, 73mpbid 231 . . . 4 (𝑁 ∈ ℕ → (𝑆𝑁) < (((!‘𝑁) / e) + (1 / 2)))
758, 17, 74ltled 11123 . . 3 (𝑁 ∈ ℕ → (𝑆𝑁) ≤ (((!‘𝑁) / e) + (1 / 2)))
76 readdcl 10955 . . . . . 6 (((𝑆𝑁) ∈ ℝ ∧ (1 / 2) ∈ ℝ) → ((𝑆𝑁) + (1 / 2)) ∈ ℝ)
778, 15, 76sylancl 586 . . . . 5 (𝑁 ∈ ℕ → ((𝑆𝑁) + (1 / 2)) ∈ ℝ)
7871simprd 496 . . . . 5 (𝑁 ∈ ℕ → ((!‘𝑁) / e) < ((𝑆𝑁) + (1 / 2)))
7914, 77, 69, 78ltadd1dd 11586 . . . 4 (𝑁 ∈ ℕ → (((!‘𝑁) / e) + (1 / 2)) < (((𝑆𝑁) + (1 / 2)) + (1 / 2)))
808recnd 11004 . . . . . 6 (𝑁 ∈ ℕ → (𝑆𝑁) ∈ ℂ)
8169recnd 11004 . . . . . 6 (𝑁 ∈ ℕ → (1 / 2) ∈ ℂ)
8280, 81, 81addassd 10998 . . . . 5 (𝑁 ∈ ℕ → (((𝑆𝑁) + (1 / 2)) + (1 / 2)) = ((𝑆𝑁) + ((1 / 2) + (1 / 2))))
83 ax-1cn 10930 . . . . . . 7 1 ∈ ℂ
84 2halves 12201 . . . . . . 7 (1 ∈ ℂ → ((1 / 2) + (1 / 2)) = 1)
8583, 84ax-mp 5 . . . . . 6 ((1 / 2) + (1 / 2)) = 1
8685oveq2i 7282 . . . . 5 ((𝑆𝑁) + ((1 / 2) + (1 / 2))) = ((𝑆𝑁) + 1)
8782, 86eqtrdi 2796 . . . 4 (𝑁 ∈ ℕ → (((𝑆𝑁) + (1 / 2)) + (1 / 2)) = ((𝑆𝑁) + 1))
8879, 87breqtrd 5105 . . 3 (𝑁 ∈ ℕ → (((!‘𝑁) / e) + (1 / 2)) < ((𝑆𝑁) + 1))
89 flbi 13534 . . . 4 (((((!‘𝑁) / e) + (1 / 2)) ∈ ℝ ∧ (𝑆𝑁) ∈ ℤ) → ((⌊‘(((!‘𝑁) / e) + (1 / 2))) = (𝑆𝑁) ↔ ((𝑆𝑁) ≤ (((!‘𝑁) / e) + (1 / 2)) ∧ (((!‘𝑁) / e) + (1 / 2)) < ((𝑆𝑁) + 1))))
9017, 7, 89syl2anc 584 . . 3 (𝑁 ∈ ℕ → ((⌊‘(((!‘𝑁) / e) + (1 / 2))) = (𝑆𝑁) ↔ ((𝑆𝑁) ≤ (((!‘𝑁) / e) + (1 / 2)) ∧ (((!‘𝑁) / e) + (1 / 2)) < ((𝑆𝑁) + 1))))
9175, 88, 90mpbir2and 710 . 2 (𝑁 ∈ ℕ → (⌊‘(((!‘𝑁) / e) + (1 / 2))) = (𝑆𝑁))
9291eqcomd 2746 1 (𝑁 ∈ ℕ → (𝑆𝑁) = (⌊‘(((!‘𝑁) / e) + (1 / 2))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  wo 844   = wceq 1542  wcel 2110  {cab 2717  wne 2945  wral 3066   class class class wbr 5079  cmpt 5162  1-1-ontowf1o 6431  cfv 6432  (class class class)co 7271  Fincfn 8716  cc 10870  cr 10871  0cc0 10872  1c1 10873   + caddc 10875   < clt 11010  cle 11011  cmin 11205   / cdiv 11632  cn 11973  2c2 12028  3c3 12029  0cn0 12233  cz 12319  cuz 12581  +crp 12729  ...cfz 13238  cfl 13508  !cfa 13985  chash 14042  abscabs 14943  eceu 15770
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1975  ax-7 2015  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2158  ax-12 2175  ax-ext 2711  ax-rep 5214  ax-sep 5227  ax-nul 5234  ax-pow 5292  ax-pr 5356  ax-un 7582  ax-inf2 9377  ax-cnex 10928  ax-resscn 10929  ax-1cn 10930  ax-icn 10931  ax-addcl 10932  ax-addrcl 10933  ax-mulcl 10934  ax-mulrcl 10935  ax-mulcom 10936  ax-addass 10937  ax-mulass 10938  ax-distr 10939  ax-i2m1 10940  ax-1ne0 10941  ax-1rid 10942  ax-rnegex 10943  ax-rrecex 10944  ax-cnre 10945  ax-pre-lttri 10946  ax-pre-lttrn 10947  ax-pre-ltadd 10948  ax-pre-mulgt0 10949  ax-pre-sup 10950
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1545  df-fal 1555  df-ex 1787  df-nf 1791  df-sb 2072  df-mo 2542  df-eu 2571  df-clab 2718  df-cleq 2732  df-clel 2818  df-nfc 2891  df-ne 2946  df-nel 3052  df-ral 3071  df-rex 3072  df-reu 3073  df-rmo 3074  df-rab 3075  df-v 3433  df-sbc 3721  df-csb 3838  df-dif 3895  df-un 3897  df-in 3899  df-ss 3909  df-pss 3911  df-nul 4263  df-if 4466  df-pw 4541  df-sn 4568  df-pr 4570  df-op 4574  df-uni 4846  df-int 4886  df-iun 4932  df-br 5080  df-opab 5142  df-mpt 5163  df-tr 5197  df-id 5490  df-eprel 5496  df-po 5504  df-so 5505  df-fr 5545  df-se 5546  df-we 5547  df-xp 5596  df-rel 5597  df-cnv 5598  df-co 5599  df-dm 5600  df-rn 5601  df-res 5602  df-ima 5603  df-pred 6201  df-ord 6268  df-on 6269  df-lim 6270  df-suc 6271  df-iota 6390  df-fun 6434  df-fn 6435  df-f 6436  df-f1 6437  df-fo 6438  df-f1o 6439  df-fv 6440  df-isom 6441  df-riota 7228  df-ov 7274  df-oprab 7275  df-mpo 7276  df-om 7707  df-1st 7824  df-2nd 7825  df-frecs 8088  df-wrecs 8119  df-recs 8193  df-rdg 8232  df-1o 8288  df-oadd 8292  df-er 8481  df-map 8600  df-pm 8601  df-en 8717  df-dom 8718  df-sdom 8719  df-fin 8720  df-sup 9179  df-inf 9180  df-oi 9247  df-dju 9660  df-card 9698  df-pnf 11012  df-mnf 11013  df-xr 11014  df-ltxr 11015  df-le 11016  df-sub 11207  df-neg 11208  df-div 11633  df-nn 11974  df-2 12036  df-3 12037  df-4 12038  df-n0 12234  df-xnn0 12306  df-z 12320  df-uz 12582  df-q 12688  df-rp 12730  df-ico 13084  df-fz 13239  df-fzo 13382  df-fl 13510  df-seq 13720  df-exp 13781  df-fac 13986  df-bc 14015  df-hash 14043  df-shft 14776  df-cj 14808  df-re 14809  df-im 14810  df-sqrt 14944  df-abs 14945  df-limsup 15178  df-clim 15195  df-rlim 15196  df-sum 15396  df-ef 15775  df-e 15776
This theorem is referenced by:  derangfmla  33148
  Copyright terms: Public domain W3C validator