|
|
A106665
|
|
Alternate paper-folding (or alternate dragon curve) sequence.
|
|
4
|
|
|
1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
0,1
|
|
COMMENTS
|
Regular dragon curve (A014577) sequence results from repeated folding of long strip of paper in half in the same direction, say right to left. This alternate dragon curve sequence results from repeated folding of long strip of paper in half in alternating directions, right to left, then left to right and so forth.
In the Wikipedia article "Dragon Curve" note the illustrated description under the heading "[Un]Folding the Dragon" and note that the 1's and 0's in the A106665 description correspond to the L and R folds in the Wikipedia discussion. - Robert Munafo, Jun 03 2010
|
|
REFERENCES
|
M. Gardner, "The Dragon Curve and Other Problems (Mathematical Games)", Scientific American, 1967, columns for March, April, July.
M. Gardner, "Mathematical Magic Show" (contains the dragon curve columns).
D. E. Knuth, "Art of Computer Programming," vol. 2, 3rd. ed., "Seminumerical > Algorithms," (section 4.1)
|
|
LINKS
|
Chandler Davis and Donald E. Knuth, Number Representations and Dragon Curves - II, Journal of Recreational Mathematics, Vol. 3, No. 3, 1970, pp. 133-149, see section 4. Reprinted in Donald E. Knuth, Selected Papers on Fun and Games, 2011, pages 571-614.
|
|
FORMULA
|
For n >= 0, a(4n) = 1, a(4n+2) = 0, a(2n+1) = 1 - a(n).
(-1)^a(n) = -A034947(n+1) * (-1)^A096268(n). - Alec Edgington (alec(AT)obtext.com), Aug 02 2010
|
|
EXAMPLE
|
1 + x^3 + x^4 + x^5 + x^8 + x^12 + x^13 + x^15 + x^16 + x^19 + x^20 + ...
|
|
MAPLE
|
a:= proc(n) option remember;
`if`(irem(n, 4)=0, 1, `if`(irem(n, 2)=1, 1-a((n-1)/2), 0))
end:
|
|
MATHEMATICA
|
a[n_] := a[n] = Switch[Mod[n, 4], 0, 1, 2, 0, _, 1-a[(n-1)/2]];
|
|
PROG
|
(C++) /* "ulong" stands for "unsigned long" */
bool bit_paper_fold_alt(ulong k)
{
ulong h = k & -k; // == lowest_one(k)
h <<= 1;
ulong t = h & (k ^ 0xaaaaaaaaUL); // 32-bit version
return ( t!=0 );
(PARI) {a(n) = n++; if( n==0, 0, v = valuation( n, 2); (n/2^v\2 + v+1) %2 )} /* Michael Somos, Mar 10 2012 */
|
|
CROSSREFS
|
|
|
KEYWORD
|
easy,nonn
|
|
AUTHOR
|
Duane K. Allen (computeruser(AT)sprintmail.com), May 13 2005
|
|
EXTENSIONS
|
Edited by N. J. A. Sloane, Jun 04 2010 to include material from discussions on the Sequence Fans Mailing List.
|
|
STATUS
|
approved
|
|
|
|