A387203 Number of additively indecomposable elements in the real quadratic field Q(sqrt(D)) up to multiplication by totally positive units, where D = A005117(n) is the n-th squarefree number.
2, 1, 1, 2, 2, 6, 3, 3, 2, 1, 5, 7, 1, 6, 2, 10, 5, 2, 8, 4, 2, 1, 7, 6, 4, 11, 2, 13, 8, 2, 7, 7, 4, 7, 20, 9, 11, 2, 9, 8, 19, 2, 6, 6, 21, 20, 1, 2, 2, 18, 9, 9, 16, 3, 21, 12, 3, 12, 2, 27, 11, 10, 18, 3, 34, 13, 17, 2, 8, 23, 12, 5, 18, 2, 22, 11, 24, 15, 26, 15, 6, 22, 27, 2, 31, 4, 2
Offset: 2
Examples
For n = 2, every additively indecomposable element in Q(sqrt(A005117(2))) = Q(sqrt(2)) is of the form u or u*(2 + sqrt(2)), for some totally positive unit u. Thus a(2) = 2. For n = 3, every additively indecomposable element in Q(sqrt(A005117(3))) = Q(sqrt(3)) is a totally positive unit, so a(3) = 1. For n = 4, every additively indecomposable element in Q(sqrt(A005117(4))) = Q(sqrt(5)) is a totally positive unit, so a(4) = 1. For n = 5, every additively indecomposable element in Q(sqrt(A005117(5))) = Q(sqrt(6)) is of the form u or u*(3 + sqrt(6)), for some totally positive unit u. Thus a(5) = 2.
Links
- Andreas Dress and Rudolf Scharlau, Indecomposable totally positive numbers in real quadratic orders, J. Number Theory 14 (1982), no. 3, 292-306.
- Se Wook Jang and Byeong Moon Kim, A refinement of the Dress-Scharlau theorem, J. Number Theory 158 (2016), 234-243.
- Vítězslav Kala, Norms of indecomposable integers in real quadratic fields, J. Number Theory 166 (2016), 193-207.
- Vítězslav Kala, Universal quadratic forms and indecomposables in number fields: a survey, Commun. Math. 31 (2023), no. 2, 81-114.
- Magdaléna Tinková and Paul Voutier, Indecomposable integers in real quadratic fields, J. Number Theory 212 (2020), 458-482.
Programs
-
SageMath
def a(n): D = [d for d in range(2*n) if Integer(d).is_squarefree()][n-1] K. = QuadraticField(D); OK = K.ring_of_integers(); ans = 0 if (D%4==1): cf, d = continued_fraction((a-1)/2), (a+1)/2 else: cf, d = continued_fraction(a), a s = len(cf.period()) ai = [1]+[c.numer() + c.denom()*d for c in cf.convergents()[:2*s+1]] ind = [ai[i]+t*ai[i+1] for i in range(0,2*s+1,2) for t in range(cf[i+1])] for i in range(len(ind)): for j in range(i): if ((ind[i]/ind[j]) in OK) and (OK(ind[i]/ind[j]).is_unit()): break else: ans += 1 return ans
Comments