D を平方数でない有理整数で、D ≡ 0 (mod 4) とする。
判別式 D の原始的な2次形式 (a, 0, c) の個数 n を求めよう。
D = -4ac で gcd(a, c) = 1 である。

D/4 を割る素数の集合を S とする。
D/4 = Πp^(e_p) とする。ここで p は S の元を動く。

S の部分集合 E に対して Πp^(e_p) を n(E) と書く。
E が空集合のときは n(E) = 1 とする。

(D/4)/n(E) = n'(E) と書く。
gcd(n(E), n'(E)) = 1 である。

D = -4ac で gcd(a, c) = 1 となる a に対して
S の部分集合 E が存在して a = ±n(E) である。

以上から n = 2^(|S| + 1) である。