# Multiple angle identity for cotangent

The previous post discusses generalized replicative functions, functions that satisfy Donald Knuth says in Exercise 40 of Section 1.2.4 of TAOCP that the functions cot πx and csc² πx fall into this class of functions.

If this is true of cot πx then it follows by differentiation that it is true of csc² πx as well, so we will focus on the former.

I believe that for f(x) = cot(πx) we have an = n and bn = 0, but I don’t have a proof. If this is correct then Here’s a Python script that draws values of n and x at random and verifies that the left and right sides above are equal to at least 10 decimal places. It’s not a proof, but it’s good evidence.

    import numpy as np

def cot(x): return 1/np.tan(x)

def f1(n, x): return n*cot(n*np.pi*x)

def f2(n, x): return sum(cot(np.pi*(x + k/n)) for k in range(n))

np.random.seed(20211011)
for _ in range(1000):
n = np.random.randint(1, 50)
x = np.random.random()
a, b = f1(n,x), f2(n, x)
assert( abs(a - b) <= abs(a)*1e-10 )


Note that NumPy doesn’t have a cotangent function. See this post for quirks of how trig functions are supported in various environments.

An actual proof is left as an exercise for the reader. Knuth left it as an exercise too, but he didn’t say what the a‘s are, so I’m being nicer than he was. :)

If you come up with a proof, please share it in the comments.

## Update and substitute πx for x. Take the logarithm and then the derivative of both sides, divide by π, and you get the identity we’re trying to prove.

## 4 thoughts on “Multiple angle identity for cotangent”

1. claim: cot(x) = sum_(k:integer) 1/(x-pi k)
cot happens to be the logarithmic derivative of sin, which has a well-known product expansion.

2. I think the product expansion which Jesse McKeown mentions is sin(nx) = 2ⁿ⁻¹∏ sin(x+kπ/n) .
An alternative derivation seems to be contained in the paper “A Simple Proof of 1+1/2²+1/3²+…=π²/6 and Related Identities” by Josef Hofbauer the csc result appears in section 3 and the cot result more or less implicitly in section 4, the reference appears as citation 6 in 

https://en.wikipedia.org/wiki/List_of_trigonometric_identities#Finite_products_of_trigonometric_functions
https://en.wikipedia.org/wiki/List_of_mathematical_series

3. Diethard Michaelis

Typos only.
Title: Identify -> Identity
Last sentence before script: bit -> but
Script is somehow incomplete, no assignment to x, dangling ).

4. Markus

Without using infinite products/sums – the Cotangent is more or less the discrete Fourier transformation of the fractional part function {.} on IQ, i.e. essentially B_1 (the first periodic Bernoulli polynomial):

1/2*i*cot(Pi*a/q)=sum(k=1..(q-1), B_1(k/q)*exp(-2*Pi*i*a*k/q)

Or the inverse transformation:
{n/p}-1/2 = B_1(n/p) = i/(2*p)*sum(k=1..(p-1), cot(Pi*k/p)*exp(2*Pi*i*k*n/p))