login
The OEIS is supported by the many generous donors to the OEIS Foundation.

 

Logo
Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A304083 Permutation of nonnegative integers: Minimal subset/superset bitmask transform of A054429. 10
0, 1, 3, 2, 7, 6, 4, 5, 15, 14, 12, 8, 13, 9, 11, 10, 31, 30, 28, 24, 16, 29, 25, 17, 27, 26, 18, 23, 22, 20, 21, 63, 19, 59, 58, 56, 48, 32, 62, 60, 52, 36, 61, 57, 49, 33, 55, 54, 50, 34, 51, 35, 47, 46, 44, 40, 45, 41, 43, 42, 127, 53, 37, 39, 38, 126, 124, 120, 112, 96, 64, 125, 121, 113, 97, 65, 123, 122, 114, 98, 66, 119, 118, 116, 100, 68, 117, 101 (list; graph; refs; listen; history; text; internal format)
OFFSET
0,3
COMMENTS
In "minimal subset/superset bitmask transform", applicable to any N -> N injection f, we start from a(0) = 0, after which for n > 0, if there are one or more k_i that are not already present in the sequence among terms a(0) .. a(n-1), and for which bitor(k_i,a(n-1)) = a(n-1), then a(n) = that k_i for which f(k_i) is minimized; otherwise, a(n) = that h_i for which f(h_i) is minimized among the infinite set of numbers h_i for which bitand(h_i,a(n-1)) = a(n-1) and that are not yet present in the sequence. In this case f(n) = A054429(n).
Shares with permutations like A003188, A006068, A163252, A300838, A302846, A303763, A303765, A303767, A303773 and A303775 the property that when moving from any a(n) to a(n+1) either a subset of 0-bits are toggled on (changed to 1's), or a subset of 1-bits are toggled off (changed to 0's), but no both kind of changes may occur at the same step. Note that A303767 is obtained when the same transform is applied to A001477, and A303775 when it is applied to A193231.
LINKS
FORMULA
Derived sequences:
A052330(a(n)) = A304085(n).
A019565(a(n)) = A304087(n).
A000120(a(n)) = A304089(n).
EXAMPLE
After a(3) = 2, "10" in binary, there are no submasks that wouldn't have been used, so one selects from supermasks h_i = "110" (6), "111" (7), "1010" (10), "1011" (11), "1110" (14), "1111" (15), "10010" (18), "10011" (19), etc. that one for which A054429(h_i) is minimized, which happens to be at 6 (as A054429(6) = 5, but A054429(7) = 4, and for n >= 8, A054429(n) >= 8), thus a(4) = 7.
After a(4) = 7, "111" in binary, the submasks "1", "10", and "11" (1-3) are already present in sequence, while submasks "100", "101", "110" (4-6) are not present, and because A054429 is minimized on these three at 6, a(5) = 6.
PROG
(PARI)
allocatemem(2^30);
default(parisizemax, 2^31);
up_to = (2^17)+2;
A054429(n) = ((3<<#binary(n\2))-n-1);
find_minimal_submask_for_A054429(n, m_inverses) = { my(minval=0, minmask=0); for(m=1, n, if((bitor(m, n)==n) && !mapisdefined(m_inverses, m) && (!minval || (A054429(m) < minval)), minval = A054429(m); minmask = m)); (minmask); };
find_minimal_supermask_for_A054429(n, m_inverses) = { my(minval=0, minmask=0); for(m=1, (1<<(1+#binary(n)))-1, if((bitand(m, n)==n) && !mapisdefined(m_inverses, m) && (!minval || (A054429(m) < minval)), minval = A054429(m); minmask = m)); (minmask); };
v304083 = vector(up_to);
m304084 = Map();
w=1; for(n=1, up_to, s = Set([]); if((submask = find_minimal_submask_for_A054429(w, m304084)), w = submask, w = find_minimal_supermask_for_A054429(w, m304084)); v304083[n] = w; mapput(m304084, w, n));
A304083(n) = if(!n, n, v304083[n]);
A304084(n) = if(!n, n, mapget(m304084, n));
CROSSREFS
Cf. A304084 (inverse).
Cf. A054429.
Sequence in context: A160679 A335536 A233276 * A276441 A153141 A006068
KEYWORD
nonn,base
AUTHOR
Antti Karttunen, May 06 2018
STATUS
approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recents
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified April 25 12:15 EDT 2024. Contains 371969 sequences. (Running on oeis4.)