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.

A327439 a(0)=1. If a(n-1) and n are relatively prime and a(n-1)!=1, a(n) = a(n-1) - 1. Otherwise (i.e., if a(n-1) and n share a common factor or a(n-1)=1), a(n) = a(n-1) + gcd(a(n-1),n) + 1.

Original entry on oeis.org

1, 3, 2, 1, 3, 2, 5, 4, 9, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 3, 2, 5, 4, 9, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 3, 2, 5, 4, 7, 6, 9, 8, 11, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11
Offset: 0

Views

Author

Nathaniel J. Strout, Feb 24 2020

Keywords

Comments

Graphically at large scales this sequence is vaguely self-similar, though in certain sections it acts in a rough manner, in particular in regions surrounding apparent cusps. See the program for a graph to zoom in on these sections.
See Python program for zoomable graph.

Programs

  • Mathematica
    a[0] = 1; a[n_] := a[n] = If[a[n - 1] != 1 && CoprimeQ[n, a[n - 1]], a[n - 1] - 1, a[n - 1] + GCD[a[n - 1], n] + 1]; Array[a, 101, 0] (* Amiram Eldar, Feb 24 2020 *)
    nxt[{n_,a_}]:={n+1,If[CoprimeQ[n+1,a]&&a!=1,a-1,a+GCD[a,n+1]+1]}; NestList[nxt,{0,1},70][[;;,2]] (* Harvey P. Dale, Jun 08 2024 *)
  • Python
    import math
    import matplotlib.pyplot as plt
    num = 10000
    x = []
    y = []
    # y is the main sequence
    def sequence():
        a = 1
        y.append(a)
        for i in range(num):
            if (a != 1) and (math.gcd(a,i+1) == 1):
                a -= 1
            else:
                a += math.gcd(a,i+1)+1
            x.append(i)
            y.append(a)
        x.append(num)
    sequence()
    # code only regarding the plot.
    plt.xlim(0,num)
    plt.ylim(0,num)
    plt.plot(x, y)
    plt.xlabel('x - axis')
    plt.ylabel('y - axis')
    plt.title('Plot of Sequence')
    plt.show()