Analytic combinatorics - Philippe Flajolet & Robert Sedgewick