Arithmetic Circuit Identity Testing for Sparse Polynomials - - PowerPoint PPT Presentation

arithmetic circuit identity testing for sparse polynomials
SMART_READER_LITE
LIVE PREVIEW

Arithmetic Circuit Identity Testing for Sparse Polynomials - - PowerPoint PPT Presentation

Arithmetic Circuit Identity Testing for Sparse Polynomials Speaker: Moritz Hardt Joint work with Markus Blser, Saarland University C M U T h e o r y L u n c h , A p r i l 2 5 2 0 0 7 Quick Reminder Arithmetic Circuit 1 2


slide-1
SLIDE 1

Speaker: Moritz Hardt Joint work with Markus Bläser, Saarland University

Arithmetic Circuit Identity Testing for Sparse Polynomials

C M U T h e o r y L u n c h , A p r i l 2 5 2 0 0 7

slide-2
SLIDE 2

Arithmetic Circuit

  • division-free
  • size = #gates

Sparse Polynomial: few nonzero monomials

24y + 2y4

2 1 + c ∗ ∗

Quick Reminder

slide-3
SLIDE 3

Given an arithmetic circuit of size s computing a polynomial P, determine if P is identically zero. Arithmetic Circuit Identity Testing (ACIT)

slide-4
SLIDE 4

Plan

  • 1. Study the univariate

case first.

  • 2. Randomize!
  • 3. Reductions from

multivariate to univariate. Deterministic algorithm that exploits the sparsity

  • f the input polynomial
slide-5
SLIDE 5

How many roots can a nonzero univariate polynomial have?

slide-6
SLIDE 6

How many roots can a nonzero univariate polynomial have?

d (degree)

slide-7
SLIDE 7

How many roots can a nonzero univariate polynomial have?

d (degree)

Naive poly(d,s)-time algorithm

slide-8
SLIDE 8

How many roots can a nonzero univariate polynomial have?

d (degree)

Can we say anything better?

Naive poly(d,s)-time algorithm

slide-9
SLIDE 9

Fact: Real-valued polynomial with at most m nonzero monomials has at most m positive roots.

slide-10
SLIDE 10

Fact: Real-valued polynomial with at most m nonzero monomials has at most m positive roots. Proof: Rule of Signs.

slide-11
SLIDE 11

Fact: Real-valued polynomial with at most m nonzero monomials has at most m positive roots.

Naive poly(m,s)-time algorithm (over the reals)?

Proof: Rule of Signs.

slide-12
SLIDE 12

Fact: Real-valued polynomial with at most m nonzero monomials has at most m positive roots.

Naive poly(m,s)-time algorithm (over the reals)?

No! Why not? Proof: Rule of Signs.

slide-13
SLIDE 13

Fact: Real-valued polynomial with at most m nonzero monomials has at most m positive roots.

Naive poly(m,s)-time algorithm (over the reals)?

No! Why not? Proof: Rule of Signs. Can we still do it?

slide-14
SLIDE 14

Previous Work

Lipton, Vishnoi ’03.

  • poly(m,n,log d,H) runtime over the integers

Klivans, Spielman ’01.

  • O(log(mnd)) random bits

Karpinski, Shparlinski ’96

  • poly(m,n, log d) runtime over finite fields,

(but either a lot of randomness or dependence on the characteristic)

slide-15
SLIDE 15

Previous Work

Lipton, Vishnoi ’03.

  • poly(m,n,log d,H) runtime over the integers

Klivans, Spielman ’01.

  • O(log(mnd)) random bits

Karpinski, Shparlinski ’96

  • poly(m,n, log d) runtime over finite fields,

(but either a lot of randomness or dependence on the characteristic)

Further related work on sparse polynomial interpolation...

slide-16
SLIDE 16

Previous Work

Lipton, Vishnoi ’03.

  • poly(m,n,log d,H) runtime over the integers

Klivans, Spielman ’01.

  • O(log(mnd)) random bits

Karpinski, Shparlinski ’96

  • poly(m,n, log d) runtime over finite fields,

(but either a lot of randomness or dependence on the characteristic)

Further related work on sparse polynomial interpolation... Agrawal, Biswas ’99

  • Randomness-efficient test using arithmetic circuits

Not related to sparsity:

slide-17
SLIDE 17

Our result

  • Deterministic test using poly(m,s) ring
  • perations over any integral domain
  • amounts to runtime poly(m,n,log d,H)
  • ver integers or rationals, for instance
  • Lower exponents in the runtime with fewer

random bits

  • Very simple algorithm
slide-18
SLIDE 18

Algorithm

for sufficiently many primes p. Given an arithmetic circuit computing a univariate polynomial P, verify

P() ≡ 0 mod p − 1

slide-19
SLIDE 19

What is sufficient?

verify for sufficiently many primes p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

slide-20
SLIDE 20

What is sufficient?

verify for sufficiently many primes p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

m > 0

P() ≡ 0 mod p − 1.

P()

slide-21
SLIDE 21

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

slide-22
SLIDE 22

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

1st Idea: We’re reducing degrees mod p.

r < p, k ≥ 0 kp+r ≡ r mod p − 1

slide-23
SLIDE 23

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

2nd Idea: Count prime factors! 1st Idea: We’re reducing degrees mod p.

r < p, k ≥ 0 kp+r ≡ r mod p − 1

slide-24
SLIDE 24

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

2nd Idea: Count prime factors! Fix two monomials d, d′. 1st Idea: We’re reducing degrees mod p.

r < p, k ≥ 0 kp+r ≡ r mod p − 1

slide-25
SLIDE 25

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

2nd Idea: Count prime factors! Fix two monomials d, d′. If d ≡ d′

mod p, we have p|(d − d′).

1st Idea: We’re reducing degrees mod p.

r < p, k ≥ 0 kp+r ≡ r mod p − 1

slide-26
SLIDE 26

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

2nd Idea: Count prime factors! But, |d − d′| ≤ d. Fix two monomials d, d′. If d ≡ d′

mod p, we have p|(d − d′).

1st Idea: We’re reducing degrees mod p.

r < p, k ≥ 0 kp+r ≡ r mod p − 1

slide-27
SLIDE 27

m > 0

Claim: Given polynomial , degree d, nonzero monomials, then there are less than m log d primes p for which

P() ≡ 0 mod p − 1.

P()

At most log d bad primes per pair of monomials! 2nd Idea: Count prime factors! But, |d − d′| ≤ d. Fix two monomials d, d′. If d ≡ d′

mod p, we have p|(d − d′).

1st Idea: We’re reducing degrees mod p.

r < p, k ≥ 0 kp+r ≡ r mod p − 1

slide-28
SLIDE 28

verify for sufficiently many primes p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

How?

slide-29
SLIDE 29

Claim: If P is given as an arithmetic circuit of size s, we can verify P() ≡ 0

mod k − 1

with Õ(sk) ring operations (over an integral domain). verify for sufficiently many primes p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

How?

slide-30
SLIDE 30

Claim: If P is given as an arithmetic circuit of size s, we can verify P() ≡ 0

mod k − 1

with Õ(sk) ring operations (over an integral domain).

slide-31
SLIDE 31

Claim: If P is given as an arithmetic circuit of size s, we can verify P() ≡ 0

mod k − 1

with Õ(sk) ring operations (over an integral domain). Idea: Compute the whole polynomial in its reduced form.

slide-32
SLIDE 32

Claim: If P is given as an arithmetic circuit of size s, we can verify P() ≡ 0

mod k − 1

with Õ(sk) ring operations (over an integral domain).

 ∗ ∗ ∗ ∗

Example (k=5) Invariant: Degree k polynomial at each gate

(3)2 = 6 →  (4)2 = 8 → 3

(2)2 = 4

2

Idea: Compute the whole polynomial in its reduced form.

slide-33
SLIDE 33

Next step: Randomization

So far: Deterministic algorithm

runtime poly(m,s)

slide-34
SLIDE 34

Goal: Õ(log(ms)) random bits, speed up runtime as much as possible, hopefully poly(s). No m, here.

Next step: Randomization

So far: Deterministic algorithm

runtime poly(m,s)

slide-35
SLIDE 35

verify for sufficiently many primes p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

a large enough random prime p.

slide-36
SLIDE 36

verify for sufficiently many primes p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

a large enough random prime p. OK, O(log p) = Õ(m log d) random bits.

slide-37
SLIDE 37

verify for a large enough random prime p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

Are we done?

slide-38
SLIDE 38

verify for a large enough random prime p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

Are we done? Runtime “poly(p,s)”

slide-39
SLIDE 39

verify for a large enough random prime p. Given a univariate polynomial P,

P() ≡ 0 mod p − 1

Are we done? Runtime “poly(p,s)” Not efficient general, but still nice speed up.

slide-40
SLIDE 40

Can we verify P() ≡ 0 mod p − 1 with poly(s) ring operations and O(log p) random bits ?

Open Problem

slide-41
SLIDE 41

From multivariate to univariate

s n m d

1 n(d + 1)n

not much more none

≤ m (mnd)k 1

not much more

˜ O(log(mn log d))

sound w.h.p.

m

Random bits

slide-42
SLIDE 42

Deterministic Reduction

P(1, 2, . . . , n)

Given:

  • max variable degree d
slide-43
SLIDE 43

Deterministic Reduction

P(1, 2, . . . , n)

Given:

  • max variable degree d

 := (d+1)−1

Substitute

slide-44
SLIDE 44

Deterministic Reduction

P(1, 2, . . . , n)

Given:

  • max variable degree d

 := (d+1)−1

Substitute

Circuit of size n log d repeated squaring

slide-45
SLIDE 45

Randomized Reduction

  • Uses the mapping by Klivans and Spielman ’01
  • Adds a step of chinese remaindering to it to

further decrease # random bits: O(log(mnd)) Õ(log(mn log d))

slide-46
SLIDE 46

Results in Detail

Deterministic Randomized

  • perations

with

˜ O(log(mn log d))

random bits

  • perations

˜ O((mn log d)2S) S = s + n2 log d T = s + n log(mnd) ˜ O(m log(mnd)T)

slide-47
SLIDE 47

Conclusion

  • What’s the “significant” parameter in identity

testing? Degree or Sparsity?

  • Classical results say degree
  • Our result argues for sparsity
  • Efficient randomized analogon

(Õ(log(ms)) random bits) still missing!

slide-48
SLIDE 48

Thank you.

slide-49
SLIDE 49

Closer look at the open question

P() ≡ 0 mod p − 1

if and only if

P(r) = 0 for all p-th roots of unity r.

P ∈ C[]. Suppose Fact:

slide-50
SLIDE 50

Closer look at the open question

P() ≡ 0 mod p − 1

if and only if

P(r) = 0 for all p-th roots of unity r.

P ∈ C[]. Suppose Fact: What about picking a random root?

slide-51
SLIDE 51

Closer look at the open question

P() ≡ 0 mod p − 1

if and only if

P(r) = 0 for all p-th roots of unity r.

P ∈ C[]. Suppose Fact: What about picking a random root? Idea: A polynomial that is zero everywhere except on

  • ne point cannot be not sparse!

“Uncertainty Principle”

slide-52
SLIDE 52

Closer look at the open question

P() ≡ 0 mod p − 1

if and only if

P(r) = 0 for all p-th roots of unity r.

P ∈ C[]. Suppose Fact: What about picking a random root? Idea: A polynomial that is zero everywhere except on

  • ne point cannot be not sparse!

“Uncertainty Principle” Unfortunately, parameters too weak per se. But maybe, can mimic Indyk ’07 on polynomials...