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.

Showing 1-4 of 4 results.

A369990 Numerator of canonical iterated stribolic area Integral_{t=0..1} h_n(t) dt (of order 1).

Original entry on oeis.org

1, 1, 1, 3, 2, 161, 24941, 49675943612, 3267335346149361824147, 2507700451651989905962493021537936733790431031, 39058362193701767718721504578116138158143785410766642680982462728116470023287868511995843
Offset: 0

Views

Author

Roland Miyamoto, Feb 07 2024

Keywords

Comments

a(n) = numerator of Integral_{t=0..1} h_n(t) dt, where h_0 = 1, h_1 = T(h_0), h_2 = T(h_1), ...:[0,1]->[0,1], the operator T is given by T(g)(x) := Integral_{y=x..1} g^*(y) dy / Integral_{y=0..1} g(y) dy and g^*(y) := sup g^{-1}[y,1] (pseudo-inverse).
Geometrically speaking, T rotates by 90 degrees before integrating, which is why we call h_0, h_1, h_2,... the canonical stribolic iterates (from Greek stribo=turn/twist).
Alternatively, a(n) can be calculated from the polynomial q_n := h_n ° ... ° h_1. Cf. alternative formula below.
The sequence (a(n)/A369991(n)) is strictly decreasing and converges to the stribolic constant kappa=A369988.
We observe that a(n) and a(n+1) are coprime for n = 0..22 with the sole exception of gcd(a(5),a(6)) = 7.

Examples

			h_2(x) = (1-x)^2, h_2^*(x) = 1 - sqrt(x) = -h_3'(x)/3, h_3(x) = 1 - 3x + 2x^(3/2), hence Integral_{t=0..1} h_2(t) dt = 1/3 and Integral_{t=0..1} h_3(t) dt = 3/10. Therefore a(2)=1 and a(3)=3.
		

Crossrefs

Cf. A369988 (decimal expansion of limit), A369991 (denominator).

Programs

  • Python
    from functools import cache; from sympy.abc import x
    @cache
    def kappa(n): return (1-(n%2)*2) * Q(n).subs(x,1) if n else 1
    @cache
    def Q(n): return (q(n).diff() * q(n-1)).integrate()
    @cache
    def q(n): return (1-x if n==1 else n%2-Q(n-1)/kappa(n-1)) if n else x
    def numer(c): return c.numerator if c%1 else c
    print([numer(kappa(n)) for n in range(15)])

Formula

a(0)=1, a(n) is the numerator of kappa_n := Integral_{t=0..1} h_n(t) dt where h_1(x):=1-x and h_{n+1}(x) := Integral_{t=x..1} h_n^*(t) dt / kappa_n for n=1,2,...; here, h_n^* denotes the compositional inverse of h_n.
Alternatively, the rational sequence (kappa_n) := (a(n)/A369991(n)) and the two polynomial sequences (q_n), (Q_n) together are determined by the following equations for n=1,2,...: kappa_0=1, q_0=X, q_1=1-X, Q_n(0)=0, Q_n' = q_n'*q_{n-1}, kappa_n = (-1)^n * Q_n(1), q_{n+1} = (n+1) mod 2 - Q_n / kappa_n.

A369991 Denominator of canonical iterated stribolic area Integral_{t=0..1} h_n(t) dt (of order 1).

Original entry on oeis.org

1, 2, 3, 10, 7, 572, 89148, 177918244665, 11711158115225119429452, 8990773234863161759100003096510729982749072312, 140048278006628885452600904137492554179859017924910241263151850844470542993943699969398879
Offset: 0

Views

Author

Roland Miyamoto, Feb 08 2024

Keywords

Comments

a(n) = denominator of Integral_{t=0..1} h_n(t) dt, where h_0 = 1, h_1 = T(h_0), h_2 = T(h_1), ...:[0,1]->[0,1], the operator T is given by T(g)(x) := Integral_{y=x..1} g^*(y) dy / Integral_{y=0..1} g(y)dy and g^*(y) := sup g^{-1}[y,1] (pseudo-inverse).
Geometrically speaking, T rotates by 90 degrees before integrating, which is why we call h_0, h_1, h_2, ... the canonical stribolic iterates (from Greek stribo=turn/twist).
Alternatively, a(n) can be calculated from the polynomial q_n := h_n ° ... ° h_1. Cf. alternative formula below.
The sequence (a(n)/A369991(n)) is strictly decreasing and converges to the stribolic constant kappa=A369988.

Examples

			h_2(x) = (1-x)^2, h_2^*(x) = 1 - sqrt(x) = - h_3'(x)/3, h_3(x) = 1 - 3x + 2x^(3/2), hence Integral_{t=0..1} h_2(t) dt = 1/3 and Integral_{t=0..1} h_3(t) dt = 3/10. Therefore a(2)=3 and a(3)=10.
		

Crossrefs

Cf. A369988 (decimal expansion of limit), A369990 (numerator).

Programs

  • Python
    from functools import cache; from sympy.abc import x
    @cache
    def kappa(n): return (1-(n%2)*2) * Q(n).subs(x,1) if n else 1
    @cache
    def Q(n): return (q(n).diff() * q(n-1)).integrate()
    @cache
    def q(n): return (1-x if n==1 else n%2-Q(n-1)/kappa(n-1)) if n else x
    def denom(c): return c.denominator if c%1 else 1
    print([denom(kappa(n)) for n in range(15)])

Formula

a(0)=1, a(n) is the denominator of kappa_n := Integral_{t=0..1} h_n(t) dt where h_1(x):=1-x and h_{n+1}(x) := Integral_{t=x..1} h_n^*(t) dt / kappa_n for n=1,2,...; here, h_n^* denotes the compositional inverse of h_n.
Alternatively, the rational sequence (kappa_n) := (A369990(n)/a(n)) and the two polynomial sequences (q_n), (Q_n) together are determined by the following equations for n=1,2,...: kappa_0=1, q_0=X, q_1=1-X, Q_n(0)=0, Q_n' = q_n'*q_{n-1}, kappa_n = (-1)^n * Q_n(1), q_{n+1} = (n+1) mod 2 - Q_n / kappa_n.

A369992 Irregular triangle read by rows: T(n,k) = (2^floor(n/2)+k)-th numerator coefficient of the polynomial q_n used to parametrize the canonical stribolic iterates h_n (of order 1), for n=0,1,2,... and 0 <= k <= A000045(n+1) - 2^floor(n/2).

Original entry on oeis.org

1, -1, 1, -3, 2, 5, -4, -35, 28, 70, -100, 35, 3575, -5720, -6292, 19240, -14300, 3520, -13856700, 22170720, 24387792, -74574240, 217088300, -401631120, -382444920, 2019752592, -1656568485, -1470440400, 3671101720, -2832601200, 1025395800, -147804800
Offset: 0

Views

Author

Roland Miyamoto, Mar 01 2024

Keywords

Comments

The n-th row of the triangle contains 1 + A000045(n+1) - 2^floor(n/2) integers c_{2^floor(n/2)},...,c_{A000045(n+1)} forming a polynomial q_n = (n mod 2) + Sum_{i} c_i*X^i / A369993(n) that is related to A369990 and A369991 as follows: q_n = h_n ° ... ° h_1 (function composition), that is, h_n maps q_{n-1}(t) to q_n(t) for 0 <= t <= 1, and h_n has Integral_{x=0..1} h_n(x) dx = A369990(n)/A369991(n).
The gcd of each row in the triangle equals 1.
All previous statements are proved in the arXiv article, see link below.
Observation: In each of the 25 rows computed so far, there are no zeros and at most two consecutive entries of the same sign.

Examples

			q_5 = 1 + (-35*X^4 + 28*X^5 + 70*X^6 - 100*X^7 + 35*X^8) / 2 gives rise to row 5 (counting from 0) of the triangle (rows 0 to 7 are given):
          1;
         -1;
          1;
         -3,        2;
          5,       -4;
        -35,       28,       70,      -100,        35;
       3575,    -5720,    -6292,     19240,    -14300,       3520;
  -13856700, 22170720, 24387792, -74574240, 217088300, -401631120, -382444920, 2019752592, -1656568485, -1470440400, 3671101720, -2832601200, 1025395800, -147804800;
		

Crossrefs

A369993 (denominator).

Programs

  • Python
    from functools import cache, reduce; from sympy.abc import x; from sympy import lcm, fibonacci
    @cache
    def kappa(n): return (1-(n%2)*2) * Q(n).subs(x,1) if n else 1
    @cache
    def Q(n): return (q(n).diff() * q(n-1)).integrate()
    @cache
    def q(n): return (1-x if n==1 else n%2-Q(n-1)/kappa(n-1)) if n else x
    def denom(c): return c.denominator if c%1 else 1
    def row(n): qn = q(n); k0 = 1<<(n>>1); k1 = 1+fibonacci(n+1); dn = reduce(lcm,(denom(qn.coeff(x,k)) for k in range(k0,k1))); return [qn.coeff(x,k)*dn for k in range(k0,k1)]
    for n in range(15): print(row(n))

Formula

The polynomials q_n = (n mod 2) + Sum_{k>=0} T(n,k)*X^(2^floor(n/2)+k) / A369993(n) are determined by the equations q_0=X, q_1=1-X, q_n(0) = n mod 2 and (A369990(n) / A369991(n)) * q_{n+1}' = -q_n' * q_{n-1} for n=1,2,...
Sum_k T(n,k) = (-1)^n * A369993(n) for n=0,1,2,...

A369993 Reciprocal of content of the polynomial q_n used to parametrize the canonical stribolic iterates h_n (of order 1).

Original entry on oeis.org

1, 1, 1, 1, 1, 2, 23, 24941, 1307261674, 62079371576837874658793, 67775687882486213674661973555079371183525163, 39058362193701767718721504578116138158143785410766642680982462728116470023287868511995843
Offset: 0

Views

Author

Roland Miyamoto, Mar 01 2024

Keywords

Comments

1/a(n) is the content of the polynomial q_n, whose (non-constant) numerator coefficients are given by A369992, that is, a(n)*q_n in Z[X] is primitive. (Proof in arXiv article, see link below.)

Examples

			q_5 = 1 + ( -35*X^4 + 28*X^5 + 70*X^6 - 100*X^7 + 35*X^8 ) / 2 and q_6 = ( 3575*X^8 - 5720*X^9 - 6292*X^10 + 19240*X^11 - 14300*X^12 + 3520*X^13 ) / 23.
Therefore, a(5)=2 and a(6)=23.
		

Crossrefs

Cf. A369992 (triangle of numerators).

Programs

  • Python
    from functools import cache, reduce; from sympy.abc import x; from sympy import lcm, fibonacci
    @cache
    def kappa(n): return (1-(n%2)*2) * Q(n).subs(x,1) if n else 1
    @cache
    def Q(n): return (q(n).diff() * q(n-1)).integrate()
    @cache
    def q(n): return (1-x if n==1 else n%2-Q(n-1)/kappa(n-1)) if n else x
    def denom(c): return c.denominator if c%1 else 1
    def A369993(n): return reduce(lcm,(denom(q(n).coeff(x,k)) for k in range(1<<(n>>1),1+fibonacci(n+1))))
    print([A369993(n) for n in range(15)])

Formula

1/a(n) = content of the polynomial q_n in Q[X] determined by the identities q_0 = X, q_1 = 1 - X, q_n(0) = n mod 2 and (A369990(n) / A369991(n)) * q_{n+1}' = -q_n' * q_{n-1} for n=1,2,...
Showing 1-4 of 4 results.