%I #17 Mar 07 2017 04:04:21
%S 0,0,0,1,1,1,2,3,4,4,5,5,6,7,8,9,10,10,11,12,13,14,15,15,16,17,18,19,
%T 20,21,22,23,24,25,25,26,27,28,29,30,31,32,33,34,35,35,36,37,38,39,40,
%U 41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,55,56,57
%N Spin(2n+1) and Spin(2n+2) have torsion index 2^a(n).
%C First several terms agree with A169869 but the two sequences are distinct as can be seen where the values are 19 and 20. - _Skip Garibaldi_, Mar 05 2017
%H Michael De Vlieger, <a href="/A096336/b096336.txt">Table of n, a(n) for n = 0..10000</a>
%H Burt Totaro, <a href="https://www.math.ucla.edu/~totaro/papers/public_html/spin.pdf">The torsion index of the spin groups</a>, Duke Math. J. 129 (2005), no. 2, 249-290, <a href="http://doi.org/10.1215/S0012-7094-05-12923-4">doi:10.1215/S0012-7094-05-12923-4</a>.
%F a(n) is usually n-floor(log_2((n+1)n/2 + 1)), but is this number plus 1 if n = 2^e+b for nonnegative integers e, b such that 2b-a(b) <= e-3.
%t a[0] = 0; a[n_] := a[n] = Module[{e = Floor[Log2@n], b}, b = n - 2^e; n - Floor[Log2[(n + 1) n/2 + 1]] + Boole[2 b - a[b] <= e - 3]]; Table[a@ n, {n, 0, 120}] (* _Michael De Vlieger_, Mar 06 2017 *)
%o (Python)
%o import numpy as np
%o def a_typical(n):
%o '''
%o For most n, this is the value of a(n)
%o '''
%o return int(n - np.floor(np.log2( n*(n+1)/2 + 1)))
%o def a(n):
%o '''
%o The torsion index of Spin_{2n+1} and Spin_{2n+2} is 2^a(n)
%o Totaro denotes it by u(ell)
%o '''
%o if n >= 0 and n <= 18: # Table 1 in Totaro's paper
%o return [0,0,0,1,1,1,2,3,4,4,5,5,6,7,8,9,10,10,11][n];
%o maxe = int(np.floor(np.log2(n)))
%o for e in range(maxe+1):
%o b = n - 2**e
%o if 2*b - a(b) <= e - 3: # occurs for n = 8, 16, 32, 33, ...
%o return a_typical(n)+1
%o return a_typical(n)
%o # _Skip Garibaldi_, Mar 05 2017
%K easy,nonn
%O 0,7
%A Richard Borcherds (reb(AT)math.berkeley.edu), Jun 28 2004
%E Edited and a(19)-a(49) added by _Skip Garibaldi_, Mar 05 2017
%E More terms from _Michael De Vlieger_, Mar 06 2017
|