OFFSET
0,3
COMMENTS
This automorphism effects the following transformation on the unlabeled rooted plane binary trees (letters A, B, C refer to arbitrary subtrees located on those nodes and () stands for an implied terminal node).
.A...B...............C...A
..\./.................\./
...x...C...-->.....B...x...............()..A.........A..()..
....\./.............\./.................\./....-->....\./...
.....x...............x...................x.............x....
((a . b) . c) --> (b . (c . a)) ____ (() . a) ----> (a . ())
See the Karttunen OEIS-Wiki link for a detailed explanation of how to obtain a given integer sequence from this definition.
LINKS
PROG
(Scheme functions implementing this automorphism on list-structures/S-expressions, both constructive (*A089862) and destructive (*A089862!) versions:)
(define (*A089862 s) (cond ((not (pair? s)) s) ((not (pair? (car s))) (cons (cdr s) (car s))) (else (cons (cdar s) (cons (cdr s) (caar s))))))
(define (*A089862! s) (cond ((pair? s) (cond ((pair? (car s)) (swap! (car s)) (robr! s) (swap! (cdr s))) (else (swap! s))))) s)
(define (swap! s) (let ((ex-car (car s))) (set-car! s (cdr s)) (set-cdr! s ex-car) s))
(define (robr! s) (let ((ex-cdr (cdr s))) (set-cdr! s (caar s)) (set-car! (car s) ex-cdr) (swap! (car s)) (swap! s) s))
CROSSREFS
Row 20 of A089840. Inverse of A089860. a(n) = A089853(A069770(n)) = A069770(A089857(n)) = A069770(A074679(A069770(n))) = A057163(A089860(A057163(n))). Number of cycles: A001683 (seems to be, not checked). Number of fixed points: A019590. Max. cycle size & LCM of all cycle sizes: A089410 (in each range limited by A014137 and A014138).
KEYWORD
nonn
AUTHOR
Antti Karttunen, Nov 29 2003
EXTENSIONS
A graphical description and constructive version of Scheme-implementation added by Antti Karttunen, Jun 04 2011
STATUS
approved