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-1 of 1 results.

A372496 Integers of the form k^2 + 1, where k >= 1, that are the product of two other integers of the form k^2 + 1, where k >= 1.

Original entry on oeis.org

10, 50, 170, 290, 325, 442, 962, 1850, 2210, 3250, 5330, 8282, 9802, 12322, 15130, 17425, 17690, 24650, 33490, 44522, 58082, 58565, 64010, 65026, 74530, 94250, 103685, 117650, 145162, 177242, 191845, 214370, 237170, 257050, 305810, 332930, 361202
Offset: 1

Views

Author

Ely Golden, May 03 2024

Keywords

Comments

This sequence is the sequence of possible c^2 + 1 values of all triples of positive integers (a,b,c) such that (a^2 + 1)*(b^2 + 1) = c^2 + 1.
A001541(n)^2 + 1 is always a term of this sequence for all n > 0. This is because A001541 consists of the x-values of the solutions to the Pell equation x^2 - 2y^2 = 1 which is equivalent to x^2 + 1 = 2*(y^2 + 1) = (1^2 + 1)*(y^2 + 1).
A002061(n)^2 + 1 is always a term of this sequence for all n > 1. This is because A002061 consists of the integers of the form k^2 + k + 1 and (k^2 + k + 1)^2 + 1 = (k^2 + 1)*((k+1)^2 + 1).

Examples

			50 is a term since 50 = 7^2 + 1 = 10 * 5 = (3^2 + 1)*(2^2 + 1).
		

Crossrefs

Intersection of A002522 and A135280.

Programs

  • Mathematica
    formQ[k_] := k >= 1 && IntegerQ@Sqrt[k - 1];
    prodQ[k_] := AnyTrue[Divisors[k][[2 ;; -2]], formQ[#] && formQ[k/#]&];
    okQ[k_] := formQ[k] && prodQ[k];
    Select[Range[2, 10^6], okQ] (* Jean-François Alcover, May 10 2024 *)
  • PARI
    isok1(k) = issquare(k-1) && (k>1);
    isok2(k) = fordiv(k, d, if (isok1(d) && isok1(k/d), return(1)));
    isok(k) = isok1(k) && isok2(k); \\ Michel Marcus, May 04 2024
  • Python
    from math import isqrt
    def is_perfect_square(n): return isqrt(abs(n))**2 == n
    limit = 10**16
    sequence_entries = set()
    for a in range(1, isqrt(isqrt(limit))+1):
        u = a**2 + 1
        for b in range(a+1, isqrt(limit//u)+1):
            v = b**2 + 1
            if(is_perfect_square(u*v - 1)): sequence_entries.add(u*v)
    sequence_entries = sorted(sequence_entries)
    for i, j in enumerate(sequence_entries, 1):
        print(i, j)
    
Showing 1-1 of 1 results.