cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A175934 Number of lattice paths from (0,0) to (n,n) using steps S={(1,0),(0,1),(r,r)|0

Original entry on oeis.org

1, 2, 7, 27, 116, 532, 2554, 12675, 64507, 334836, 1765833, 9434779, 50962640, 277839361, 1526834471, 8448751385, 47035469902, 263260232668, 1480527858436, 8361881707770, 47409359120684, 269736194796537, 1539547726712437, 8812663513352489, 50579825742416942, 291012706492224315, 1678146650028389023
Offset: 0

Views

Author

Eric Werley, Dec 06 2010

Keywords

Comments

Number of lattice paths of weight n that start in (0,0), end on the horizontal axis, never go below this axis, whose steps are of the following four kinds: h=(1,0) of weight 1, H=(1,0) of weight 2, u=(1,1) of weight 1, and d=(1,-1) of weight 0; the weight of a path is the sum of the weights of its steps. Example: a(2)=7 because we have hh, H, hud, udh, udud, uhd, and uudd. - Emeric Deutsch, Sep 09 2014

Examples

			a(2)=7 because we can reach (2,2) in the following ways:
(1,0),(1,0),(0,1),(0,1);
(1,0),(0,1),(1,0),(0,1);
(1,0),(0,1),(1,1);
(1,0),(1,1),(0,1);
(1,1),(1,0),(0,1);
(1,1),(1,1);
(2,2).
G.f. = 1 + 2*x + 7*x^2 + 27*x^3 + 116*x^4 + 532*x^5 + 2554*x^6 + ...
		

Crossrefs

Programs

  • Maxima
    a(n):=if n<2 then n+1 else sum((binomial(2*k,k)*sum(binomial(k+1,j)*sum(3^(j-i)*binomial(j,i)*binomial(k-j+1,n-3*k+2*j-i-2)*(2)^(-n+2*(k-j)+1)*(-1)^(k-j+1),i,0,n-k),j,0,k+1))/(k+1),k,0,n); /* Vladimir Kruchinin, Mar 01 2016 */
  • Sage
    n=20
    M=[]
    for posx in range(0,n+1):
            for posy in range(0,n+1):
                if posx==0:
                    if posy==0:
                        M.append([1])
                    else:
                        M.append([0])
                else:
                    if posy==0:
                        M[0].append(0)
                        M[0][posx]=M[0][posx]+M[0][posx-1]
                    else:
                        if posy>posx:
                            M[posy].append(0)
                        else:
                            M[posy].append(0)
                            M[posy][posx]=M[posy][posx-1]+M[posy][posx]
                            M[posy][posx]=M[posy-1][posx]+M[posy][posx]
                            for r in range(1,min(posx,posy,2)+1):
                                M[posy][posx]=M[posy-r][posx-r]+M[posy][posx]
    L=[]
    for k in range(0,n+1):
        L.append(M[k][k])
    print(L)
    

Formula

G.f.: (1 - x - x^2 - sqrt(x^4 + 2*x^3 - x^2 - 6*x + 1))/(2*x). - Mark van Hoeij, Apr 16 2013
G.f.: 1/(1 - x*(1 + x + 1/(1 - x*(1 + x + 1/...)))). - Michael Somos, Mar 30 2014
G.f. g = g(x) satisfies g = 1 + x*g + x^2*g + x*g^2. - Emeric Deutsch, Sep 09 2014
a(n) = Sum_{k=0..n} ((C(k)*Sum_{j=0..k+1} (binomial(k+1,j)*Sum_{i=0..n-k} (3^(j-i)*binomial(j,i)*binomial(k-j+1,n-3*k+2*j-i-2)*2^(2*(k-j)-n+1)*(-1)^(k-j+1))))), a(0)=1, a(1)=2, where C(k) = A000108(k). - Vladimir Kruchinin, Mar 01 2016
a(0) = 1, a(1) = 2; a(n) = 2 * a(n-1) + 3 * a(n-2) + Sum_{k=2..n-1} a(k) * a(n-k-1). - Ilya Gutkovskiy, Jul 20 2021
G.f.: 1/G(0), where G(k) = 1 - (2*x+x^2)/(1-x/G(k+1)) (continued fraction). - Nikolaos Pantelidis, Jan 08 2023