8. Factoring polynomials over finite fields CS-E4500 Advanced Course - - PowerPoint PPT Presentation

8 factoring polynomials over finite fields
SMART_READER_LITE
LIVE PREVIEW

8. Factoring polynomials over finite fields CS-E4500 Advanced Course - - PowerPoint PPT Presentation

8. Factoring polynomials over finite fields CS-E4500 Advanced Course on Algorithms Spring 2018 Peteri Kaski Department of Computer Science Aalto University Lecture schedule Tue 16 Jan: 1. Polynomials and integers Tue 23 Jan: 2. The fast


slide-1
SLIDE 1
  • 8. Factoring polynomials over finite fields

CS-E4500 Advanced Course on Algorithms Spring 2018 Peteri Kaski Department of Computer Science Aalto University

slide-2
SLIDE 2

Lecture schedule

Tue 16 Jan:

  • 1. Polynomials and integers

Tue 23 Jan:

  • 2. The fast Fourier transform and fast multiplication

Tue 30 Jan:

  • 3. Qotient and remainder

Tue 6 Feb:

  • 4. Batch evaluation and interpolation

Tue 13 Feb: Exam week — no lecture Tue 20 Feb:

  • 5. Extended Euclidean algorithm and interpolation from erroneous data

Tue 27 Feb:

  • 6. Identity testing and probabilistically checkable proofs

Tue 6 Mar:

  • 7. Finite fields

Tue 13 Mar:

  • 8. Factoring polynomials over finite fields

Tue 20 Mar:

  • 9. Factoring integers
slide-3
SLIDE 3

Exam week

L5 Q5 Q6 L7 T4 CS-E4500 Advanced Course in Algorithms (5 ECTS, III–IV, Spring 2018) L1 Q1 L2 Q2 T1 T2 L3 Q3 L4 Q4 T3 L6 T5 Q7 T6 L8 Q8 T7 L9 Q9 T8 T9 L = Lecture; hall T5, Tue 12–14 Q = Q & A session; hall T5, Thu 12–14 D = Problem set deadline; Sun 20:00 T = Tutorial (model solutions); hall T6, Mon 16–18 D1 D2 D3 D4 D5 D6 D7 D8 D9

slide-4
SLIDE 4

Recap of last week

◮ Prime fields (the integers modulo a prime) ◮ Irreducible polynomial, existence of irreducible polynomials ◮ Fermat’s Litle Theorem and its generalization (exercise) ◮ Finite fields of prime power order via irreducible polynomials (exercise) ◮ The characteristic of a ring; fields have either zero or prime characteristic ◮ Extension field, subfield, degree of an extension ◮ Algebraic and transcendental elements of a field extension;

the minimal polynomial of an algebraic element

◮ Multiplicative order of a nonzero element in a finite field;

the multiplicative group of a finite field is cyclic

◮ Formal derivative of a polynomial with coefficients in a field (exercise)

slide-5
SLIDE 5

Motivation for this and next week

◮ A tantalizing case where the connection between polynomials and integers apparently

breaks down occurs with factoring

◮ Namely, it is known how to efficiently factor a given univariate polynomial over a

finite field into its irreducible components, whereas no such algorithms are known for factoring a given integer into its prime factors

◮ This week we develop one efficient factoring algorithm for univariate polynomials over

a finite field

◮ The best known algorithms for factoring integers run in time that scales moderately

exponentially in the number of digits in the input; next week we study one such algorithm

slide-6
SLIDE 6

Factoring polynomials over finite fields

(von zur Gathen and Gerhard [9], Sections 14.1–3, 14.6)

slide-7
SLIDE 7

Finite fields

(Lidl and Niedderreiter [16])

slide-8
SLIDE 8

Key content for Lecture 8

◮ Factoring a monic polynomial into monic irreducible polynomials over a finite

field

◮ Square-and-multiply algorithm for modular exponentiation (exercise) ◮ The squarefree part of a polynomial

◮ Computing the squarefree part using the formal derivative, greatest common divisors,

and modular exponentiation (exercise)

◮ The distinct-degree factorization of a squarefree polynomial

◮ Computing the distinct-degree factorization using extended Fermat’s litle theorem,

modular exponentiation, and greatest common divisors

◮ The equal-degree factorization of a polynomial with known identical degrees for

the irreducible factors

◮ Cantor–Zassenhaus algorithm and random spliting polynomials

(analysis: exercise)

slide-9
SLIDE 9

Irreducible polynomial

◮ Let q be a prime power ◮ Let Fq be the finite field with q elements ◮ We say that a polynomial f ∈ Fq[x] is irreducible if f Fq and for any g, h ∈ Fq[x]

with f = gh we have g ∈ Fq or h ∈ Fq

◮ Let us also recall that we say that f ∈ Fq[x] is monic if its leading coefficient is 1

slide-10
SLIDE 10

Factorization into irreducible polynomials

◮ Let f ∈ Fq[x] ◮ The factorization of f consists of distinct monic irreducible polynomials

f1, f2, . . . , fr ∈ Fq[x] and integers d1, d2, . . . , dr ∈ Z≥1 such that f = lc(f )f d1

1 f d2 2 · · · f dr r ◮ The factorization of f is unique up to ordering of the irreducible factors ◮ The polynomial f is squarefree if d1 = d2 = · · · = dr = 1

slide-11
SLIDE 11

Example: Factorization into irreducible polynomials

◮ The factorization of

f = 2 + 2x + x2 + 2x4 + 2x5 + 2x6 + 2x8 + 2x9 + x10 + x11 + x12 + x13 ∈ F3[x] is f = (1 + x)3(x2 + x + 2)(x2 + 1)(x3 + 2x + 2)2

◮ Or what is the same,

f1 = 1 + x , d1 = 3 , f2 = x2 + x + 2 , d2 = 1 , f3 = x2 + 1 , d3 = 1 , f4 = x3 + 2x + 2 , d4 = 2

slide-12
SLIDE 12

Preliminaries: Fast modular exponentiation

◮ Let f , g ∈ Fq[x] with g 0, deg f , deg g ≤ d and m ∈ Z≥0 ◮ Then, there exists an algorithm that computes f m rem g in O(M(d) log m) operations

in Fq (exercise)

slide-13
SLIDE 13

Preliminaries: Greatest common divisor

◮ Let f , g ∈ Fq[x] such that at least one of f , g is nonzero ◮ Let us write gcd(f , g) for the monic greatest common divisor of f and g ◮ That is, in what follows we assume that lc(gcd(f , g)) = 1

slide-14
SLIDE 14

Squarefree part

◮ Let f = lc(f )f d1 1 f d2 2 · · · f dr r

be the factorization of f ∈ Fq[x]

◮ The squarefree part of f is the (monic) polynomial f1f2 · · · fr ◮ To factor f , it suffices to factor the squarefree part of f since f and its squarefree part

have the same irreducible factors

◮ Indeed, given an irreducible factor fj of f , it is easy to determine the maximum

exponent dj ∈ Z≥1 such that f dj

j

divides f

slide-15
SLIDE 15

Example: Squarefree part

◮ The squarefree part of

2 + 2x + x2 + 2x4 + 2x5 + 2x6 + 2x8 + 2x9 + x10 + x11 + x12 + x13 ∈ F3[x] is 1 + x + 2x2 + x5 + 2x7 + x8 ∈ F3[x]

slide-16
SLIDE 16

The squarefree part and the formal derivative (1/2)

◮ Let p be the characteristic of Fq; that is, q is a power of the prime p ◮ Let f ∈ Fq[x] be monic with factorization f = f d1 1 f d2 2 · · · f dr r ◮ Then, we have (exercise)

f ′ =

r

  • j=1

djf ′

j

f fj (36)

◮ Furthermore, for all i, j = 1, 2, . . . , r we have that f di i

divides djf ′

j f fj when i j ◮ When i = j, clearly f dj−1 j

divides djf ′

j f fj ;

furthermore, we have that f dj

j

divides djf ′

j f fj if and only if fj divides djf ′ j ;

since deg f ′

j < deg fj, we have that fj divides djf ′ j if and only if p divides dj

slide-17
SLIDE 17

The squarefree part and the formal derivative (2/2)

◮ Set u ← gcd(f , f ′) and v ← f /u ◮ For j = 1, 2, . . . , r, let

δj =      1 if p does not divide dj; if p divides dj

◮ We have

u = f d1−δ1

1

f d2−δ2

2

· · · f dr−δr

r

v = f δ1

1 f δ2 2 · · · f δr r ◮ In particular, v is the squarefree part of f if δ1 = δ2 = · · · = δr = 1 ◮ Otherwise, that is, when δj = 0 for at least one j, we need to do some more work ...

slide-18
SLIDE 18

Extracting a pth power

◮ Recall that we have

f = f d1

1 f d2 2 · · · f dr r

v = f δ1

1 f δ2 2 · · · f δr r ◮ Let w ← f / gcd(f , vdeg f )

(exercise: how do you compute w fast given f and v as input?)

◮ We have

w = f (1−δ1)d1

1

f (1−δ1)d2

2

· · · f (1−δr)dr

r

=

  • p|dj

f dj

j ◮ That is, we have that w is the pth power of the polynomial p|dj f dj/p j ◮ To access the squarefree part of w (which, when multiplied with v, forms the

squarefree part of f ), it suffices to recurse on a pth root of w

◮ Next we look at how to compute pth roots ...

slide-19
SLIDE 19

The structure of a pth power in characteristic p

◮ Let p be the characteristic of Fq ◮ Let g = d i=0ψixi ∈ Fq[x] ◮ By the multinomial theorem, we have

gp =

  • 0≤j0,j1,...,jd ≤p

j0+j1+...+jd=p

  • p

j0, j1, . . . , jd

  • ψ j0

0 ψ j1 1 · · ·ψ jd d x d

k=0 kjk

◮ Since p is prime, we have that p divides

  • p

j0,j1,...,jd

  • =

p! j0!j1!···jd! unless there exists a

k = 0, 1, . . . , d with jk = p, in which case

  • p

j0,j1,...,jd

  • = 1

◮ Thus, we have

gp =

d

  • i=0

ψ p

i xpi

slide-20
SLIDE 20

Computing a pth root of a pth power in characteristic p

◮ Let p be the characteristic of Fq ◮ Let g = d i=0ψixi ∈ Fq[x] ◮ From the previous slide, we have gp = d i=0ψ p i xpi ◮ Suppose we are given h = d i=0 ηixpi as input and we want to compute a pth root of h ◮ By Fermat’s litle theorem, for η = ψ p with ψ ∈ Fq we have ηq/p = (ψ p)q/p = ψ q = ψ ◮ Thus, we have h = gp for

g =

d

  • i=0

ηq/p

i

xi (exercise: how do you compute ηq/p fast, given η ∈ Fq together with q and p as input?)

slide-21
SLIDE 21

Example: Computing the squarefree part

◮ Let us compute the squarefree part of

f = 2 + 2x + x2 + 2x4 + 2x5 + 2x6 + 2x8 + 2x9 + x10 + x11 + x12 + x13 ∈ F3[x]

◮ We have

f ′ = 2 + 2x + 2x3 + x4 + x7 + x9 + 2x10 + x12

◮ And thus

u = gcd(f , f ′) = 2 + 2x + 2x4 + x6 v = f /u = 1 + 2x2 + x3 + 2x4 + 2x5 + x6 + x7 w = 1 + x3

◮ Since w 1 we proceed to take the pth root for p = 3, and obtain w1/3 = 1 + x ◮ The squarefree part of w1/3 is trivially 1 + x, so we obtain that

(1 + x)v = 1 + x + 2x2 + x5 + 2x7 + x8 is the squarefree part of f

slide-22
SLIDE 22

Distinct-degree decomposition of a squarefree polynomial

◮ Let g ∈ Fq[x] be monic and squarefree of degree at least 1 ◮ The distinct-degree decomposition of g is the sequence g1, g2, . . . , gs ∈ Fq[x] such

that gs 1 and for all i = 1, 2, . . . , s we have that gi is the product of all monic irreducible polynomials of degree i that divide g

◮ The distinct-degree decomposition of g is unique ◮ We also have g = g1g2 · · · gs ◮ To factor g it suffices to factor each of g1, g2, . . . , gs

slide-23
SLIDE 23

Example: Distinct-degree decomposition

◮ The polynomial

g = 1 + x + 2x2 + x5 + 2x7 + x8 ∈ Fq[x] is monic and squarefree of degree at least 1

◮ The distinct-degree decomposition of g is

g1 = 1 + x g2 = 2 + x + x3 + x4 g3 = x3 + 2x + 2

slide-24
SLIDE 24

Extended Fermat’s litle theorem

Theorem 19 (Extended Fermat’s litle theorem) Let q be a prime power and let d ∈ Z≥1. Then, xqd − x ∈ Fq[x] is the product of all monic irreducible polynomials in Fq[x] whose degree divides d Proof. (Exercise in last week’s problem set)

slide-25
SLIDE 25

Computing the distinct-degree decomposition

◮ Let g ∈ Fq[x] be monic and squarefree of degree at least 1 given as input

  • 1. Set f ← g, h ← x, and i ← 1
  • 2. while f 1 do
  • a. Set h ← hq rem f using fast modular exponentiation
  • b. Set gi ← gcd(h − x, f )

[here we have the invariants that h − x ≡ xqi − x (mod f ) and f has no irreducible factors of degree less than i]

  • c. Set f ← f /gi
  • d. Set i ← i + 1
  • 3. Set s ← i − 1
  • 4. Output g1, g2, . . . , gs as the distinct-degree decomposition of g and stop
slide-26
SLIDE 26

Equal-degree factorization

◮ Let f ∈ Fq[x] be monic and squarefree of degree n ∈ Z≥1 such that all irreducible

factors of f have degree d ∈ Z≥1

◮ The equal-degree factorization task is to factor f given both f and d as input ◮ Clearly we must have that d divides n, and the task is trivial if d = n ◮ Let us next look at one possible algorithm for equal-degree factorization ...

slide-27
SLIDE 27

The Cantor–Zassenhaus algorithm (1/2)

◮ Let q be an odd prime power ◮ Let f ∈ Fq[x] be monic of degree n = dr such that all r ≥ 2 irreducible factors of f

have degree d

  • 1. Let a ∈ Fq[x] be a uniform random nonzero polynomial of degree at most n − 1
  • 2. Let g ← gcd(a, f ). If g 1, then output g and stop
  • 3. Compute s ← a(qd−1)/2 rem f using fast modular exponentiation
  • 4. Let g ← gcd(s − 1, f ). If g 1 and g f , then output g and stop
  • 5. Assert failure and stop
slide-28
SLIDE 28

The Cantor–Zassenhaus algorithm (2/2)

◮ The Cantor–Zassenhaus algorithm outputs a proper divisor g of f

(a spliting polynomial for f ) with probability at least 1/2

◮ We can repeat the algorithm until a proper divisor g is found, and then recurse on g

and f /g as appropriate to complete the equal-degree factorization of f into the r irreducible factors, each of degree d

slide-29
SLIDE 29

Analysis of the Cantor–Zassenhaus algorithm I

◮ Let f = f1f2 . . . fr be the factorization of the input f ◮ Let a be a uniform random nonzero polynomial of degree at most n − 1 ◮ If the algorithm stops in Step 2 we have that g splits f ◮ So suppose that we continue to Step 3; in this case a and f are coprime and thus a and

fj are coprime for each j = 1, 2, . . . , r

◮ By the Chinese Remainder Theorem, we have the isomorphism

χ : Fq[x]/f → Fq[x]/f1 × Fq[x]/f2 × · · · × Fq[x]/fr given for all h ∈ Fq/f by χ(h) = (χ1(h), χ2(h), . . . , χr(h)) with χi(h) = h rem fi for all i = 1, 2, . . . , r

◮ Since each fi ∈ Fq[x] is irreducible of degree d, we have that each Fq[x]/fi is

isomorphic to Fqd

slide-30
SLIDE 30

Analysis of the Cantor–Zassenhaus algorithm II

◮ We have χi(h) = 0 if and only if fi divides h ◮ In particular, h is a spliting polynomial for f if and only if there exist

i0, i0 ∈ {1, 2, . . . , r} such that χi0(h) = 0 and χi0(h) 0

◮ Since χ is an isomorphism and a is coprime to each of f1, f2, . . . , fr, we have that

χ1(a), χ2(a), . . . , χr(a) are mutually independent uniform random elements in the multiplicative groups of Fq[x]/f1, Fq[x]/f2, . . . , Fq[x]/fr, each of which is isomorphic to the multiplicative group F×

qd ◮ Since q is odd and the multiplicative group F× qd is cyclic (recall last week), for a uniform

random b ∈ F×

qd we have Pr(b(qd−1)/2 = 1) = Pr(b(qd−1)/2 = −1) = 1/2 (exercise) ◮ Thus, we have that χ (a(qd−1)/2) is a uniform random vector with entries in {−1, 1} ◮ In particular, with probability at least 1 − 21−r the vector χ(a(qd−1)/2) has at least one

1-entry and at least one (−1)-entry

slide-31
SLIDE 31

Analysis of the Cantor–Zassenhaus algorithm III

◮ Thus, since χ is an isomorphism, with probability at least 1 − 21−r the vector

χ(a(qd−1)/2 − 1) has at least one zero entry and at least one nonzero entry

◮ The algorithm thus outputs a spliting polynomial and stops in Step 4 with probability

at least 1 − 21−r ≥ 1/2 since r ≥ 2

slide-32
SLIDE 32

Summary: Factoring a polynomial over a finite field (1/2)

◮ Let a monic f ∈ Fq[x] be given as input

  • 1. Compute the squarefree part g ∈ Fq[x] of f
  • 2. Compute the distinct-degree decomposition g1, g2, . . . , gs ∈ Fq[x] of g
  • 3. For each i = 1, 2, . . . , s, run an equal-degree factorization algorithm to factor gi

(e.g., for odd q, run Cantor–Zassenhaus algorithm)

  • 4. Assemble all the monic irreducible factors f1, f2, . . . , fr ∈ Fq[x] obtained in Step 3
  • 5. For each j = 1, 2, . . . , r, compute the maximum exponent dj ∈ Z≥1 such that f dj

j

divides f

  • 6. Return the factorization f = f d1

1 f d2 2 · · · f dr r

slide-33
SLIDE 33

Summary: Factoring a polynomial over a finite field (2/2)

◮ We have presented one possible algorithm for efficiently factoring a given polynomial

f ∈ Fq[x] into its irreducible factors

◮ Here by efficient we mean that the number of operations in Fq executed by the

algorithm is bounded by a polynomial in deg f and log q

◮ More efficient algorithms are known

(cf. von zur Gathen and Gerhard [9] and Kedlaya and Umans [13])

slide-34
SLIDE 34

Three applications

◮ Find all roots of a polynomial

◮ The irreducible factors of degree 1 correspond to the distinct roots

◮ Testing for irreducibility

◮ Test that the squarefree part agrees with the polynomial and then compute a

distinct-degree decomposition to decide irreducibility

◮ Constructing an irreducible monic polynomial of degree n

◮ Draw a uniform random monic polynomial of degree n, and test for irreducibility using

the test above; repeat until an irreducible polynomial is found

◮ Recalling the counting lemma for irreducible polynomials from the previous lecture, in

expectation O(n) repeats are required

slide-35
SLIDE 35

Recap of Lecture 8

◮ Factoring a monic polynomial into monic irreducible polynomials over a finite

field

◮ Square-and-multiply algorithm for modular exponentiation (exercise) ◮ The squarefree part of a polynomial

◮ Computing the squarefree part using the formal derivative, greatest common divisors,

and modular exponentiation (exercise)

◮ The distinct-degree factorization of a squarefree polynomial

◮ Computing the distinct-degree factorization using extended Fermat’s litle theorem,

modular exponentiation, and greatest common divisors

◮ The equal-degree factorization of a polynomial with known identical degrees for

the irreducible factors

◮ Cantor–Zassenhaus algorithm and random spliting polynomials

(analysis: exercise)

slide-36
SLIDE 36

References I

[1]

  • M. Agrawal, N. Kayal, and N. Saxena, PRIMES is in P, Ann. of Math. (2) 160 (2004),

781–793. [doi:10.4007/annals.2004.160.781]. [2]

  • R. C. Baker, G. Harman, and J. Pintz, The difference between consecutive primes. II,
  • Proc. London Math. Soc. (3) 83 (2001), 532–562.

[doi:10.1112/plms/83.3.532]. [3]

  • A. Björklund and P. Kaski, How proofs are prepared at Camelot: extended abstract,

in Proceedings of the 2016 ACM Symposium on Principles of Distributed Computing, PODC 2016, Chicago, IL, USA, July 25-28, 2016 (G. Giakkoupis, Ed.). ACM, 2016, pp. 391–400. [doi:10.1145/2933057.2933101].

slide-37
SLIDE 37

References II

[4]

  • R. Brent and P. Zimmermann, Modern Computer Arithmetic, Cambrigde University

Press, 2011. [WWW]. [5]

  • M. L. Carmosino, J. Gao, R. Impagliazzo, I. Mihajlin, R. Paturi, and S. Schneider,

Nondeterministic extensions of the strong exponential time hypothesis and consequences for non-reducibility, in Proceedings of the 2016 ACM Conference on Innovations in Theoretical Computer Science, Cambridge, MA, USA, January 14-16, 2016 (M. Sudan, Ed.). ACM, 2016, pp. 261–270. [doi:10.1145/2840728.2840746]. [6]

  • D. A. Cox, J. Litle, and D. O’Shea, Ideals, Varieties, and Algorithms, fourth ed.,

Springer, Cham, 2015. [doi:10.1007/978-3-319-16721-3].

slide-38
SLIDE 38

References III

[7]

  • M. Fürer, Faster integer multiplication, SIAM J. Comput. 39 (2009), 979–1005.

[doi:10.1137/070711761]. [8]

  • S. Gao, A new algorithm for decoding Reed–Solomon codes, in Communications,

Information, and Network Security (V. K. Bhargava, H. V. Poor, V. Tarokh, and S. Yoon, Eds.), Springer, 2003, pp. 55–68. [9]

  • J. von zur Gathen and J. Gerhard, Modern Computer Algebra, third ed., Cambridge

University Press, Cambridge, 2013. [doi:10.1017/CBO9781139856065]. [10] S. Goldwasser, Y. T. Kalai, and G. N. Rothblum, Delegating computation: Interactive proofs for muggles, J. ACM 62 (2015), 27:1–27:64. [doi:10.1145/2699436].

slide-39
SLIDE 39

References IV

[11] D. Harvey, J. van der Hoeven, and G. Lecerf, Even faster integer multiplication, J. Complexity 36 (2016), 1–30. [doi:10.1016/j.jco.2016.03.001]. [12] P. Kaski, Engineering a delegatable and error-tolerant algorithm for counting small subgraphs, in Proceedings of the Twentieth Workshop on Algorithm Engineering and Experiments, ALENEX 2018, New Orleans, LA, USA, January 7-8, 2018. (R. Pagh and

  • S. Venkatasubramanian, Eds.). SIAM, 2018, pp. 184–198.

[doi:10.1137/1.9781611975055.16]. [13] K. S. Kedlaya and C. Umans, Fast polynomial factorization and modular composition, SIAM J. Comput. 40 (2011), 1767–1802. [doi:10.1137/08073408X]. [14] D. E. Knuth, The Art of Computer Programming, Volume 2: Seminumerical Algorithms, 3rd ed., Addison-Wesley, 1998.

slide-40
SLIDE 40

References V

[15] S. Lang, Algebra, third ed., Springer-Verlag, New York, 2002. [doi:10.1007/978-1-4613-0041-0]. [16] R. Lidl and H. Niederreiter, Finite fields, second ed., Cambridge University Press, Cambridge, 1997. With a foreword by P. M. Cohn. [17] N. Möller, On Schönhage’s algorithm and subquadratic integer GCD computation,

  • Math. Comp. 77 (2008), 589–607.

[doi:10.1090/S0025-5718-07-02017-0]. [18] A. Schönhage, Schnelle Multiplikation von Polynomen über Körpern der Charakteristik 2, Acta Informat. 7 (1976/77), 395–398. [doi:10.1007/BF00289470]. [19] A. Schönhage and V. Strassen, Schnelle Multiplikation grosser Zahlen, Computing (Arch. Elektron. Rechnen) 7 (1971), 281–292.

slide-41
SLIDE 41

References VI

[20] A. Shamir, How to share a secret, Comm. ACM 22 (1979), 612–613. [doi:10.1145/359168.359176]. [21] C. Van Loan, Computational Frameworks for the Fast Fourier Transform, SIAM, 1992. [doi:10.1137/1.9781611970999]. [22] M. Walfish and A. J. Blumberg, Verifying computations without reexecuting them,

  • Commun. ACM 58 (2015), 74–84.

[doi:10.1145/2641562]. [23] R. R. Williams, Strong ETH breaks with Merlin and Arthur: Short non-interactive proofs of batch evaluation, in 31st Conference on Computational Complexity, CCC 2016, May 29 to June 1, 2016, Tokyo, Japan (R. Raz, Ed.). Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 2016, pp. 2:1–2:17. [doi:10.4230/LIPIcs.CCC.2016.2].