def compute_a(n):
 a = [(mp.sqrt(2) / 2)]
 for k in range(1, n):
  ak = (a[(-1)] / k)
  for j in range(1, len(a)):
   ak -= ((a[j] * a[(- j)]) / (j + 1))
  ak /= (a[0] * (1 + (mp.mpf(1) / (k + 1))))
  a.append(ak)
 return a

def compute_a ( n ) : a = [ ( mp . sqrt ( 2 ) / 2 ) ] for k in range ( 1 , n ) : ak = ( a [ ( - 1 ) ] / k ) for j in range ( 1 , len ( a ) ) : ak -= ( ( a [ j ] * a [ ( - j ) ] ) / ( j + 1 ) ) ak /= ( a [ 0 ] * ( 1 + ( mp . mpf ( 1 ) / ( k + 1 ) ) ) ) a . append ( ak ) return a
a_k from dlmf 5 .