Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

A054240 revision #19


A054240
Bit-interleaved number addition table; like binary addition but carries shift 2 instead of 1; addition base sqrt(2).
4
0, 1, 1, 2, 4, 2, 3, 3, 3, 3, 4, 6, 8, 6, 4, 5, 5, 9, 9, 5, 5, 6, 16, 6, 12, 6, 16, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 18, 12, 18, 16, 18, 12, 18, 8, 9, 9, 13, 13, 17, 17, 13, 13, 9, 9, 10, 12, 10, 24, 18, 20, 18, 24, 10, 12, 10, 11, 11, 11, 11, 19, 19, 19, 19, 11, 11, 11, 11, 12, 14, 32, 14
OFFSET
0,4
FORMULA
From Peter Munn, Dec 10 2019: (Start)
A(m,0) = A(0,m) = m.
A(n,k) = A(k,n).
A(n, A(m,k)) = A(A(n,m), k).
A(m,m) = 4*m.
A(2*n, 2*k) = 2*A(n,k).
A(A000695(n), A000695(k)) = A000695(n+k).
A(A000695(n), 2*A000695(k)) = A000695(n) + 2*A000695(k).
A(A000695(n) + 2*A000695(m), k) = A(A000695(n), k) + A(2*A000695(m), k) - k.
A(A057300(n), A057300(k)) = A057300(A(n,k)).
(End)
EXAMPLE
T(3,1)=6 because (0*2 + 1*sqrt(2) + 1*1) + (0*2 + 0*sqrt(2) + 1*1) = (1*2 + 1*sqrt(2) + 0*1) (i.e., base sqrt(2) addition).
PROG
(Haskell)
import Data.Bits (xor, (.&.), shift)
a054240 :: Integer -> Integer -> Integer
a054240 x 0 = x
a054240 x y = a054240 (x `xor` y) (shift (x .&. y) 2)
a054240_adiag n = map (\k -> a054240 (n - k) k) [0..n]
a054240_square = map a054240_adiag [0..]
-- Reinhard Zumkeller, Dec 03 2011
CROSSREFS
Cf. A201651 (triangle read by rows).
Sequence in context: A351432 A320156 A351785 * A330312 A331810 A182817
KEYWORD
easy,nonn,tabl,look,changed
AUTHOR
Marc LeBrun, Feb 07 2000
STATUS
editing