Tuesday, May 29, 2018

Methods to compute the class number

The class number is an important term from algebraic number theory. It specifies the order of the class group of an algebraic number field K and can be interpreted as the number of different ways to factorize an element of K into prime elements. If the class number is equal to 1, the K is called a unique factorization domain, e.g. the integers Z. It is long known that for imaginary quadratic fields the class number is 1 only for the values: K=Q(d),d{1,2,3,7,11,19,43,67,163}
There are a surprisingly large number of ways to compute the class number of a quadratic field, which i want to show you next.


Different ways to compute the class number.


1► As already written above, the class number is the order of the ideal class group of an algebraic field Q(d), for a squarefree integer d, with discriminant Δ. It is Δ=d if d2,3(mod4) or Δ=4d if d(mod4). The class group is isomorphic to the class group clq of integral binary quadratic forms with discriminant Δ.

2► If Δ>4 one could use Dirichlet's class number formula.
h(Δ)=ΔπpP(1(Δp)p1)1
It contains an infinite product, which depends on the legendre symbol values (Δp). Unfortunately, the approximation by computing partial products is very slow.

3► There is another way to write Dirichlet's class number formula for Δ>4:
h(Δ)=1ΔΔ1k=1(Δk)k
where (Δk) is the Kronecker symbol. If Δ is a prime number of the form Δ3(mod4) and g is a primitive root in FΔ then this could also be written as:
h(Δ)=1Δ((Δ1)/2k=1(g2k(modΔ))(Δ1)/2k=1(g2k1(modΔ)))
It is the sum between the group elements with even exponent and those with odd exponents, For primitive roots this is simply the difference between the sum of quadratic residues and non-residues. Similar formula can be derived for Δ1(mod4).

4► There is even yet another way to write Dirichlet's class number formula for Δ>4: If Δ is a prime number of the form Δ3(mod4)
h(Δ)=(Δ1)/2k=1(kΔ)

A similar formula can be derived for Δ1(mod4): If g is a generator of a subgroup of size Δ1 in F4Δ and g is also primitive in FΔ then:
h(Δ)=12ΔΔ1j=1(1)j(gj(mod4Δ))(mod4Δ)


5►  If Δ is a prime number of the form Δ3(mod4), then the next way to compute the class number is to use the coefficients ci of the base-b representation of the integer (b(Δ1)/21)/Δ=(Δ3)/2i=0cibi
, whereof b has order (Δ1)/2 in FΔ. Then it is:
h(Δ)=Δ122(Δ3)/2i=0cib1


6► You can use Continued Fractions. It is assumed that around 80% (i think due to Shanks, but i am not sure) of all class numbers of real quadratic fields are equal to 1. If this is the case, e.g. h(Δ)=1, then:
If Δ=[b0;¯b1,b2,,bm]
whereof the overlined part is the period, then
h(Δ)=13mk=1(bk3)


7► Let L(n) be the following set L(n)={(a,b,c)Z3|a2+b2+c2=n}
then if n is a squarefree integer >3

  1. If n1,2(mod4) then |L(n)|=12H(n)
  2. If n3(mod8) then |L(n)|=24H(n)
  3. If n7(mod8) then |L(n)|=0
where H(n) is the Hurwitz-Kronecker class number, which is closely related to the class number.

Complexity and Factoring. The complexity to compute the class number is exponential and it is assumed that the problem is NP-complete, since you could verify in polynomial time if the answer is correct (simply check if it is the order of the class group). Computing the class number is also related to computing the factorization of an integer. Just assume you have an oracle, that computes for any given integer n the class number h(n) in O(1). Then one could find two non-trivial factors of n via the work of Lenstra [1]. He utilizes that by knowing h(n) you can find a binary quadratic form with discriminant n that is of order 2. E.g. just compute for a generator g the value gh/2. It is known that forms of order 2, called ambiguous forms, have the the form
((p+q)/4,(pq)/2,(p+q)/4) if 3pq

or
(p,p,(p+q)/4) if p<q3p

and hence could be used to factor n.

What about the other direction? So the computation of the class number yields an method to factorize integers. But what if the factorization of the discriminante is known, does this lead to a more efficient why to compute the class number? As far as i can see, this would not contradict any known obstacles or solve some major open problems. I also asked this question on StackExchange but didn't got an answer yet.

For example, for n=pq and p,q primes of the form 7+8k, then you could establish the equation: For any integers u,v,x,yZ it holds:

uvn(q+p)+54+uyh(q)(1(pq))+vxh(p)(1(qp))+xyh(pq)2=(u+x)((v+y)S++n14+(vy)S+n14)+(ux)((vy)Sn14+(v+y)S+n14)
whereof e.g. Ss1s2n14 denotes the number of integers mi in the intervall [1,(n1)/4] that have (mip)=s1 and (miq)=s2.

[1] A.K. Lenstra, Fast and rigorous factorization under the generalized Riemann hypothesis, Indagationes Mathematicae (Proceedings), Volume 91, Issue 4, 19 December 1988, Pages 443-454

[2] Quadratic fields and factorization, H.W. Lenstra jr. and R. Tijdeman (eds.): “Computational Methods in Number Theory,”, MC-Tracts 154/155, Amsterdam 1982, pp. 235-286 

No comments:

Post a Comment