|
|
A182318
|
|
List of positive integers whose prime tower factorization, as defined in comments, does not contain the prime 2.
|
|
31
|
|
|
1, 3, 5, 7, 11, 13, 15, 17, 19, 21, 23, 27, 29, 31, 33, 35, 37, 39, 41, 43, 47, 51, 53, 55, 57, 59, 61, 65, 67, 69, 71, 73, 77, 79, 83, 85, 87, 89, 91, 93, 95, 97, 101, 103, 105, 107, 109, 111, 113, 115, 119, 123, 125, 127, 129, 131, 133, 135, 137, 139, 141, 143, 145, 149
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
The prime tower factorization of a number can be recursively defined as follows: the prime tower factorization of 1 is itself; to find the prime tower factorization of an integer n > 1, let n = p_1^e_1 * p_2^e_2 * ... * p_k^e_k be the canonical prime factorization of n, then the prime tower factorization is given by p_1^f_1 * p_2^f_2 * ... * p_k^f_k, where f_i is the prime tower factorization of e_i.
An alternative definition: let I(n) be the indicator function for the set of positive integers whose prime tower factorization does not contain a 2. Then I(n) is the multiplicative function satisfying I(p^k) = I(k) for p prime not equal to 2, and I(2^k) = 0.
|
|
LINKS
|
|
|
MAPLE
|
# The integer n is in this sequence if and only if
# containsPrimeInTower(2, n) returns false
containsPrimeInTower:=proc(q, n) local i, L, currentExponent; option remember;
if n <= 1 then return false: end if;
if type(n/q, integer) then return true: end if;
L := ifactors(n)[2];
for i to nops(L) do currentExponent := L[i][2];
if containsPrimeInTower(q, currentExponent) then return true: end if
end do;
return false:
end proc:
|
|
MATHEMATICA
|
Select[Range[150], ! MemberQ[Flatten@ FixedPoint[Map[If[PrimeQ@ Last@ # || Last@ # == 1, #, {First@ #, FactorInteger@ Last@ #}] &, #, {Depth@ # - 2}] &, FactorInteger@ #], 2] &] (* Michael De Vlieger, Feb 17 2017 *)
containsPrimeInTower[q_, n_] := containsPrimeInTower[q, n] = Module[{i, L, currentExponent}, If[n <= 1, Return[False]]; If[IntegerQ[n/q], Return[True] ]; L = FactorInteger[n]; For[i = 1, i <= Length[L], i++, currentExponent = L[[i, 2]]; If[containsPrimeInTower[q, currentExponent], Return[True]]]; Return[False]];
Select[Range[150], !containsPrimeInTower[2, #]&] (* Jean-François Alcover, Jan 22 2019, translated from Maple *)
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
EXTENSIONS
|
Typo in Maple program corrected by Rémy Sigrist, Dec 13 2016
|
|
STATUS
|
approved
|
|
|
|