OFFSET
0,2
LINKS
Antti Karttunen, Table of n, a(n) for n = 0..16383
MathWorld, Pairing Function
FORMULA
PROG
(PARI)
A003188(n) = bitxor(n, n>>1);
A005940(n) = { my(p=2, t=1); n--; until(!n\=2, if((n%2), (t*=p), p=nextprime(p+1))); t }; \\ Modified from code of M. F. Hasler
A046523(n) = { my(f=vecsort(factor(n)[, 2], , 4), p); prod(i=1, #f, (p=nextprime(p+1))^f[i]); }; \\ This function from Charles R Greathouse IV, Aug 17 2011
for(n=0, 16383, write("b286242.txt", n, " ", A286242(n)));
(Scheme) (define (A286242 n) (* (/ 1 2) (+ (expt (+ (A278222 n) (A278219 n)) 2) (- (A278222 n)) (- (* 3 (A278219 n))) 2)))
(Python)
from sympy import prime, factorint
import math
def T(n, m): return ((n + m)**2 - n - 3*m + 2)/2
def A(n): return n - 2**int(math.floor(math.log(n, 2)))
def b(n): return n + 1 if n<2 else prime(1 + (len(bin(n)[2:]) - bin(n)[2:].count("1"))) * b(A(n))
def a005940(n): return b(n - 1)
def P(n):
f=factorint(n)
return sorted([f[i] for i in f])
def a046523(n):
x=1
while True:
if P(n) == P(x): return x
else: x+=1
def a003188(n): return n^(n>>1)
def a243353(n): return a005940(1 + a003188(n))
def a278219(n): return a046523(a243353(n))
def a278222(n): return a046523(a005940(n + 1))
def a(n): return T(a278222(n), a278219(n)) # Indranil Ghosh, May 07 2017
CROSSREFS
KEYWORD
nonn
AUTHOR
Antti Karttunen, May 07 2017
STATUS
approved