+ All Categories
Home > Documents > Improving the Berlekamp algorithm for binomials xn - a€¦ · Ryuichi Harasawa, Yutaka Sueyoshi,...

Improving the Berlekamp algorithm for binomials xn - a€¦ · Ryuichi Harasawa, Yutaka Sueyoshi,...

Date post: 21-Oct-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
34
Overview of polynomial factorization The purpose of this talk Proposed method Comparison Future works Improving the Berlekamp algorithm for binomials x n a Ryuichi Harasawa Yutaka Sueyoshi Aichi Kudo Nagasaki University July 19, 2012 Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials x n a
Transcript
  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Improving the Berlekamp algorithm for binomialsxn − a

    Ryuichi Harasawa Yutaka Sueyoshi Aichi Kudo

    Nagasaki University

    July 19, 2012

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    1 Overview of polynomial factorization

    2 The purpose of this talk

    3 Proposed methodIdeaExampleProcedure after applying the proposed mehod

    4 ComparisonTheoretical comparisonExperimental comparison

    5 Future works

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    1. Polynomial factorization over finite fields

    Polynomial factorization

    Input: f (x) ∈ Fq[x]Output: pair(s) ( f i(x), ei) with f (x) =

    ∏f i(x)ei

    ( f i(x): irreducible polynomial)

    Application to cryptography

    Construction of extension field:f (x): irre. poly./Fq of degree n⇒ Fqn = Fq[x]/( f (x))Index calculus for solving DLP (on Jacobian group):Check if f (x) is B-smooth (B(⊂ Fq[x]): factor base).If so, the factorization of f (x) gives a relation to solve DLP.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    2. Procedure of factorization

    We first perform the square-free factorization.After the procedure, we factor square-free polynomial(s).

    f (x): square-freedef⇐⇒ f (x) has no repeated factors

    (i.e., g(x) | f (x) (deg(g(x)) ≥ 1) ⇒ g(x)2 - f (x))

    Square-free factorization

    Input: f (x) ∈ Fq[x]Output: gi(x)’s: square-free (possibly gi(x) = 1)

    with f (x) =∏

    i≥1 gi(x)i

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    3. Overview of square-free factorization

    p = charFq.f (x) =

    ∏i gi(x)i , gi(x): (unknown) square-free poly.

    f ′(x): the formal derivation of f (x).

    Key facts

    f ′(x) = 0 ⇒ f (x) = g(x)p (∃g(x) ∈ Fq[x]),more precisely f (x) =

    ∑j a jpx

    jp = (∑

    j a(1/p)j

    x j)p

    gcd(f (x), f ′(x)) =∏

    p- i gi(x)i−1 ·∏

    p|i gi(x)i

    f (x)/ gcd(f (x), f ′(x)) =∏

    p- i gi(x): square-free

    We compute gi(x)’s using the facts repeatedly.Especially, gcd(f (x), f ′(x)) = 1 =⇒ f (x): square-free.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    4. Factorization of square-free polynomial

    f (x): square-free polynomial over FqTwo popular methods to factor square-free poly.:

    1. Berlekamp method:Using the kernel of the linear mapping, πq − id,defined by g(x) 7→ (g(x)q − g(x)) mod f (x).

    2. Cantor/Zassenhaus method:Using Distinct-degree & Equal-degree factorizations.

    We focus on the Berlekamp method in this talk.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    5. Berlekamp algorithm

    Assume that q is odd.

    f (x) ∈ Fq[x]: square-free polynomial.We consider the linear mapping πq − id from Fq[x]/( f (x))to itself defined by g(x) 7→ (g(x)q − g(x)) mod f (x).

    Step 1: Compute the kernel of πq − id, say N .Step 2: For a random element g(x) ∈ N ,

    we find non-trivial factors of f (x) by computinggcd(f (x), g(x)) and gcd(f (x), g(x)(q−1)/2 − 1).

    We note that #(irre. factor(s) of f (x)) = dimFqN

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    6. The purpose of this talk

    Main theme: The computation of the kernelNfor f (x) = xn − a deined over Fq with p = charFq.

    Previous work: a = 1⇒ Eugene Prange (1959)We extend the method to general a.

    Assumption on f (x) = xn − a:a , 0 (otherwise, obvious)p - n (otherwise, f (x) = (xn/p − a1/p)p

    and f (x) ← xn/p − a1/p).⇒ f (x): square-free (since gcd(f (x), f ′(x)) = 1)

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    7. The kernel N of πq − id

    f (x): square-free poly. of degree n to be factored.

    Q = (qi j )0≤i, j≤n−1: n × n matrix with(x j)q ≡ ∑0≤i≤n−1 qi j xi (mod f (x)).

    ⇓ πq − id : g(x) 7→ (g(x)q − g(x)) mod f (x)

    Q− I n: the matrix representation of πq − id(I n: n × n identity matrix)

    ⇒N : the solution space of (Q− I n)X = 0

    In order to get N ,I think we generally apply the Gaussian elimination.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    8. The computation of N for xn − a (1/2)

    Let p = charFq, f (x) = xn − a (p - n, a , 0).

    Notation

    For q mod n , 0, ⟨q⟩ := {qi mod n | i = 0, 1, 2, . . .}ᾱ := {αqi mod n | i = 0, 1, 2, . . .} : the orbit containingα ∈ Z/nZ with respect to ⟨q⟩. (Let ℓ = #ᾱ.)αi := αqi mod n (note that αqℓ mod n = α(= α0))

    Tᾱ := {β0xα0 + β1xα1 + · · · + βℓ−1xαℓ−1 | βi ∈ Fq}for ᾱ = {α0, α1, . . . , αℓ−1}

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    9. The computation of N for xn − a (2/2)

    Then we have

    Fq[x]/( f (x)) =⊕ᾱ Tᾱ

    (ᾱ runs over all orbits in Z/nZ with respect to ⟨q⟩)πq(Tᾱ) ⊆ Tᾱ (= id(Tᾱ)) (i.e., Tᾱ : πq-invariant).N = Ker(πq − id).

    =⇒ N =⊕ᾱ(N ∩ Tᾱ)

    That is, in order to get the karnelN of πq − id,it is sufficient to computeN ∩ Tᾱ for each ᾱ.⇒We restrict the domain of πq − id to the subspace Tᾱ.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    10. The computation of N ∩ Tᾱ (1/2)

    For h(x) = β0xα0 + β1xα1 + · · · + βℓ−1xαℓ−1 in Tᾱ,we consider the equation (πq − id)(h(x)) = 0(equivalently, h(x)q ≡ h(x) (mod f (x))).

    βℓ−1 = aγℓ−2βℓ−2 ← coefficient of xℓ−1βℓ−2 = aγℓ−3βℓ−3 ← coefficient of xℓ−2

    ......

    β0 = aγℓ−1βℓ−1 ← constant term,where qαi = γi n + αi+1 mod ℓ .

    ⇒ β0 = aγℓ−1βℓ−1 = aγℓ−1(aγℓ−2βℓ−2)= · · ·= aγ0+γ1+···+γℓ−1β0

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    11. The computation of N ∩ Tᾱ (2/2)

    We get the relation β0 = aγ0+γ1+···+γℓ−1β0, which implies

    N ∩ Tᾱ

    =

    {β(xα0 + aγ0 xα1 + aγ0+γ1 xα2 + · · · + aγ0+γ1+···+γℓ−2 xαℓ−1) | β ∈ Fq}

    (if aγ0+γ1+···+γℓ−1 = 1),{0} (otherwise).

    Complexity

    O˜(n log q) bit operations + O(n log q) operations in Fq(cf. O(n2.376) operations in Fq for the improved Gaussianelimination using the Coppersmith-Winograd fast matrixmultiplication).

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    12. Example: f (x) = x22 − 2 defined over F5 (1/5)

    We consider q = 5, f (x) = x22 − 2 (n = 22, a = 2).⇒ Z/22Z is decomposed into six orbits with respect to ⟨5⟩:0̄ = {0}, 1̄ = {1, 5, 3, 15, 9}, 2̄ = {2, 10, 6, 8, 18},4̄ = {4, 20, 12, 16, 14}, 7̄ = {7, 13, 21, 17, 19},1̄1 = {11}.

    For each orbit ᾱ,we compute the subspaceN by consideringN ∩ Tᾱ(recall thatN is the kernel of the mappingg(x) 7→ (g(x)q − g(x)) mod f (x)).

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    13. Example: f (x) = x22 − 2 defined over F5 (2/5)

    [The case of 0̄ = {0} (ℓ = 1)]

    (q · αi = γi · n + αi+1)5 · α0 = 5 · 0 = 0 · 22+ 0 → γ0 = 0, α1 = 0 = α0

    So, we have aγ0 = 20 = 1 in F5.

    ⇒ N ∩ T0̄ = {βxα0 | β ∈ F5}= {β · 1 | β ∈ F5}= F5

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    14. Example: f (x) = x22 − 2 defined over F5 (3/5)

    [The case of 1̄ = {1, 5, 3, 15, 9} (ℓ = 5)]

    (q · αi = γi · n + αi+1)5 · α0 = 5 · 1 = 0 · 22+ 5 → γ0 = 0, α1 = 55 · α1 = 5 · 5 = 1 · 22+ 3 → γ1 = 1, α2 = 35 · α2 = 5 · 3 = 0 · 22+ 15 → γ2 = 0, α3 = 155 · α3 = 5 · 15 = 3 · 22+ 9 → γ3 = 3, α4 = 95 · α4 = 5 · 9 = 2 · 22+ 1 → γ4 = 2, α5 = 1 = α0

    So, we haveaγ0+γ1+γ2+γ3+γ4 = 20+1+0+3+2 = 26 = −1 , 1 in F5.⇒N ∩ T1̄ = {0}

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    15. Example: f (x) = x22 − 2 defined over F5 (4/5)

    [The case of 2̄ = {2, 10, 6, 8, 18} (ℓ = 5)]

    5 · α0 = 5 · 2 = 0 · 22+ 10 → γ0 = 0, α1 = 105 · α1 = 5 · 10 = 2 · 22+ 6 → γ1 = 2, α2 = 65 · α2 = 5 · 6 = 1 · 22+ 8 → γ2 = 1, α3 = 85 · α3 = 5 · 8 = 1 · 22+ 18 → γ3 = 1, α4 = 185 · α4 = 5 · 18 = 4 · 22+ 2 → γ4 = 4, α5 = 2 = α0

    So, we haveaγ0+γ1+γ2+γ3+γ4 = 20+2+1+1+4 = 28 = 1 in F5.

    ⇒ N ∩ T2̄ = {β(xα0 + aγ0 xα1 + aγ0+γ1 xα2

    + aγ0+γ1+γ2 xα3 + aγ0+γ1+γ2+γ3 xα4) | β ∈ F5}= {β(x2 + x10 + 4x6 + 3x8 + x18) | β ∈ F5}

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    16. Example: f (x) = x22 − 2 defined over F5 (5/5)

    Performing the same procedure as the previous onefor the remainder orbits, we obtain

    N ∩ T4̄ = {β(x20 + 4x16 + 2x14 + x12 + x4) | β ∈ F5}N ∩ T7̄ = N ∩ T11 = {0}.

    From the computations above, we obtain the results:

    {1, x18 + x10 + 3x8 + 4x6 + x2, x20 + 4x16 + 2x14 + x12 + x4}forms an F5-basis of N ;#(irre. factors of f (x)) = dimF5N = 3.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    17. Getting factors using the kernel N (1/2)

    We assume that dimFqN ≥ 2 and that q is odd.(dimFqN = 1⇒ f (x): irreducible)g(x): random element inN⇒ g(x) · (g(x)(q−1)/2 − 1) · (g(x)(q−1)/2 + 1)= g(x)q − g(x) ≡ 0 (mod f (x))

    If gcd(f (x), g(x)) , 1, f (x) or gcd(f (x), g(x)(q−1)/2 − 1) , 1, f (x)(or both), then we get a non-trivial factor of f (x).

    Repeatedly we perform this procedureuntil #(our getting factors of f (x))= dimFqN .

    Complexity

    O˜(n log q) operations in Fq using a fast polynomial operations.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    IdeaExampleProcedure after applying the proposed mehod

    18. Getting factors using the kernel N (2/2)

    Note that, for g(x) ∈ N with gcd(f (x), g(x)) = 1,Prob{getting non-trivial factors} = 1− (12)

    dimFqN−1 ≥ 12

    Memo: f (x) =∏

    1≤i≤k f i(x): factorization of f (x).

    Fq[x]/( f (x)) ≃ Fq[x]/( f1(x)) × · · · × Fq[x]/( f k(x))∪ ∪N ≃ {(a1, . . . , ak) | ai ∈ Fq}

    For each i, we have g(x)(q−1)/2 ≡ ±1 mod f i(x).”not getting a non-trivial factor of f (x)⇐⇒ g(x)(q−1)/2 ↔ (1, 1, . . . , 1) or (−1,−1, . . . ,−1)”

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    19. Theoretical cost (1/2)the Berlekamp method (original and ours)

    11.522.533.5

    0 0.5 1 1.5 2 2.5yvaluewiththerunningtimeO~(ny )

    x value with log2 q = nxy = x+ 1y = 2:376proposed methodoriginal Berlekamp

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    20. Theoretical cost (2/2)Ours and the (improved) Cantor-Zassenhause methods

    11.522.533.544.5

    0 0.5 1 1.5 2 2.5yvaluewiththerunningtimeO~(ny )

    x value with log2 q = nxy = x+ 1y = 2y = 0:416x+ 1:806y = x+ 2y = x+ 2proposed methodGathen-ShoupKaltofen-ShoupCantor-Zassenhaus

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    21. Experimental results (1/9)

    For f (x) = xn − a over Fq, we implement the original/ourBerlekamp methods and the Cantor-Zassenhaus method with noimprovement.

    2.8 GHz Pentium G6950 with 1.6 GB RAM;

    The language is C with gcc 4.1.2 compiler;

    We do not use any mathematical library;

    We apply classical methods for polynomial operations;

    We do not perform the square-free factorization.⇐We assume binomials to be square-free (i.e., charFq - n).

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    22. Experimental results (2/9)

    Berlekamp method (original / ours)

    For the computation of the kernelN of the mapg(x) 7→ g(x)p − g(x) mod f (x),

    original: apply the Gaussian elimination.ours: apply orbits in Z/nZ w.r.t. ⟨q⟩.

    After getting the kernelN , the both methods perform thesame procedure:g(x) ∈ N ⇒ gcd(f (x), g(x)) and gcd(g(x)(q−1)/2 − 1, f (x))

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    23. Experimental results (3/9)

    Cantor-Zassenhaus method

    Distinct-degree factorization: separate irre. factors of differingdegree

    g1(x) ← gcd(f (x), xq − x):the product of irre. factors of degree 1;g2(x) ← gcd(f (x)/g1(x), xq

    2 − x):the product of irre. factors of degree 2;g3(x) ← gcd(f (x)/(g1(x)g2(x)), xq

    3 − x):the product of irre. factors of degree 3;And so on.

    Equal-degree factorization: separate irre. factors of samedegree

    h(x): a random polynomial⇒ gcd(h(x), gi(x)) and gcd(h(x)(q

    i−1)/2, gi(x))(deggi(x) = iℓ ⇒ Fq[x]/(gi(x)) ≃ ⊕1≤ j≤ℓ Fqi ).

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    24. Experimental results (4/9)Search test polynomials (1/2)

    For f (x) = xn − a over Fq, the factorization pattern depends on thenumber of roots of xn − a in Fqi (i ≥ 1), say δi . Then we see

    δi =

    {di (a(q

    i−1)/di = 1 with di = gcd(qi − 1, n)),0 (otherwise).

    ⇒ the values δi ’s is determined by q, n and the multiplicative orderof a (rather than the value of a).

    Based on the facts above, we choose test polynomials to befactord.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    25. Experimental results (5/9)Search test polynomials (2/2)

    Test polynomial(s) xn − a over Fp with p = 2053:⇒ p− 1 = 2052= 22 × 32 × 19

    a = 29⇒ #⟨a⟩ = 171= 32 × 19.n = 1083⇒ gcd(n, p− 1) > 1 and #⟨a⟩ - p−1gcd(n,p−1)There exists no linear factor in f (x) in the case.

    n = 1091⇒ gcd(n, p− 1) = 1n = 1110⇒ gcd(n, p− 1) > 1 and #⟨a⟩ | p−1gcd(n,p−1)There exist some linear factors in f (x) in the two cases above.

    a = 1, n = 4104(= 2(p− 1))⇐ To characterize the Berlekamp method

    and Cantor-Zassenhaus method

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    26. Experimental results (6/9)

    Running time for factorning x1083− 29 over F2053mehods running time (s)

    Berlekamp original 0.075ours 0.005

    (original) Cantor-Zassenhaus 92.368

    the pattern of factorization3 irreducible factors of degree 361.

    (ours)≪ (original) for the Berlekamp method.⇐ (procedure after gettingN )≪ (procedure for gettingN ).(Berlekamp)≪ (Cantor-Zassenhause)⇐ x1083− 29 has irre. factors of large degree.

    ((procedure for gettingN ))≪ (distict-degree factorization))

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    27. Experimental results (7/9)

    Running time for factorning x1091− 29 over F2053mehods running time (s)

    Berlekamp original 0.309ours 0.235

    (original) Cantor-Zassenhaus 223.654the pattern of factorization

    3 irreducible factors. More precisely,1 linear factor;2 irreducible factors of degree 545.

    (ours) ≈ (original) for the Berlekamp method.⇐ (procedure for gettingN )≪ (procedure after gettingN ).(Berlekamp)≪ (Cantor-Zassenhause)⇐ x1091− 29 has irre. factors of large degree.

    ((procedure for gettingN ))≪ (distict-degree factorization))Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    28. Experimental results (8/9)

    Running time for factorning x1110− 29 over F2053mehods running time (s)

    Berlekamp original 0.546ours 0.474

    (original) Cantor-Zassenhaus 14.483the pattern of factorization

    42 irreducible factors. More precisely,6 linear factors;6 irreducible factors of degree 4;30 irreducible factors of degree 36.

    (ours) ≈ (original) for the Berlekamp method.⇐ (procedure for gettingN )≪ (procedure after gettingN ).(Berlekamp) < (Cantor-Zassenhause) (, not≪)⇐ each irre. factor of it does not have so large degree.

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical comparisonExperimental comparison

    29. Experimental results (9/9)

    Running time for factorning x4104− 1 over F2053mehods running time (s)

    Berlekamp original 11.024ours 27.871

    (original) Cantor-Zassenhaus 2.362the pattern of factorization

    3078 irreducible factors. More precisely,2052 (= p− 1) linear factors;1026 (= p−12 ) irreducible factors of degree 2.

    (Cantor-Zassenhause) < (Berlekamp)⇐ each irre. factor of x4104− 1 has small degree.(original) < (ours) for the Berlekamp method.⇐ ? (I guess I am not good at programing: It is possible not to

    omit some oblivious procedure(s), for example 1× α.)Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    30. Future works

    Analysis of other methods for binomials;(How much is the complexity reduced ?)

    Combination with other methods;(e.g., improved Cantor-Zassenhaus method)

    Extension to more general cases;(e.g., trinomial polynomials and large size of base field)

    Does there exist a deterministic polynomial factorizationalgorithm ?

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Thank you!

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

  • Overview of polynomial factorizationThe purpose of this talk

    Proposed methodComparison

    Future works

    Theoretical cost

    11.522.533.544.5

    0 0.5 1 1.5 2 2.5yvaluewiththerunningtimeO~(ny )

    x value with log2 q = nxy = x+ 1y = 2:376y = 2y = 0:416x+ 1:806y = x+ 2proposed methodBerlekamp [4℄Gathen-Shoup [9℄Kaltofen-Shoup [13℄Cantor-Zassenhaus [6℄

    Ryuichi Harasawa , Yutaka Sueyoshi, Aichi Kudo Improving the Berlekamp algorithm for binomials xn − a

    Overview of polynomial factorizationThe purpose of this talkProposed methodIdeaExampleProcedure after applying the proposed mehod

    ComparisonTheoretical comparisonExperimental comparison

    Future works


Recommended