login
This site is supported by donations to The OEIS Foundation.

 

Logo


Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A117966 Balanced ternary enumeration (or balanced ternary representation) of integers; write n in ternary and then replace 2's with (-1)'s. 30
0, 1, -1, 3, 4, 2, -3, -2, -4, 9, 10, 8, 12, 13, 11, 6, 7, 5, -9, -8, -10, -6, -5, -7, -12, -11, -13, 27, 28, 26, 30, 31, 29, 24, 25, 23, 36, 37, 35, 39, 40, 38, 33, 34, 32, 18, 19, 17, 21, 22, 20, 15, 16, 14, -27, -26, -28, -24, -23, -25, -30, -29, -31, -18, -17, -19, -15, -14, -16, -21, -20, -22, -36 (list; graph; refs; listen; history; text; internal format)
OFFSET

0,4

COMMENTS

As the graph demonstrates, there are large discontinuities in the sequence between terms 3^i-1 and 3^i, and between terms 2*3^i-1 and 2*3^i. - N. J. A. Sloane, Jul 03 2016

REFERENCES

D. E. Knuth, The Art of Computer Programming. Addison-Wesley, Reading, MA, Vol. 2, pp. 173-175; 2nd. ed. pp. 190-193.

LINKS

Gheorghe Coserea, Table of n, a(n) for n = 0..59048 (first 729 terms from A. Karttunen)

Ken Levasseur, The Balanced Ternary Number System

Tilman Piesk, First 27 numbers with their ternary representation

N. J. A. Sloane and Brady Haran, Amazing Graphs II (including Star Wars), Numberphile video (2019)

Wikipedia, Balanced ternary

FORMULA

a(0) = 0, a(3n) = 3a(n), a(3n+1) = 3a(n)+1, a(3n+2) = 3a(n)-1.

G.f. satisfies A(x) = 3*A(x^3)*(1+x+x^2) + x/(1+x+x^2). - corrected by Robert Israel, Nov 17 2015

A004488(n) = a(n)^{-1}(-a(n)). I.e., if a(n) <= 0, A004488(n) = A117967(-a(n)) and if a(n) > 0, A004488(n) = A117968(a(n)).

EXAMPLE

7 in base 3 is 21; changing the 2 to a (-1) gives (-1)*3+1 = -2, so a(7) = -2.

MAPLE

f:= proc(n) local L, i;

   L:= subs(2=-1, convert(n, base, 3));

   add(L[i]*3^(i-1), i=1..nops(L))

end proc:

map(f, [$0..100]);

# alternate:

N:= 100: # to get a(0) to a(N)

g:= 0:

for n from 1 to ceil(log[3](N+1)) do

g:= convert(series(3*subs(x=x^3, g)*(1+x+x^2)+x/(1+x+x^2), x, 3^n+1), polynom);

od:

seq(coeff(g, x, j), j=0..N); # Robert Israel, Nov 17 2015

# third Maple program:

a:= proc(n) option remember; `if`(n=0, 0,

      3*a(iquo(n, 3, 'r'))+`if`(r=2, -1, r))

    end:

seq(a(n), n=0..3^4-1);  # Alois P. Heinz, Aug 14 2019

MATHEMATICA

Map[FromDigits[#, 3] &, IntegerDigits[#, 3] /. 2 -> -1 & /@ Range@ 80] (* Michael De Vlieger, Nov 17 2015 *)

PROG

(MIT/GNU Scheme:) (define (A117966 n) (let loop ((z 0) (i 0) (n n)) (if (zero? n) z (loop (+ z (* (expt 3 i) (if (= 2 (modulo n 3)) -1 (modulo n 3)))) (1+ i) (floor->exact (/ n 3)))))) -- Antti Karttunen, May 19 2008

(PARI) a(n) = subst(Pol(apply(x->if(x == 2, -1, x), digits(n, 3)), 'x), 'x, 3)

vector(73, i, a(i-1))  \\ Gheorghe Coserea, Nov 17 2015

(Python)

def a(n):

    if n==0: return 0

    if n%3==0: return 3*a(n/3)

    elif n%3==1: return 3*a((n - 1)/3) + 1

    else: return 3*a((n - 2)/3) - 1

print [a(n) for n in xrange(101)] # Indranil Ghosh, Jun 06 2017

CROSSREFS

Cf. A117967, A117868, A001057, A004488, A134028, A274107.

Column k=1 of A319047.

Sequence in context: A316629 A254175 A088916 * A303932 A121891 A271590

Adjacent sequences:  A117963 A117964 A117965 * A117967 A117968 A117969

KEYWORD

base,sign,look

AUTHOR

Franklin T. Adams-Watters, Apr 05 2006

STATUS

approved

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

License Agreements, Terms of Use, Privacy Policy. .

Last modified October 21 13:24 EDT 2019. Contains 328299 sequences. (Running on oeis4.)