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.

A252496 Numbers k such that arctan(1/k) = arctan(1/x) - arctan(1/y) for some integers 0

Original entry on oeis.org

3, 7, 8, 13, 17, 18, 21, 30, 31, 32, 41, 43, 46, 47, 50, 55, 57, 68, 72, 73, 75, 76, 83, 91, 93, 98, 99, 100, 105, 111, 112, 117, 119, 122, 123, 128, 129, 132, 133, 142, 144, 155, 157, 162, 172, 173, 174, 177, 182, 183, 185, 187, 189, 192, 193, 200, 203, 211
Offset: 1

Views

Author

Matthijs Coster, Dec 17 2014

Keywords

Comments

arctan(1/a(n)) = arctan(1/x) - arctan(1/y) for some integers x and y where 0 < x < y < a(n). We use the formula tan(a+b) = (tan a + tan b)/(1 - tan a.tan b) which implies that 1/a(n) = (1/x - 1/y)/(1+1/(xy)) or a(n) = (xy+1)/(y-x) = x + (x^2+1)/(y-x). So we look for divisors of x^2+1.

Examples

			8 is in the sequence since arctan(1/8) = arctan(1/3) - arctan(1/5)
		

Programs

  • Maple
    N:= 1000: # to get all terms <= N
    A:= {}:
    for x from 1 to N/2 do
       ds:= select(d -> (d <= x and d >= (x^2+1)/(N-x)), numtheory:-divisors(x^2+1));
       A:= A union map(d -> x + (x^2+1)/d, ds);
    od:
    A;
    # if using Maple 11 or earlier, uncomment the next line
    # sort(convert(A,list));
    # Robert Israel, Dec 19 2014
  • SageMath
    S = []
    bound = 50
    for b in range(1, bound-1):
        bb = b*b+1
        for d in divisors(bb):
            if (2*b < d) & (d-b < 2*bound):
                c = d-b
                a = (b*c-1)/(b+c)
                S.append((c, b, a))
    S.sort()
    print(S)