This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Upper bounding the quantum space complexity for computing class group and principal ideal problem

Iu-Iong Ng Graduate School of Mathematics, Nagoya University
Abstract

In this paper, we calculate the upper bound on quantum space complexity of the quantum algorithms proposed by Biasse and Song (SODA’16) for solving class group computation and the principal ideal problem using the reductions to SS-unit group computation. We follow the approach of Barbulescu and Poulalion (AFRICACRYPT’23) and the framework given by de Boer, Ducas, and Fehr (EUROCRYPT’20) and Eisenträger, Hallgren, Kitaev, and Song (STOC’14).

1 Introduction

1.1 Number theoretical problems

The computation of number theoretical problems, or computational number theory, is important both in its own right and in terms of applications, such as developing algorithms and cryptography. The main objects in these number theoretical problems are number fields, i.e., finite extensions of the field of rational numbers \mathbb{Q}, and their ring of integers. Most quantum algorithms perform exponentially better than the best-known classical algorithms for addressing several theoretical problems or their applications. There are some problems which are believed to be hard classically but have polynomial quantum algorithms solving them, for example, integer factorisation and discrete logarithm [Sho94], and the problems for general number fields, like the unit group computation [Hal05, EHKS14], class group computation [Hal05, BS16], and the principal ideal problem [Hal07, BS16]. These quantum algorithms can be reduced to a type of problem, the hidden subgroup problems (HSP), which find the subgroup hidden by the period of a function.

In this work, we focus on the ideal class group computation and solving the principal ideal problem. The ideal class group, or simply the class group, of a number field is the finite abelian group consisting of the equivalent classes of fractional ideals of the ring of integers. One can also define the class group for an ideal of the ring of integers as the finite abelian group consisting of invertible fractional ideals of the order. Class groups appear in many significant problems in number theory, for instance, factoring large integers and determining principal ideals in a cyclotomic field. The computation of ideal class groups is also commonly used in other number theoretical tasks such as computing other objects of the number field like ray class group, relative class group, and unit group [BF14, EH10], or in problems like finding Bach’s bound on the maximum norm of the generators [Bac90]. There is also a close relation to cryptography, for example, the classical subexponential classical algorithm for integer factorisation [LP92], and some curve-based cryptography [BCL08] that include finding relations between elements in the class group.

An ideal is principal if it can be generated by a single element. The principal ideal problem (PIP) determines whether the input ideal is principal and finds a generator. Like the class group computation, PIP has applications in computing ray class groups, relative class groups, unit groups, and SS-class groups. Problems such as lattice isomorphism and matrix similarity can be efficiently reduced to deciding whether an ideal is principal [BHJ22]. Since many cryptographic schemes use principal ideals generated by a short element, PIP is also related to lattice-based cryptography. Recently, it has been shown that solving PIP in polynomial time directly induces a polynomial time attack on schemes relying on the hardness of finding the short generator of a principal ideal [CDPR16].

1.2 Quantum algorithms for number theoretical problems

Instead of the ordinary HSP, most recent quantum algorithms for number theoretical problems are based on a framework called the continuous hidden subgroup problem (CHSP), proposed by Eisenträger, Hallgren, Kitaev, and Song [EHKS14] as a generalisation of HSP to the group m\mathbb{R}^{m} for some non-constant dimension mm. As an application, [EHKS14] applied CHSP to solve the unit group problem in polynomial time by constructing an oracle that maps from a group containing the unit group to a group of ideals and then to a field of quantum states. Recently, Barbulescu and Poulalion [BP23] applied the complexity framework proposed by [BDF20] on the unit group oracle to analyse the space complexity of the unit group algorithm and propose a modified algorithm for a special case in cyclotomic fields.

Theorem 1.1 ([BP23, Corollary 37]).

Let KK be a number field of discriminant Δ\Delta and unit rank mm. For any error bound τ>0\tau>0, there exists a quantum algorithm running in time poly(m,log|Δ|,logτ)\operatorname{poly}(m,\log|\Delta|,\log\tau) using a number of qubits O(m5+m4log|Δ|)+O(mlogτ1)O(m^{5}+m^{4}\log|\Delta|)+O(m\log\tau^{-1}) which outputs a set of generators for the unit group of KK.

Other important applications on the CHSP are given by Biasse and Song [BS16], which gave a polynomial time quantum algorithms for computing class groups and solving PIP in arbitrary degree number fields by reducing the problems to a problem computing the SS-unit group. Notice that the previous works by Hallgren, the polynomial time algorithms for class group computation [Hal05] and for PIP for constant degree number fields [Hal07], utilise the HSP algorithms but not CHSP. The SS-unit group problem can be viewed as a generalisation of the unit group problem with |S||S| more parameters. Hence, [BS16] follows the way of defining the oracle for unit groups and extends it to the one for SS-unit groups, which makes it possible to reduce the SS-unit group computation to CHSP. A well-known application of the PIP algorithm is the polynomial time quantum algorithm finding the shortest vector111The length of the shortest vector is called the minimum distance or the first successive minima. in an ideal lattice (ideal-SVP) proposed by Cramer, Ducas, and Wesolowski [CDW21], which applies the PIP algorithm and a variant of class group computation as dominant parts. For the applications in cryptography, since some schemes for post-quantum cryptography rely on the hardness of PIP, [BS16] indeed broke some cryptography systems from a theoretical point of view. Nevertheless, a precise estimation of the quantum time or space complexity is essential in evaluating the threat raised by the quantum algorithm rather than only knowing it runs in polynomial time.

1.3 Our results

In this work, we follow the way in [BP23] of calculating the space complexity of the unit group algorithm, apply the framework provided by [BDF20] on the oracle for SS-unit groups, which is defined in [BS16], and derive the space complexity for the SS-unit group algorithm.

Theorem 1.2.

Let KK be a number field of discriminant Δ\Delta and unit rank mm, and let SS be a set of prime ideals such that S={𝔭1,,𝔭k}S=\{\mathfrak{p}_{1},\dots,\mathfrak{p}_{k}\}. For any error bound τ>0\tau>0, the SS-unit group computation algorithm from [BS16] (Theorem 2.4) uses

O(m5+m4log|Δ|+m4j=1klog𝒩(𝔭j))+O(mlogτ1)O(m^{5}+m^{4}\log|\Delta|+m^{4}\sum_{j=1}^{k}\log\mathcal{N}(\mathfrak{p}_{j}))+O(m\log\tau^{-1})

qubits, where 𝒩()\mathcal{N}(\cdot) is the ideal norm.

Since the unit rank mm has the same order as the degree nn, we can rewrite it in the notations as [BS16] with a maximum.

Corollary 1.3.

The SS-unit group computation algorithm from [BS16] (Theorem 2.4) uses O(n5+n4log|Δ|+n4|S|max𝔭S{log𝒩(𝔭)})+O(nlogτ1)O(n^{5}+n^{4}\log|\Delta|+n^{4}\cdot|S|\cdot\max_{\mathfrak{p}\in S}\{\log\mathcal{N}(\mathfrak{p})\})+O(n\log\tau^{-1}) qubits.

Our result can be viewed as a generalisation of the space complexity given by [BP23] by taking the set SS to be empty. Applying our result to the PIP quantum algorithm derived by [BS16], which with an input ideal 𝔞\mathfrak{a} runs in polynomial time in the parameters n,log𝒩(𝔞),logΔn,\log\mathcal{N}(\mathfrak{a}),\log\Delta, we obtain the quantum space complexity for PIP.

Corollary 1.4.

The principal ideal problem algorithm ([BS16, Theorem 1.3]) uses O(n5+n4logΔ+n4log𝒩(𝔞))O(n^{5}+n^{4}\log\Delta+n^{4}\log\mathcal{N}(\mathfrak{a})) qubits.

From this result, we expect the number of qubits used for PIP or its applications, e.g., ideal-SVP, to be large with respect to the degree of the input number field. Therefore, our results indicate that, in general, implementing these algorithms may require a large-scale quantum computer.

2 Preliminaries

2.1 Number field

We follow the definitions in [BS16]. Let KK be a number field with degree nn, i.e., n=[K:]n=[K:\mathbb{Q}]. Denote by n1n_{1} and n2n_{2} the number of real embeddings and the number of pairs of complex embeddings, respectively. Then n=n1+2n2n=n_{1}+2n_{2} and the unit rank of KK is defined as m=n1+n21m=n_{1}+n_{2}-1. The absolute norm of an element xKx\in K is defined as 𝒩(x)σσ(x)\mathcal{N}(x)\coloneqq\prod_{\sigma}\sigma(x)\in\mathbb{Q}, where σ\sigma denotes the nn embeddings.

We denote the ring of integers of KK by 𝒪\mathcal{O}. Notice that every ring of integers of a number field is a Dedekind ring, and which implies that any ideal II of 𝒪\mathcal{O} can be uniquely factored into a product of powers of prime ideals, i.e., I=𝔭v𝔭(I)I=\prod\mathfrak{p}^{v_{\mathfrak{p}}(I)} with v𝔭(I)v_{\mathfrak{p}}(I)\in\mathbb{Z} and only finitely many of them are non-zero. The norm of an ideal is defined by 𝒩(I)=|𝒪/I|\mathcal{N}(I)=|\mathcal{O}/I|, and if it is a principal ideal such that I=(α)I=(\alpha), then 𝒩(I)=𝒩(α)\mathcal{N}(I)=\mathcal{N}(\alpha). The unit group 𝒪\mathcal{O}^{*} consists of invertible elements, i.e., the units, in 𝒪\mathcal{O}. For α𝒪\alpha\in\mathcal{O}^{*}, (α)=𝒪(\alpha)=\mathcal{O}.

2.1.1 S-unit group

We now define the SS-unit group. The definition is equivalent to the one in [BS16]. We refer to [Neu99] for more details. For a Dedekind domain o\mathlcal{o}, define o(X)={fg|f,go,g0mod𝔭 for 𝔭X}\mathlcal{o}(X)=\{\frac{f}{g}\,|\,f,g\in\mathlcal{o},g\not\equiv 0\mod{\mathfrak{p}}\text{ for }\mathfrak{p}\in X\}, where XX is a set of nonzero prime ideals of o\mathlcal{o} which contains almost all prime ideals of o\mathlcal{o}. Let S={𝔭1,𝔭k}S=\{\mathfrak{p}_{1},\dots\mathfrak{p}_{k}\} be a finite set of prime ideals of 𝒪\mathcal{O}, and let XSX_{S} be the set of all prime ideals that do not belong to SS. The ring 𝒪(XS)\mathcal{O}(X_{S}) has the units called the SS-units. If S=S=\emptyset, it turns out that 𝒪(XS)=𝒪\mathcal{O}(X_{S})=\mathcal{O}, which is the special case that the SS-units are exactly the units.222For the definition for SS-units given by the valuations or places, it is the case that when S=SS=S_{\infty}, the Archimedean valuations or infinite places, then the SS-units are the units. See, for example, [Nar04]. Otherwise, the SS-units are the elements αK\alpha\in K such that (α)=𝔭1e1𝔭kek(\alpha)=\mathfrak{p}_{1}^{e_{1}}\cdots\mathfrak{p}_{k}^{e_{k}} for some e1,,eke_{1},\dots,e_{k}\in\mathbb{Z}. Then the SS-units from a multiplicative group U(S)U(S) and satisfy that for αU(S)\alpha\in U(S),

α𝒪𝔭1v𝔭1(α)𝔭kv𝔭k(α)=𝒪.\alpha\cdot\mathcal{O}\cdot\mathfrak{p}_{1}^{-v_{\mathfrak{p}_{1}}(\alpha)}\cdots\mathfrak{p}_{k}^{-v_{\mathfrak{p}_{k}}(\alpha)}=\mathcal{O}. (1)

2.1.2 EE-ideals

We denote E=n1×n2E=\mathbb{R}^{n_{1}}\times\mathbb{C}^{n_{2}} to be the field for KK under canonical embeddings, i.e., for zKz\in K, (σ1(z),,σn1+n2(z))E(\sigma_{1}(z),\dots,\sigma_{n_{1}+n_{2}}(z))\in E, which is called the conjugate vector representation. Since 𝒪\mathcal{O} has the structure as a \mathbb{Z}-lattice, its image under the embedding KEK\rightarrow E, which we denote by 𝒪¯\underline{\mathcal{O}}, inherits the lattice structure and can be identified as an n\mathbb{R}^{n}-lattice. So do the fractional ideals of 𝒪\mathcal{O} with lattice structures correspond to fractional ideals (lattices) in EE.

Definition 2.1 ([BS16, Definition 2.1]).

An EE-ideal is a lattice ΛE\Lambda\subseteq E such that x𝒪¯,xΛΛ\forall x\in\underline{\mathcal{O}},x\Lambda\subseteq\Lambda.

Here state two theorems related to EE-ideals that will be used in our proofs.

Theorem 2.2 ([Coh93, Theorem 2.4.13]).

Let LL be a \mathbb{Z}-submodule of a free module L~\tilde{L} and of the same rank. Then there exist positive integers d1,,dnd_{1},\dots,d_{n} satisfying the following conditions:

  1. 1.

    For every ii such that 1i<n1\leq i<n we have di+1|did_{i+1}|d_{i}.

  2. 2.

    [L~:L]=d1dn[\tilde{L}:L]=d_{1}\cdots d_{n}.

  3. 3.

    There exists a \mathbb{Z}-basis (v1,vn)(v_{1},\dots v_{n}) of L~\tilde{L} such that (d1v1,,dnvn)(d_{1}v_{1},\dots,d_{n}v_{n}) is a \mathbb{Z}-basis of LL.

Furthermore, the did_{i} are uniquely determined by LL and L~\tilde{L}.

Theorem 2.3 ([Coh93, Theorem 4.7.4]).

Let MM be a module with denominator 1 with respec to a given RR (i.e. MRM\subset R), and W=(wi,j)W=(w_{i,j}) its Hermite normal form (HNF) with respect to a basis α1,,αn\alpha_{1},\dots,\alpha_{n} of RR. Then the product of the wi,iw_{i,i} (i.e. the determinant of WW) is equal to the index [R:M][R:M].

2.2 The unit group computation algorithm

In this subsection, we review the ideas for the unit group algorithm from [EHKS14]. By the properties of units, one can identify 𝒪\mathcal{O}^{*} as a subgroup of G^=n1+n21×2n1×(/)n2\hat{G}=\mathbb{R}^{n_{1}+n_{2}-1}\times\mathbb{Z}_{2}^{n_{1}}\times(\mathbb{R}/\mathbb{Z})^{n_{2}}. To see this, we consider the mapping φ:G^E\varphi:\hat{G}\rightarrow E translating between the log coordinates and the conjugate vector representation.

φ:\displaystyle\varphi: (u1,,un1+n2,μ1,,μn1,θ1,,θn2)\displaystyle(u_{1},\dots,u_{n_{1}+n_{2}},\mu_{1},\dots,\mu_{n_{1}},\theta_{1},\dots,\theta_{n_{2}})
((1)μ1eu1,,(1)μn1eun1,e2πiθ1eun1+1,,e2πiθn2eun1+n2).\displaystyle\mapsto((-1)^{\mu_{1}}e^{u_{1}},\dots,(-1)^{\mu_{n_{1}}}e^{u_{n_{1}}},e^{2\pi i\theta_{1}}e^{u_{n_{1}+1}},\dots,e^{2\pi i\theta_{n_{2}}}e^{u_{n_{1}+n_{2}}}).

Since the units are the elements z𝒪z\in\mathcal{O} with 𝒩(z)=±1\mathcal{N}(z)=\pm 1, for a unit written as z=e𝒖𝒗z=e^{\boldsymbol{u}}\boldsymbol{v}, where 𝒖n1+n2\boldsymbol{u}\in\mathbb{R}^{n_{1}+n_{2}}, it satisfies that j=1n1+n2uj=0\sum_{j=1}^{n_{1}+n_{2}}u_{j}=0, and hence n1+n21\mathbb{R}^{n_{1}+n_{2}-1} is enough for the presentation of units.

The oracle function defined in [EHKS14] is a composition of two mappings:

:G^fc{E-ideals}fq{quantum states},\mathcal{F}:\hat{G}\xrightarrow{f_{c}}\{E\text{-ideals}\}\xrightarrow{f_{q}}\{\text{quantum states}\},

where fqf_{q} encodes a lattice LL into a quantum state |L|L\rangle so that it provides a canonical representation for lattices, and fcf_{c} map an element of G^\hat{G} to the principal ideal generated by it.

2.3 The SS-unit group computation algorithm

Theorem 2.4 ([BS16, Theorem 1.1]).

There is a quantum algorithm for computing the SS-unit group of a number field KK in compact representation which runs in polynomial time in the parameters n=deg(K),log(|Δ|),|S|n=\deg(K),\log(|\Delta|),|S| and max𝔭S{log(𝒩(𝔭))}\max_{\mathfrak{p}\in S}\{\log(\mathcal{N}(\mathfrak{p}))\}, where Δ\Delta is the discriminant of the ring of integers of KK.

One of the contributions by [BS16] is showing how to get an exact compact representation of the desired field element, which is processed classically. Notice that similar to the unit group, the SS-unit group can be identified as a subgroup of G=G^×|S|=n1+n21×2n1×(/)n2×|S|G=\hat{G}\times\mathbb{Z}^{|S|}=\mathbb{R}^{n_{1}+n_{2}-1}\times\mathbb{Z}_{2}^{n_{1}}\times(\mathbb{R}/\mathbb{Z})^{n_{2}}\times\mathbb{Z}^{|S|}, where |S|\mathbb{Z}^{|S|} corresponds the valuations (exponents) of the prime ideals in SS. The algorithm for Theorem 2.4 applies the CHSP framework from [EHKS14] with an HSP oracle

:Gfc{E-ideals}fq{quantum states},\mathcal{F}^{\prime}:G\xrightarrow{f_{c}^{\prime}}\{E\text{-ideals}\}\xrightarrow{f_{q}}\{\text{quantum states}\},

where fcf_{c}^{\prime} is defined as

fc(𝒚,v1,,v|S|)=φ(𝒚)𝒪¯𝔭1v1𝔭|S|v|S|,f_{c}^{\prime}(\boldsymbol{y},v_{1},\dots,v_{|S|})=\varphi(\boldsymbol{y})\cdot\underline{\mathcal{O}}\cdot\mathfrak{p}_{1}^{-v_{1}}\cdots\mathfrak{p}_{|S|}^{-v_{|S|}},

and fqf_{q} is defined as the one in [EHKS14], which can be extended from EE-integral ideals to EE-fractional ideals. By the property of SS-units, \mathcal{F}^{\prime} hides the subgroup of GG, denoted by U(S)U(S), identified as the SS-unit group. The periodicity of fcf_{c}^{\prime} on U(S)U(S) is proved by Proposition 5.1 in [BS16]. We rephrase it as follows.

Proposition 2.5 ([BS16, Proposition 5.1]).

For any (y,(vj))(y,(v_{j})) and (y,(vj))(y^{\prime},(v_{j}^{\prime})), let (u,(wj))=(y,(vj))(y,(vj))(u,(w_{j}))=(y^{\prime},(v_{j}^{\prime}))-(y,(v_{j})). Then the function fcf_{c}^{\prime} satisfies that

fc(y,(vj))=fc(y,(vj))φ(u)U(S).f_{c}^{\prime}(y^{\prime},(v_{j}^{\prime}))=f_{c}^{\prime}(y,(v_{j}))\Leftrightarrow\varphi(u)\in U(S).

In particular, v𝔭j(φ(u))=wj,j=1,,|S|v_{\mathfrak{p}_{j}}(\varphi(u))=w_{j},\forall j=1,\dots,|S| if φ(u)U(S)\varphi(u)\in U(S).

Distances.

In Section A.3 of [EHKS14], the distance between two lattices is defined as the geodesic distance on the group GLn()\operatorname{GL}_{n}(\mathbb{R}) between their bases matrices BB and BB^{\prime}. Here, to specify the distance by lattice but not its bases, we modify the definition as stated below.

Definition 2.6.
distg(L,L)inf{A2:eABL=BL,BL and BL are bases for L and L, respectively},\operatorname{dist}_{g}(L,L^{\prime})\coloneqq\inf\{\|A\|_{2}:e^{A}B_{L^{\prime}}=B_{L},B_{L}\text{ and }B_{L^{\prime}}\text{ are bases for }L\text{ and }L^{\prime}\text{, respectively}\},

where (ajk)2=j,k|ajk|2\|(a_{jk})\|_{2}=\sqrt{\sum_{j,k}|a_{jk}|^{2}}.

On the other hand, the definition of the distance for the elements in the domain in [BS16] and for the lattices are defined as follows.

Definition 2.7 ([BS16, Definition 5.2]).

Let (z,(vj)j|S|)(z,(v_{j})_{j\leq|S|}) and (z,(vj)j|S|)(z^{\prime},(v^{\prime}_{j})_{j\leq|S|}), we define their distance in G/U(S)G/U(S), distG/U(S)((z,(vj)),(z,(vj)))\operatorname{dist}_{G/U(S)}((z,(v_{j})),(z^{\prime},(v^{\prime}_{j}))), by

inf{a+j|wj|ejlog(pj) such that (z,(vj)j|S|)=(z,(vj)j|S|)+(a,(wj))+u,uU(S)},\inf\{\|a\|+\sum_{j}|w_{j}|e_{j}\log(p_{j})\text{ such that }(z^{\prime},(v^{\prime}_{j})_{j\leq|S|})=(z,(v_{j})_{j\leq|S|})+(a,(w_{j}))+u,u\in U(S)\},

where a\|a\| is the Euclidean norm of the vector corresponding to aa in n1+n2×2n1×(/)n2\mathbb{R}^{n_{1}+n_{2}}\times\mathbb{Z}_{2}^{n_{1}}\times(\mathbb{R}/\mathbb{Z})^{n_{2}}. The pj,ejp_{j},e_{j} are defined as 𝒩(𝔭j)=pjej\mathcal{N}(\mathfrak{p}_{j})=p_{j}^{e_{j}}.

Definition 2.8 ([BS16, Definition 5.3]).
dist(L,L)=inf{a+jlog(dj)+nlog(d) such that LΔ=ediag(aj)Bωdiag(dj/d)},\operatorname{dist}(L,L^{\prime})=\inf\left\{\|a\|+\sum_{j}\log(d_{j})+n\log(d)\text{ such that }L_{\Delta}=e^{\operatorname{diag}(a_{j})}B_{\omega}\operatorname{diag}(d_{j}/d)\right\},

where LΔL_{\Delta} runs over all the matrices of a basis of L/LL^{\prime}/L such that there is a matrix BωB_{\omega} of an integral basis of 𝒪\mathcal{O}, dj,d>0d_{j},d\in\mathbb{Z}_{>0}, and a\|a\| is the Euclidean norm of the vector an1+n2×2n1×(/)n2a\in\mathbb{R}^{n_{1}+n_{2}}\times\mathbb{Z}_{2}^{n_{1}}\times(\mathbb{R}/\mathbb{Z})^{n_{2}} corresponding to (aj)jnE(a_{j})_{j\leq n}\in E satisfying LΔ=ediag(aj)Bωdiag(dj/d)L_{\Delta}=e^{\operatorname{diag}(a_{j})}B_{\omega}\operatorname{diag}(d_{j}/d).

The definition for L/LL^{\prime}/L is not explicitly stated in [BS16], but it can be realised from the statements and proofs in the paper as L/L=φ(zz)𝒪¯𝔭j(vjvj)L^{\prime}/L=\varphi(z^{\prime}-z)\underline{\mathcal{O}}\prod\mathfrak{p}_{j}^{-(v_{j}^{\prime}-v_{j})}.

2.4 Complexity of the CHSP framework

The complexity of the CHSP framework from [EHKS14] is studied in [BDF20, BP23]. An HSP oracle hiding LL on m\mathbb{R}^{m} for some positive integer mm is defined as follows.

Definition 2.9 ([EHKS14, Definition 1.1]).

A function f:mHf:\mathbb{R}^{m}\rightarrow H, where HH is the set of unit vectors in some Hilbert space, is said to be an (a,r,ϵ)(a,r,\epsilon)-HSP oracle of the full-rank lattice LmL\subset\mathbb{R}^{m} if

  1. 1.

    ff is periodic on LL;

  2. 2.

    ff is aa-Lipschitz;

  3. 3.

    For all x,yx,y\in\mathbb{R} such that distm/L(x,y)r\operatorname{dist}_{\mathbb{R}^{m}/L}(x,y)\geq r, it holds that |f(x)|f(y)|ϵ|\langle f(x)|f(y)\rangle|\leq\epsilon.

Theorem 1.1 from [BP23] calculates the space complexity for the unit group algorithm from [EHKS14]. According to [BP23, Lemma 21, Lemma 34 and Corollary 37], one can obtain that O(log(1/λ1))=O(m+1mlogD)O(\log(1/\lambda_{1}^{*}))=O(m+\frac{1}{m}\log D), where λ1\lambda_{1}^{*} is the first successive minima of the dual lattice of LL, and the following corollary on the complexity of the CHSP framework applied on an HSP oracle ff.

Corollary 2.10 ([BP23]).

Given access to an HSP oracle ff, the CHSP algorithm uses

O(m3logLip(f)+m4logΔ)+O(mlogτ1)O(m^{3}\log\operatorname{Lip}(f)+m^{4}\log\Delta)+O(m\log\tau^{-1})

qubits.

In [BDF20], the algorithm of [EHKS14] is rigorously analysed (and modified) as follows. The oracle function is considered on a restricted domain 𝔻m(1qm)/m\mathbb{D}^{m}\coloneqq\left(\frac{1}{q}\mathbb{Z}^{m}\right)/\mathbb{Z}^{m} with the parameter qq relating to the space complexity, and HH is a subset of a Hilbert space of dimension 2n2^{n}. The input state is a Gaussian superposition over the representatives x𝔻repm1qm[12,12)mx\in\mathbb{D}^{m}_{\text{rep}}\coloneqq\frac{1}{q}\mathbb{Z}^{m}\cap[-\frac{1}{2},\frac{1}{2})^{m} of 𝔻m\mathbb{D}^{m} with the parameter ss\in\mathbb{R}. The algorithm has oracle access to ff which maps |x|0|x\rangle|0\rangle to |x|f(Vx)|x\rangle|f(Vx)\rangle with the parameter VV\in\mathbb{R}. The first register uses mlogqm\log q qubits, and the second register uses NN qubits. Reference [BDF20] denotes that logqQ\log q\eqqcolon Q and gives the number of qubits needed for the oracle as follows.

Theorem 2.11 ([BDF20, Theorem 2]).

There exists dual lattice sampler quantum algorithm with the error parameter η>0\eta>0 and the relative distance parameter 1/2>δ>01/2>\delta>0 which uses one quantum oracle call to ff, Qm+NQm+N qubits, where

Q=O(mlog(mlog1η))+O(log(Lip(f)ηδλ1)).Q=O\left(m\log\left(m\log\frac{1}{\eta}\right)\right)+O\left(\log\left(\frac{\operatorname{Lip}(f)}{\eta\delta\lambda_{1}^{*}}\right)\right). (2)

Later in [BP23, Corollary 37], the number of qubits for the second register is claimed that one stores the values of ff on QmQm qubits.

Lipschitz constant.

Consider the quantum encoding part, fqf_{q}, in the oracle functions for both the unit group algorithm and the SS-unit group algorithm. The Lipschitz continuity for fqf_{q} is proven as stated below.

Theorem 2.12 ([EHKS14, Theorem D.4]).

|fq(L)|fq(L)Lip(fq)distg(L,L)\||f_{q}(L)\rangle-|f_{q}(L^{\prime})\rangle\|\leq\operatorname{Lip}(f_{q})\cdot\operatorname{dist}_{g}(L,L^{\prime}).

From this result, [EHKS14] derived the value of Lip()\operatorname{Lip}(\mathcal{F}), and the order of logLip()\log\operatorname{Lip}(\mathcal{F}) is given in [BP23].

Theorem 2.13 ([BP23, Theorem 36]).

log2Lip()=O(m2+mlogΔ)\log_{2}\operatorname{Lip}(\mathcal{F})=O(m^{2}+m\log\Delta).

3 Proof for the main theorem

To prove Theorem 1.2, we need the Lipschitz constant for \mathcal{F}^{\prime}. Since the Lipschitz constants depend on the distance chosen, the approach is to calculate the Lipschitz constant for fcf_{c}^{\prime} with the distance dist(,)\operatorname{dist}(\cdot,\cdot) between the ideals (Lemma 3.2), and the relation between distances dist(,)\operatorname{dist}(\cdot,\cdot) and distg(,)\operatorname{dist}_{g}(\cdot,\cdot) (Lemma 3.1). Combined with Theorem 2.12, one can obtain an upper bound for logLip()\log\operatorname{Lip}(\mathcal{F}^{\prime}) from the upper bound for logLip()\log\operatorname{Lip}(\mathcal{F}). Therefore, we will use the following two lemmas shown at the end of this section.

Lemma 3.1.

For any EE-ideals LL and LL^{\prime}, distg(L,L)=O(n2n+2+j𝒩(𝔭j)cjn)dist(L,L)\operatorname{dist}_{g}(L,L^{\prime})=O(n^{2n+2}+\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{c_{j}n})\cdot\operatorname{dist}(L,L^{\prime}) holds for some constants cjc_{j}.

Lemma 3.2.

For any x,yGx,y\in G and L=fc(x),L=fc(y)L=f_{c}^{\prime}(x),L^{\prime}=f_{c}^{\prime}(y),

dist(L,L)=O(n)distG/U(S)(x,y)\operatorname{dist}(L,L^{\prime})=O(n)\cdot\operatorname{dist}_{G/U(S)}(x,y)

holds.

Proof for Theorem 1.2.

Combining Theorem 2.12, Lemma 3.1 and Lemma 3.2, we have that

|fq(x)|fq(y)=O(n2n+3+j𝒩(𝔭j)cjn)Lip(fq)distG/U(S)(x,y)\||f_{q}(x)\rangle-|f_{q}(y)\rangle\|=O\left(n^{2n+3}+\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{c_{j}n}\right)\cdot\operatorname{Lip}(f_{q})\cdot\operatorname{dist}_{G/U(S)}(x,y)

for some constants cjc_{j}, which implies that

Lip()=O(m2m+3+j𝒩(𝔭j)cjmLip()),\operatorname{Lip}(\mathcal{F}^{\prime})=O\left(m^{2m+3}+\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{c_{j}m}\cdot\operatorname{Lip}(\mathcal{F})\right),

and hence

logLip()=O(m2+mlogΔ+mj=1|S|log𝒩(𝔭j))\log\operatorname{Lip}(\mathcal{F}^{\prime})=O\left(m^{2}+m\log\Delta+m\sum_{j=1}^{|S|}\log\mathcal{N}(\mathfrak{p}_{j})\right)

by Theorem 2.13.

Notice that in [BS16, Theorem 5.4], it is shown that the (Lip(),r,ϵ)(\operatorname{Lip}(\mathcal{F}^{\prime}),r,\epsilon)-HSP oracle \mathcal{F}^{\prime} reduces to an (Lip(^),r^,ϵ)(\operatorname{Lip}(\hat{\mathcal{F}^{\prime}}),\hat{r},\epsilon)-HSP oracle ^\hat{\mathcal{F}^{\prime}} defined on n^\mathbb{R}^{\hat{n}} with n^=2(n1+n2)+|S|1\hat{n}=2(n_{1}+n_{2})+|S|-1, and moreover, O(logLip(^))=O(logLip())O(\log\operatorname{Lip}(\hat{\mathcal{F}^{\prime}}))=O(\log\operatorname{Lip}(\mathcal{F}^{\prime})). In order to apply the CHSP framework ([BDF20, Theorem 1]) on ^\hat{\mathcal{F}^{\prime}}, one needs that ϵ<1/4\epsilon<1/4. According to [BP23, Theorem 36], we can take tensor product c^\otimes^{c}\hat{\mathcal{F}^{\prime}} with a constant cc large enough such that the resulting oracle hides the same lattice. It is a (cLip(^),r^,ϵc)(c\operatorname{Lip}(\hat{\mathcal{F}^{\prime}}),\hat{r},\epsilon^{c})-HSP oracle satisfying that ϵc<1/4\epsilon^{c}<1/4. Hence by applying Corollary 2.10 with f=f=\mathcal{F}^{\prime}, we obtain the number of qubits

O(m5+m4logΔ+m4j=1|S|log𝒩(𝔭j))+O(mlogτ1)O(m^{5}+m^{4}\log\Delta+m^{4}\sum_{j=1}^{|S|}\log\mathcal{N}(\mathfrak{p}_{j}))+O(m\log\tau^{-1})

as claimed. ∎

Below, we give the proofs of the two lemmas.

Proof for Lemma 3.1.

Fix L=φ(z)𝒪¯𝔭jvjL=\varphi(z)\underline{\mathcal{O}}\prod\mathfrak{p}_{j}^{-v_{j}} and L=φ(z)𝒪¯𝔭jvjL^{\prime}=\varphi(z^{\prime})\underline{\mathcal{O}}\prod\mathfrak{p}_{j}^{-v_{j}^{\prime}}. Let a,dj,da,d_{j},d be ones that satisfy dist(L,L)=a+jlog(dj)+nlog(d)\operatorname{dist}(L,L^{\prime})=\|a\|+\sum_{j}\log(d_{j})+n\log(d). We first consider the special case by assuming that dj=d=1d_{j}=d=1 for all jj such that LΔ=ediag(aj)BωL_{\Delta}=e^{\operatorname{diag}(a_{j})}B_{\omega}. Therefore, without loss of generality, we can write L/L=φ(zz)𝒪¯𝔭j(vjvj)L^{\prime}/L=\varphi(z^{\prime}-z)\underline{\mathcal{O}}\prod\mathfrak{p}_{j}^{-(v_{j}^{\prime}-v_{j})}, where (vjvj)0-(v_{j}^{\prime}-v_{j})\geq 0 for all jj. It is implied that 1/φ(z)LL1/\varphi(z)L\supseteq L^{\prime}, and that there exist the HNF-basis HH for LL^{\prime} and a matrix AA satisfying eA=Hediag((z)j)e^{A}=He^{\operatorname{diag}((-z)_{j})} such that

distg(L,L)\displaystyle\operatorname{dist}_{g}(L,L^{\prime}) A2\displaystyle\leq\|A\|_{2}
n2det(H)dist(L,L)\displaystyle\leq n^{2}\cdot\det(H)\cdot\operatorname{dist}(L,L^{\prime})
n2𝒩(𝔭j)cjdist(L,L)\displaystyle\leq n^{2}\prod\mathcal{N}(\mathfrak{p}_{j})^{c_{j}}\cdot\operatorname{dist}(L,L^{\prime})

by Theorem 2.3 for some constants cjc_{j}.

Now suppose that not all of djd_{j} and dd are ones, so that jlog(dj)+nlog(d)log2\sum_{j}\log(d_{j})+n\log(d)\geq\log 2. Since LL and LL^{\prime} are fractional ideals of 𝒪\mathcal{O}, there exist α,αK\alpha,\alpha^{\prime}\in K such that they can be written as L=1αML=\frac{1}{\alpha}M and L=1αML^{\prime}=\frac{1}{\alpha^{\prime}}M^{\prime} for some integral ideals M,MM,M^{\prime} in 𝒪\mathcal{O}. Let W,WGLn()W,W^{\prime}\in\operatorname{GL}_{n}(\mathbb{Z}) denote the HNF-bases such that 1αWBω\frac{1}{\alpha}WB_{\omega} and 1αWBω\frac{1}{\alpha^{\prime}}W^{\prime}B_{\omega} are basis for LL and LL^{\prime}, respectively. Under the condition, we can obtain an upper bound for the matrix AA satisfying that eA=α/αWW1e^{A}=\alpha/\alpha^{\prime}W^{\prime}W^{-1} by Theorem 2.3 and the inequality dist(L,L)log2\operatorname{dist}(L,L^{\prime})\geq\log 2 derived from the above.

distg(L,L)\displaystyle\operatorname{dist}_{g}(L,L^{\prime}) A2\displaystyle\leq\|A\|_{2}
ααW2W12\displaystyle\leq\left\|\frac{\alpha}{\alpha^{\prime}}\right\|\|W^{\prime}\|_{2}\|W^{-1}\|_{2}
n2j𝒩(𝔭j)hjjj|wj,j|2W2n1|detW|\displaystyle\leq n^{2}\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{h_{j}}\sqrt{\sum_{j}j|w_{j,j}^{\prime}|^{2}}\cdot\frac{\|W\|_{2}^{n-1}}{|\det W|}
n2j𝒩(𝔭j)hjn(n+1)2jwj,j(n(n+1)2jwj,j)n1\displaystyle\leq n^{2}\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{h_{j}}\frac{n(n+1)}{2}\prod_{j}w_{j,j}^{\prime}\left(\frac{n(n+1)}{2}\prod_{j}w_{j,j}\right)^{n-1}
n2log2(n(n+1)2)nj𝒩(𝔭j)h~jndist(L,L)\displaystyle\leq\frac{n^{2}}{\log 2}\left(\frac{n(n+1)}{2}\right)^{n}\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{\tilde{h}_{j}n}\cdot\operatorname{dist}(L,L^{\prime})

for some constants hjh_{j} and h~j\tilde{h}_{j}.

Hence we can obtain that distg(L,L)=O(n2n+2+j𝒩(𝔭j)h~jn)dist(L,L)\operatorname{dist}_{g}(L,L^{\prime})=O(n^{2n+2}+\prod_{j}\mathcal{N}(\mathfrak{p}_{j})^{\tilde{h}_{j}n})\cdot\operatorname{dist}(L,L^{\prime}) as claimed. ∎

Proof for Lemma 3.2.

Fix L=φ(z)𝒪¯𝔭jvjL=\varphi(z)\underline{\mathcal{O}}\prod\mathfrak{p}_{j}^{v_{j}} and L=φ(z)𝒪¯𝔭jvjL^{\prime}=\varphi(z^{\prime})\underline{\mathcal{O}}\prod\mathfrak{p}_{j}^{v_{j}^{\prime}} that are the images of (z,(vj))(z,(v_{j})) and (z,(vj))(z^{\prime},(v_{j}^{\prime})) under the map fcf_{c}^{\prime}, respectively. We write

distG/U(S)((z,(vj)),(z,(vj)))=zzu+|vjvjwj|ejlogpj\operatorname{dist}_{G/U(S)}((z,(v_{j})),(z^{\prime},(v_{j}^{\prime})))=\|z-z^{\prime}-u\|+\sum|v_{j}-v_{j}^{\prime}-w_{j}|e_{j}\log p_{j}

for some (u,(wj)))U(S)(u,(w_{j})))\in U(S). Notice that if (zzu,(vjvjwj))=0(z-z^{\prime}-u,(v_{j}-v_{j}^{\prime}-w_{j}))=0, i.e., (z,(vj))(z,(v_{j})) and (z,(vj))(z^{\prime},(v_{j}^{\prime})) satisfy the condition in Proposition 2.5 that they are different by an SS-unit, then L=LL=L^{\prime}, and moreover, L/L=L/L=𝒪¯L^{\prime}/L=L/L^{\prime}=\underline{\mathcal{O}}, which implies that

dist(L,L)=distG/U(S)((z,(vj)),(z,(vj)))=0.\operatorname{dist}(L,L^{\prime})=\operatorname{dist}_{G/U(S)}((z,(v_{j})),(z^{\prime},(v_{j}^{\prime})))=0.

Now we suppose that (zzu,(vjvjwj))0(z-z^{\prime}-u,(v_{j}-v_{j}^{\prime}-w_{j}))\neq 0 and that z,z,vj,vjz,z^{\prime},v_{j},v_{j}^{\prime} satisfy the infimum, i.e., distG/U(S)((z,(vj)),(z,(vj)))=zz+|vjvj|ejlogpj\operatorname{dist}_{G/U(S)}((z,(v_{j})),(z^{\prime},(v_{j}^{\prime})))=\|z-z^{\prime}\|+\sum|v_{j}-v_{j}^{\prime}|e_{j}\log p_{j}. From the definition of the distance dist(,)\operatorname{dist}(\cdot,\cdot) among EE-ideals, we have that

dist(L,L)zz+jlogdj+nlogd\operatorname{dist}(L,L^{\prime})\leq\|z-z^{\prime}\|+\sum_{j}\log d_{j}+n\log d

for some dj,dd_{j},d\in\mathbb{Z} such that dj=𝒩(𝔭j)min{(vjvj),0}\prod d_{j}=\prod\mathcal{N}(\mathfrak{p}_{j})^{\min\{-(v_{j}^{\prime}-v_{j}),0\}} and d𝒩(𝔭j)max{(vjvj),0}d\leq\prod\mathcal{N}(\mathfrak{p}_{j})^{\max\{-(v_{j}^{\prime}-v_{j}),0\}} by Theorem 2.2. Therefore, the upper bound for the distance can be taken as

dist(L,L)zz+njcjlog𝒩(𝔭j)\operatorname{dist}(L,L^{\prime})\leq\|z-z^{\prime}\|+n\sum_{j}c_{j}\log\mathcal{N}(\mathfrak{p}_{j})

for some constants cjc_{j}. Then we can derive that

dist(L,L)\displaystyle\operatorname{dist}(L,L^{\prime}) zz+njcjejlogpj\displaystyle\leq\|z-z^{\prime}\|+n\sum_{j}c_{j}e_{j}\log p_{j}
nhjdistG/U(S)((z,(vj)),(z,(vj))),\displaystyle\leq nh_{j}\cdot\operatorname{dist}_{G/U(S)}((z,(v_{j})),(z^{\prime},(v_{j}^{\prime}))),

where hjh_{j} are constants. Hence, it follows that

dist(L,L)=O(n)distG/U(S)((z,(vj)),(z,(vj)))\operatorname{dist}(L,L^{\prime})=O(n)\cdot\operatorname{dist}_{G/U(S)}((z,(v_{j})),(z^{\prime},(v_{j}^{\prime})))

as claimed. ∎

4 Reductions to SS-unit computation

Reference [BS16] proposed two problems that can be reduced to SS-unit group computation, the class group problem, and the principal ideal problem.

4.1 Class group problem

In the class group algorithm from [BS16], the set is taken as

SCGP={𝔭: prime 𝒩(𝔭)48(log|Δ|)2},S_{\text{CGP}}=\{\mathfrak{p}:\text{ prime }\mid\mathcal{N}(\mathfrak{p})\leq 48(\log|\Delta|)^{2}\},

and the output is the Smith normal form (SNF) of the valuations of the result of SCGPS_{\text{CGP}}-unit group computation. The computation of the SNF is classical, so for the quantum space complexity, it suffices to evaluate |SCGP||S_{\text{CGP}}|. We approximate the number of rational primes smaller than 48(log|Δ|)248(\log|\Delta|)^{2} with the following theorem, which was first discovered by Gauss; see, for example, [Apo76]. Denote by π(x)\pi(x) the number of rational primes less than xx.

Theorem 4.1 (The prime number theorem).

π(x)xlogx\pi(x)\sim\frac{x}{\log x} as xx\rightarrow\infty.

Let e=logxlog2e=\left\lfloor\frac{\log x}{\log 2}\right\rfloor and pp denotes a rational prime number. Then the number of rational prime powers that are smaller than xx is

p11++pex1=xlogx+x1212logx++x1e1elogx\displaystyle\sum_{p\leq 1}1+\cdots+\sum_{p^{e}\leq x}1=\frac{x}{\log x}+\frac{x^{\frac{1}{2}}}{\frac{1}{2}\log x}+\cdots+\frac{x^{\frac{1}{e}}}{\frac{1}{e}\log x}

and has the order O(x/logx)O(x/\log x). From Corollary 1.3, we can obtain the quantum space complexity of the class group algorithm.

Corollary 4.2.

Under the Generalised Riemann Hypothesis, the class group computation algorithm ([BS16, Theorem 1.2]) uses O(n5+n4(logΔ)4/loglogΔ)+O(nlogτ1)O(n^{5}+n^{4}(\log\Delta)^{4}/\log\log\Delta)+O(n\log\tau^{-1}) qubits.

4.2 Principal ideal problem

In the algorithm reducing PIP to SS-units from [BS16], the first step, that factors the input ideal to the product of powers of prime ideals 𝔞=𝔭1a1𝔭kak\mathfrak{a}=\mathfrak{p}_{1}^{a_{1}}\cdots\mathfrak{p}_{k}^{a_{k}}, is quantum. The set SS is taken to be the prime ideals dividing the ideal, i.e., SPIP={𝔭1,,𝔭k}S_{\text{PIP}}=\{\mathfrak{p}_{1},\dots,\mathfrak{p}_{k}\}. The last step following the SPIPS_{\text{PIP}}-unit group computation is to classically solve equations on the valuations.

For the ideal factorisation, we follow the algorithm from [EH10, Algorithm 2], which shows that factoring integers is the only computationally difficult part.

Proposition 4.3 ([EH10, Lemma 4.1]).

Factoring fractional ideals of KK into a product of prime ideals of 𝒪\mathcal{O} reduces to factoring integers in polynomial time in logΔ\log\Delta and nn.

A fractional ideal II is given as d𝒪d\in\mathcal{O} and AA, the integer which makes dIdI an integral ideal and a matrix of a basis of 𝒪\mathcal{O}, respectively.

  1. 1.

    Compute the norm N=𝒩(dI)N=\mathcal{N}(dI).

  2. 2.

    Factor N=pepN=\prod p^{e_{p}} with ep>0e_{p}>0.

  3. 3.

    For each pp dividing NN, compute the prime ideals 𝔭1,,𝔭k\mathfrak{p}_{1},\dots,\mathfrak{p}_{k} above pp.

  4. 4.

    For each pp dividing NN, and each 𝔭p𝒪\mathfrak{p}\supset p\mathcal{O} from Step (3), compute v𝔭(dI)v_{\mathfrak{p}}(dI), giving the exponent of 𝔭\mathfrak{p} in the factorization of dIdI.

  5. 5.

    For each 𝔭\mathfrak{p} found with nonzero valuation, output 𝔭\mathfrak{p}, v𝔭(dI)v_{\mathfrak{p}}(dI). We have dI=𝔭v𝔭(dI)dI=\prod\mathfrak{p}^{v_{\mathfrak{p}}(dI)}.

  6. 6.

    Repeat steps (1)-(5) for the integral ideal d𝒪d\mathcal{O}, then subtract the exponents of d𝒪d\mathcal{O} from the exponents computed above for the ideal dIdI for each prime, giving the primes 𝔭\mathfrak{p} and the exponents v𝔭v_{\mathfrak{p}} such that I=𝔭v𝔭I=\prod\mathfrak{p}^{v_{\mathfrak{p}}}.

By the multiplicative rule of the ideal norms, for 𝔞=𝔭v𝔭(𝔞)\mathfrak{a}=\prod\mathfrak{p}^{v_{\mathfrak{p}(\mathfrak{a})}}, we can factor its norm into 𝒩(𝔞)=𝒩(𝔭)v𝔭(𝔞)\mathcal{N}(\mathfrak{a})=\prod\mathcal{N}(\mathfrak{p})^{v_{\mathfrak{p}(\mathfrak{a})}}. Therefore the norms of d𝔞d\mathfrak{a} and dd will be 𝒩(d𝔞)=𝒩(𝔭)max{0,v𝔭(𝔞)}\mathcal{N}(d\mathfrak{a})=\prod\mathcal{N}(\mathfrak{p})^{\max\{0,v_{\mathfrak{p}(\mathfrak{a})}\}} and 𝒩(d)=𝒩(d𝒪)=𝒩(𝔭)min{0,v𝔭(𝔞)}\mathcal{N}(d)=\mathcal{N}(d\mathcal{O})=\prod\mathcal{N}(\mathfrak{p})^{-\min\{0,v_{\mathfrak{p}(\mathfrak{a})}\}}, respectively. Hence, if we only do Step 2 in quantum, which factors positive integers 𝒩(d𝔞)\mathcal{N}(d\mathfrak{a}) and 𝒩(d𝒪)\mathcal{N}(d\mathcal{O}), then by [Sho94], the number of qubits used for ideal factorization will be O(log(𝒩(d)(𝒩(𝔞)+1)))=O(log𝒩(𝔞))O\left(\log\left(\mathcal{N}(d)\cdot(\mathcal{N}(\mathfrak{a})+1)\right)\right)=O(\log\mathcal{N}(\mathfrak{a})). By Theorem 1.2, to compute the SPIPS_{\text{PIP}}-unit group costs O(n5+n4logΔ+n4log𝒩(𝔞))+O(nlogτ1)O(n^{5}+n^{4}\log\Delta+n^{4}\log\mathcal{N}(\mathfrak{a}))+O(n\log\tau^{-1}) qubits, and hence it turns out to be the quantum space complexity for PIP as claimed in Corollary 1.4.

References

  • [Apo76] Tom M. Apostol “Introduction to analytic number theory”, Undergraduate Texts in Mathematics Springer-Verlag, New York-Heidelberg, 1976
  • [Bac90] Eric Bach “Explicit bounds for primality testing and related problems” In Math. Comp. 55.191, 1990, pp. 355–380
  • [BCL08] Reinier Bröker, Denis Charles and Kristin Lauter “Evaluating large degree isogenies and applications to pairing based cryptography” In Pairing-based cryptography—Pairing 2008 5209, Lecture Notes in Comput. Sci., 2008, pp. 100–112
  • [BDF20] Koen Boer, Léo Ducas and Serge Fehr “On the quantum complexity of the continuous hidden subgroup problem” In Advances in cryptology—EUROCRYPT 2020. Part II 12106, Lecture Notes in Comput. Sci., 2020, pp. 341–370
  • [BF14] Jean-François Biasse and Claus Fieker “Subexponential class group and unit group computation in large degree number fields” In LMS J. Comput. Math. 17, 2014, pp. 385–403
  • [BHJ22] Werner Bley, Tommy Hofmann and Henri Johnston “Computation of lattice isomorphisms and the integral matrix similarity problem” In Forum Math. Sigma 10, 2022, pp. 1–36
  • [BP23] Razvan Barbulescu and Adrien Poulalion “The special case of cyclotomic fields in quantum algorithms for unit groups” In Progress in cryptology—AFRICACRYPT 2023 14064, Lecture Notes in Comput. Sci., 2023, pp. 229–251
  • [BS16] Jean-François Biasse and Fang Song “Efficient quantum algorithms for computing class groups and solving the principal ideal problem in arbitrary degree number fields” In Proceedings of the Twenty-Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, 2016, pp. 893–902
  • [CDPR16] Ronald Cramer, Léo Ducas, Chris Peikert and Oded Regev “Recovering short generators of principal ideals in cyclotomic rings” In Advances in cryptology—EUROCRYPT 2016. Part II 9666, Lecture Notes in Comput. Sci., 2016, pp. 559–585
  • [CDW21] Ronald Cramer, Léo Ducas and Benjamin Wesolowski “Mildly Short Vectors in Cyclotomic Ideal Lattices in Quantum Polynomial Time” In J. ACM 68.2, 2021
  • [Coh93] Henri Cohen “A course in computational algebraic number theory” 138, Graduate Texts in Mathematics Springer-Verlag, Berlin, 1993
  • [EH10] Kirsten Eisenträger and Sean Hallgren “Algorithms for ray class groups and Hilbert class fields” In Proceedings of the Twenty-First Annual ACM-SIAM Symposium on Discrete Algorithms, 2010, pp. 471–483
  • [EHKS14] Kirsten Eisenträger, Sean Hallgren, Alexei Kitaev and Fang Song “A quantum algorithm for computing the unit group of an arbitrary degree number field” In STOC’14—Proceedings of the 2014 ACM Symposium on Theory of Computing, 2014, pp. 293–302
  • [Hal05] Sean Hallgren “Fast quantum algorithms for computing the unit group and class group of a number field” In STOC’05: Proceedings of the 37th Annual ACM Symposium on Theory of Computing, 2005, pp. 468–474
  • [Hal07] Sean Hallgren “Polynomial-time quantum algorithms for Pell’s equation and the principal ideal problem” In J. ACM 54.1, 2007, pp. Art. 4\bibrangessep19
  • [LP92] H.. Lenstra and Carl Pomerance “A rigorous time bound for factoring integers” In J. Amer. Math. Soc. 5.3, 1992, pp. 483–516
  • [Nar04] Władysław Narkiewicz “Elementary and analytic theory of algebraic numbers”, Springer Monographs in Mathematics Springer-Verlag, Berlin, 2004
  • [Neu99] Jürgen Neukirch “Algebraic number theory” 322, Grundlehren der mathematischen Wissenschaften [Fundamental Principles of Mathematical Sciences], 1999
  • [Sho94] Peter W. Shor “Algorithms for quantum computation: discrete logarithms and factoring” In 35th Annual Symposium on Foundations of Computer Science (Santa Fe, NM, 1994), 1994, pp. 124–134