%I #18 Oct 10 2023 23:01:54
%S 0,1,1,2,1,3,2,3,1,3,1,5,1,5,4,4,1,3,1,5,2,3,1,7,1,3,3,8,1,9,7,5,1,3,
%T 1,5,1,3,1,7,1,5,1,5,3,3,3,9,1,3,3,5,1,7,3,11,1,3,3,14,3,15,13,6,1,3,
%U 1,5,1,3,1,7,2,3,1,5,1,3,1,9,1,3,1,8,4,3,1,7,1,7,3,5,1,7,5,11,1
%N Number of [*]-divisors d <= n such that there is another [*]-divisor d' < n with d [*] d' = n.
%C Define [+] to be binary bitwise inclusive-OR and let [*] denote the shift-and-[+] product. ([+] is usually simply called OR.) Note that [*] is commutative, associative, and distributes over [+]. If x [*] y = z, we say x and y are [*]-divisors of z.
%H Reinhard Zumkeller, <a href="/A066376/b066376.txt">Table of n, a(n) for n = 1..1000</a>
%e 14 has 5 [*]-divisors: 1, 2, 3, 6, 7, since for example 2 [*] 7 = 10 [*] 111 = 1110 OR 0000 = 1110; and 3 [*] 6 = 11 [*] 110 = 1100 OR 0110 = 1110.
%o (Haskell)
%o import Data.Bits (Bits, (.|.), shiftL, shiftR)
%o a066376 :: Int -> Int
%o a066376 n = length [d | d <- [1..n-1], any ((== n) . (orm d)) [1..n]] where
%o orm 1 v = v
%o orm u v = orm (shiftR u 1) (shiftL v 1) .|. if odd u then v else 0
%o -- _Reinhard Zumkeller_, Mar 01 2013
%Y Cf. A067139 ("primes").
%Y See A003986 for a table of [+] sums, A067138 for a table of [*] products.
%K nonn,easy,nice
%O 1,4
%A _Marc LeBrun_, Dec 22 2001
%E Edited by _N. J. A. Sloane_, Dec 13 2021
%E Name corrected by _Sean A. Irvine_, Oct 10 2023