Metamath Proof Explorer


Theorem logfac2

Description: Another expression for the logarithm of a factorial, in terms of the von Mangoldt function. Equation 9.2.7 of Shapiro, p. 329. (Contributed by Mario Carneiro, 15-Apr-2016) (Revised by Mario Carneiro, 3-May-2016)

Ref Expression
Assertion logfac2 A0AlogA!=k=1AΛkAk

Proof

Step Hyp Ref Expression
1 flge0nn0 A0AA0
2 logfac A0logA!=n=1Alogn
3 1 2 syl A0AlogA!=n=1Alogn
4 fzfid A0A1AFin
5 fzfid A0Ak1A1AFin
6 ssrab2 x1A|kx1A
7 ssfi 1AFinx1A|kx1Ax1A|kxFin
8 5 6 7 sylancl A0Ak1Ax1A|kxFin
9 flcl AA
10 9 adantr A0AA
11 fznn Ak1AkkA
12 10 11 syl A0Ak1AkkA
13 12 anbi1d A0Ak1An1AknkkAn1Akn
14 nnre kk
15 14 ad2antlr A0Akn1Aknk
16 elfznn n1An
17 16 ad2antrl A0Akn1Aknn
18 17 nnred A0Akn1Aknn
19 reflcl AA
20 19 ad3antrrr A0Akn1AknA
21 simprr A0Akn1Aknkn
22 nnz kk
23 22 ad2antlr A0Akn1Aknk
24 dvdsle knknkn
25 23 17 24 syl2anc A0Akn1Aknknkn
26 21 25 mpd A0Akn1Aknkn
27 elfzle2 n1AnA
28 27 ad2antrl A0Akn1AknnA
29 15 18 20 26 28 letrd A0Akn1AknkA
30 29 expl A0Akn1AknkA
31 30 pm4.71rd A0Akn1AknkAkn1Akn
32 an12 n1Akknkn1Akn
33 an21 kkAn1AknkAkn1Akn
34 31 32 33 3bitr4g A0An1AkknkkAn1Akn
35 13 34 bitr4d A0Ak1An1Aknn1Akkn
36 breq2 x=nkxkn
37 36 elrab nx1A|kxn1Akn
38 37 anbi2i k1Anx1A|kxk1An1Akn
39 breq1 x=kxnkn
40 39 elrab kx|xnkkn
41 40 anbi2i n1Akx|xnn1Akkn
42 35 38 41 3bitr4g A0Ak1Anx1A|kxn1Akx|xn
43 elfznn k1Ak
44 43 adantl A0Ak1Ak
45 vmacl kΛk
46 44 45 syl A0Ak1AΛk
47 46 recnd A0Ak1AΛk
48 47 adantrr A0Ak1Anx1A|kxΛk
49 4 4 8 42 48 fsumcom2 A0Ak=1Anx1A|kxΛk=n=1Akx|xnΛk
50 fsumconst x1A|kxFinΛknx1A|kxΛk=x1A|kxΛk
51 8 47 50 syl2anc A0Ak1Anx1A|kxΛk=x1A|kxΛk
52 fzfid A0Ak1A1AkFin
53 simpll A0Ak1AA
54 eqid m1Akkm=m1Akkm
55 53 44 54 dvdsflf1o A0Ak1Am1Akkm:1Ak1-1 ontox1A|kx
56 52 55 hasheqf1od A0Ak1A1Ak=x1A|kx
57 simpl A0AA
58 nndivre AkAk
59 57 43 58 syl2an A0Ak1AAk
60 nngt0 k0<k
61 14 60 jca kk0<k
62 43 61 syl k1Ak0<k
63 divge0 A0Ak0<k0Ak
64 62 63 sylan2 A0Ak1A0Ak
65 flge0nn0 Ak0AkAk0
66 59 64 65 syl2anc A0Ak1AAk0
67 hashfz1 Ak01Ak=Ak
68 66 67 syl A0Ak1A1Ak=Ak
69 56 68 eqtr3d A0Ak1Ax1A|kx=Ak
70 69 oveq1d A0Ak1Ax1A|kxΛk=AkΛk
71 59 flcld A0Ak1AAk
72 71 zcnd A0Ak1AAk
73 72 47 mulcomd A0Ak1AAkΛk=ΛkAk
74 51 70 73 3eqtrd A0Ak1Anx1A|kxΛk=ΛkAk
75 74 sumeq2dv A0Ak=1Anx1A|kxΛk=k=1AΛkAk
76 16 adantl A0An1An
77 vmasum nkx|xnΛk=logn
78 76 77 syl A0An1Akx|xnΛk=logn
79 78 sumeq2dv A0An=1Akx|xnΛk=n=1Alogn
80 49 75 79 3eqtr3d A0Ak=1AΛkAk=n=1Alogn
81 3 80 eqtr4d A0AlogA!=k=1AΛkAk