title: Dickman function
text: # Dickman function
  
  In analytic number theory, the Dickman function or Dickman–de Bruijn function ρ is a special function used to estimate the proportion of smooth numbers up to a given bound. It was first studied by actuary Karl Dickman, who defined it in his only mathematical publication, which is not easily available, and later studied by the Dutch mathematician Nicolaas Govert de Bruijn.
  
  ## Definition
  
  The Dickman–de Bruijn function $\rho (u)$ is a continuous function that satisfies the delay differential equation
  
      $u\rho '(u)+\rho (u-1)=0\,$
  
  with initial conditions $\rho (u)=1$ for 0 ≤ u ≤ 1.
  
  ## Properties
  
  Dickman proved that, when $a$ is fixed, we have
  
      $\Psi (x,x^{1/a})\sim x\rho (a)\,$
  
  where $\Psi (x,y)$ is the number of y-smooth (or y-friable) integers below x.
  
  Ramaswami later gave a rigorous proof that for fixed a, $\Psi (x,x^{1/a})$ was asymptotic to $x\rho (a)$, with the error bound
  
      $\Psi (x,x^{1/a})=x\rho (a)+O(x/\log x)$
  
  in big O notation.
  
  ## Applications
  
  The main purpose of the Dickman–de Bruijn function is to estimate the frequency of smooth numbers at a given size. This can be used to optimize various number-theoretical algorithms such as P-1 factoring and can be useful of its own right.
  
  It can be shown using $\log \rho$ that
  
      $\Psi (x,y)=xu^{O(-u)}$
  
  which is related to the estimate $\rho (u)\approx u^{-u}$ below.
  
  The Golomb–Dickman constant has an alternate definition in terms of the Dickman–de Bruijn function.
  
  ## Estimation
  
  A first approximation might be $\rho (u)\approx u^{-u}.\,$ A better estimate is
  
      $\rho (u)\sim {\frac {1}{\xi {\sqrt {2\pi u}}}}\cdot \exp(-u\xi +\operatorname {Ei} (\xi ))$
  
  where Ei is the exponential integral and ξ is the positive root of
  
      $e^{\xi }-1=u\xi .\,$
  
  A simple upper bound is $\rho (x)\leq 1/x!.$
  
  | $u$ | $\rho (u)$ |
  | - | - |
  | 1 | 1 |
  | 2 | $3.0685282×10^{−1}$ |
  | 3 | $4.8608388×10^{−2}$ |
  | 4 | $4.9109256×10^{−3}$ |
  | 5 | $3.5472470×10^{−4}$ |
  | 6 | $1.9649696×10^{−5}$ |
  | 7 | $8.7456700×10^{−7}$ |
  | 8 | $3.2320693×10^{−8}$ |
  | 9 | $1.0162483×10^{−9}$ |
  | 10 | $2.7701718×10^{−11}$ |
  
  ## Computation
  
  For each interval [n − 1, n] with n an integer, there is an analytic function $\rho _{n}$ such that $\rho _{n}(u)=\rho (u)$. For 0 ≤ u ≤ 1, $\rho (u)=1$. For 1 ≤ u ≤ 2, $\rho (u)=1-\log u$. For 2 ≤ u ≤ 3,
  
      $\rho (u)=1-(1-\log(u-1))\log(u)+\operatorname {Li} _{2}(1-u)+{\frac {\pi ^{2}}{12}}.$
  
  with $Li_2$ the dilogarithm. Other $\rho _{n}$ can be calculated using infinite series.
  
  An alternate method is computing lower and upper bounds with the trapezoidal rule; a mesh of progressively finer sizes allows for arbitrary accuracy. For high precision calculations (hundreds of digits), a recursive series expansion about the midpoints of the intervals is superior.
  
  ## Extension
  
  Friedlander defines a two-dimensional analog $\sigma (u,v)$ of $\rho (u)$. This function is used to estimate a function $\Psi (x,y,z)$ similar to de Bruijn's, but counting the number of y-smooth integers with at most one prime factor greater than z. Then
  
      $\Psi (x,x^{1/a},x^{1/b})\sim x\sigma (b,a).\,$
  