

A230625


Concatenate prime factorization written in binary, convert back to decimal.


13



1, 2, 3, 10, 5, 11, 7, 11, 14, 21, 11, 43, 13, 23, 29, 20, 17, 46, 19, 85, 31, 43, 23, 47, 22, 45, 15, 87, 29, 93, 31, 21, 59, 81, 47, 174, 37, 83, 61, 93, 41, 95, 43, 171, 117, 87, 47, 83, 30, 86, 113, 173, 53, 47, 91, 95, 115, 93, 59, 349, 61, 95, 119, 22
(list;
graph;
refs;
listen;
history;
text;
internal format)



OFFSET

1,2


COMMENTS

As in A080670 the prime factorization is written as p1^e1*...*pN^eN (except for exponents eK = 1 which are omitted), with all factors and exponents in binary (cf. A007088). Then "^" and "*" signs are dropped, all binary digits are concatenated, and the result is converted back to decimal (base 10).  M. F. Hasler, Jun 21 2017
The first nontrivial fixed point of this function is 255987. Smaller numbers such that a(a(n)) = n are 1007, 1269; 1503, 3751. See A230627 for further information.  M. F. Hasler, Jun 21 2017
255987 is the only nontrivial fixed point less than 10000000.  Benjamin Knight, May 16 2018


LINKS

N. J. A. Sloane, Three (No, 8) Lovely Problems from the OEIS, Experimental Mathematics Seminar, Rutgers University, Oct 05 2017, Part I, Part 2, Slides. (Mentions this sequence)


EXAMPLE

6 = 2*3 = (in binary) 10*11 > 1011 = 11 in base 10, so a(6) = 11.
20 = 2^2*5 = (in binary) 10^10*101 > 1010101 = 85 in base 10, so a(20) = 85.


MAPLE

local Ldgs, p, eb, pb, b ;
b := 2;
if n = 1 then
return 1;
end if;
Ldgs := [] ;
for p in ifsSorted(n) do
pb := convert(op(1, p), base, b) ;
Ldgs := [op(pb), op(Ldgs)] ;
if op(2, p) > 1 then
eb := convert(op(2, p), base, b) ;
Ldgs := [op(eb), op(Ldgs)] ;
end if;
end do:
add( op(e, Ldgs)*b^(e1), e=1..nops(Ldgs)) ;
end proc:


MATHEMATICA

Table[FromDigits[#, 2] &@ Flatten@ Map[IntegerDigits[#, 2] &, FactorInteger[n] /. {p_, 1} :> {p}], {n, 64}] (* Michael De Vlieger, Jun 23 2017 *)


PROG

(Python)
import sympy
[int(''.join([bin(y)[2:] for x in sorted(sympy.ntheory.factorint(n).items()) for y in x if y != 1]), 2) for n in range(2, 100)] # compute a(n) for n > 1
(PARI) a(n) = {if (n==1, return(1)); f = factor(n); s = []; for (i=1, #f~, s = concat(s, binary(f[i, 1])); if (f[i, 2] != 1, s = concat(s, binary(f[i, 2]))); ); subst(Pol(s), x, 2); } \\ Michel Marcus, Jul 15 2014
(PARI) A230625(n)=n>1return(1); fold((x, y)>if(y>1, x<<logint(y<<1, 2)+y, x), concat(Col(factor(n))~)) \\ M. F. Hasler, Jun 21 2017


CROSSREFS

See A289667 for the base 3 version.


KEYWORD

nonn,base


AUTHOR



EXTENSIONS

Added selfcontained definition.  M. F. Hasler, Jun 21 2017


STATUS

approved



