<blockquote>
  <p>Would this work? What is wrong?</p>
</blockquote>

<p>No proof sketch that this is a polynomial time algorithm is given. The point where the algorithm might stop being a polynomial time algorithm is step 3:</p>

<blockquote>
  <ol start="3">
  <li>Being a univariate polynomial, it is trivial to normalise this polynomial and check if it is identically 0 or not.</li>
  </ol>
</blockquote>

<p>Even so normalising a univariate polynomial is trivial from a conceptual point of view, it's unclear whether it can be done in polynomial time (or even polynomial space). For multivariate polynomials, it's obvious that polynomials like $(1+x_1)(1+x_2)\dots(1+x_n)$ can't be normalized in polynomial space. For univariate polynomials, the details of the problem formulation become important. If the input polynomial is given by an <a href="http://en.wikipedia.org/wiki/Arithmetic_circuit_complexity">arithmetic circuit</a> and the coefficients are from $\mathbb Z$, then repeated squaring will give you abundant examples of polynomials which cannot be normalized in polynomial space. (PIT is often done over finite fields, which avoids this sort of space explosion.)</p>

<p>The proof sketch that the algorithm works as intended has too many holes for being a valid mathematical proof. However, it is quite possible that there is a proper mathematical proof showing that the proposed algorithm works as intended, and this wouldn't even be a surprise. Here are some of the holes:</p>

<blockquote>
  <p>$f$ should be a union of hypersurfaces (homogeneous polynomial)</p>
</blockquote>

<p>This reads like a claim that $f$ is a homogeneous polynomial iff $f=0$ is a union of hypersurfaces (through the origin). But $f(x,y,z)=x^2+y^2-z^2$ is a homogeneous polynomial for which $f=0$ is not a <em>finite</em> union of hypersurfaces.</p>

<blockquote>
  <p>Supposing $f$ is an homogenous polynomial (worst case), each hypersurface is able at best to make $f=0$ along $n−1$ of the Vandermonde line-vectors.</p>
</blockquote>

<p>This seems to assume that $f(x_1,\dots,x_n)=\prod_i(\sum_j a_{ij}x_j)$, which might be yet another interpretation of "union of hypersurfaces". The hole in the proof here is that the "(worst case)" claim isn't proved. Note that $f(x,y,z)=x^2+y^2-z^2$ is a homogeneous polynomial, but it cannot be written in the assumed form.</p>

CC BY-SA 3.0
2015-01-04T18:45:02.503Z
"Homogeneous polynomial" is completely wrong. The correct notion would be a polynomial that factors to linear components..
Flávio Botelho
CC BY-SA 3.0
2015-01-04T19:50:54.847Z
@FlávioBotelho Even so EmilJeřábek's counterexample shows that linear independence is not enough, I have seen similar reductions to univariate polynomials (but relying on randomness) in related work by Erich Kaltofen and Barry Trager: http://www4.ncsu.edu/~kaltofen/bibliography/88/focs88.ps.gz and http://www4.ncsu.edu/~kaltofen/bibliography/90/KaTr90.pdf
Thomas Klimpel
CC BY-SA 3.0
2015-01-04T21:10:33.943Z
PIT (for circuits) is in fact deterministically polynomial-time reducible to its univariate version using Kronecker substitution: replace $f(x_0,\dots,x_{n-1})$ with $f(x,x^d,\dots,x^{d^{n-1}})$, where $d$ is larger than the degree of $f$ (which is at worst exponential in the size of the original circuit). You can implement $x^{d^i}$ by a circuit of size $O(i\log d)$ using repeated squaring. Over $\mathbb Z$ (or $\mathbb Q$), PIT is even reducible to its 0-variate version, i.e., zero-testing for integer constant circuits: replace $f(x)$ with $f(c)$, where $c$ is a suitably huge constant, ...
Emil Jeřábek
CC BY-SA 3.0
2015-01-04T21:11:32.960Z
... which you again compute by repeated squaring. None of this actually seems to help solving the problem.
Emil Jeřábek
CC BY-SA 3.0
2015-01-05T01:59:53.190Z
About checking if the univariate polynomial is identically 0, maybe that could be overcome by changing the step to evaluate this univariate polynomial at $d+1$ or $n*d+1$ points (black box). Probably that should be enough to show that the line is a subvariety of the algebraic variety correspondent to the original polynomial. But Emil's counterexample to the whole scheme withstands. The vectors cannot have any polynomial patterns (limited to some degree of polynomials)...
Flávio Botelho
CC BY-SA 3.0
2015-01-04T12:29:55.437Z
2015-01-04T12:37:30.030Z
2015-01-04T12:37:30.030Z
Thomas Klimpel
<p>Just a warning, I am an amateur and this algorithm probably doesn't work.</p>

<p>A high level description of the algorithm:</p>

<p>Be $f(x_1,...,x_n)$ a polynomial, $n$ the number of variables and $d$ is the maximum degree of a variable in $f$.</p>

<ol>
<li><p>Find a vector set with at least $m=n*d$ elements such that any combination of $n$ elements forms a linearly independent subset of vectors.</p>

<p>As pointed out by @SashoNikolov and @kodlu in another question, just use the geometric progressions in a Vandermonde matrix to create this set:
$$
\begin{bmatrix}
1 &amp; \alpha_1 &amp; \alpha_1^2 &amp; \dots &amp; \alpha_1^{n-1}\\
1 &amp; \alpha_2 &amp; \alpha_2^2 &amp; \dots &amp; \alpha_2^{n-1}\\
1 &amp; \alpha_3 &amp; \alpha_3^2 &amp; \dots &amp; \alpha_3^{n-1}\\
\vdots &amp; \vdots &amp; \vdots &amp; \ddots &amp;\vdots \\
1 &amp; \alpha_m &amp; \alpha_m^2 &amp; \dots &amp; \alpha_m^{n-1}
\end{bmatrix}
$$</p>

<p>Where $\alpha_i = i$</p></li>
<li><p>Now we use the line-vectors of the Vandermonde matrix above to change the original polynomial $f$ into $m$ univariate polynomials $f_i(t)$ which corresponds to the values of the original polynomial $f$ along the line passing through the origin with the line-vector.</p>

<p>This is where it needs to be white-box, you go in the arithmetic circuit changing all variables according to the transformation:
$$f_i(t)=f(\alpha_i^{0}t,\alpha_i^{1}t,...,\alpha_i^{n-1}t)$$</p></li>
<li><p>Being a univariate polynomial, it is trivial to normalise this polynomial and check if it is identically $0$ or not.</p></li>
<li><p>If and only if all the univariate polynomials are identically $0$ then the original polynomial $f$ is identically $0$.</p></li>
</ol>

<hr>

<p>The geometrical reasoning:</p>

<p>Supposing $f$ is not identically $0$, to maximize the amount of non-colinear lines through the origin where $f=0$, $f$ should be a union of hypersurfaces (homogeneous polynomial).</p>

<p>Supposing $f$ is an homogenous polynomial (worst case), each hypersurface is able at best to make $f=0$ along $n-1$ of the Vandermonde line-vectors. So a union of $d$ hypersurfaces (best case as d is the maximum degree of a variable in $f$) is able at best to make $f=0$ along $(n-1)*d&lt;m$ vector-lines.</p>

<hr>

<p>Would this work? What is wrong? </p>

CC BY-SA 3.0
2015-01-04T12:37:16.107Z
First, a polynomial represented by an arithmetical circuit may well have exponentially large degree. Second, I don't see how the linear independence of the Vandermonde vectors should imply correctness of the test. Unless I'm missing something, your test declares $f(x,y,z)=xz-y^2$ identically 0.
Emil Jeřábek
CC BY-SA 3.0
2015-01-04T18:52:08.763Z
@EmilJeřábek You are correct. Linear independence is not enough...
Flávio Botelho
<cc.complexity-theory><ds.algorithms><circuit-complexity><polynomials>
Idea for a white-box PIT deterministic algorithm in polynomial time
Flávio Botelho
# Idea for a white-box PIT deterministic algorithm in polynomial time

(Asked by: username_0 on 2015-01-04)

Just a warning, I am an amateur and this algorithm probably doesn't work.

A high level description of the algorithm:

Be $f(x\_1,...,x\_n)$ a polynomial, $n$ the number of variables and $d$ is the maximum degree of a variable in $f$.

1. Find a vector set with at least $m=n\*d$ elements such that any combination of $n$ elements forms a linearly independent subset of vectors.

   As pointed out by @SashoNikolov and @kodlu in another question, just use the geometric progressions in a Vandermonde matrix to create this set:
   $$
   \begin{bmatrix}
   1 & \alpha\_1 & \alpha\_1^2 & \dots & \alpha\_1^{n-1}\\
   1 & \alpha\_2 & \alpha\_2^2 & \dots & \alpha\_2^{n-1}\\
   1 & \alpha\_3 & \alpha\_3^2 & \dots & \alpha\_3^{n-1}\\
   \vdots & \vdots & \vdots & \ddots &\vdots \\
   1 & \alpha\_m & \alpha\_m^2 & \dots & \alpha\_m^{n-1}
   \end{bmatrix}
   $$

   Where $\alpha\_i = i$
2. Now we use the line-vectors of the Vandermonde matrix above to change the original polynomial $f$ into $m$ univariate polynomials $f\_i(t)$ which corresponds to the values of the original polynomial $f$ along the line passing through the origin with the line-vector.

   This is where it needs to be white-box, you go in the arithmetic circuit changing all variables according to the transformation:
   $$f\_i(t)=f(\alpha\_i^{0}t,\alpha\_i^{1}t,...,\alpha\_i^{n-1}t)$$
3. Being a univariate polynomial, it is trivial to normalise this polynomial and check if it is identically $0$ or not.
4. If and only if all the univariate polynomials are identically $0$ then the original polynomial $f$ is identically $0$.

---

The geometrical reasoning:

Supposing $f$ is not identically $0$, to maximize the amount of non-colinear lines through the origin where $f=0$, $f$ should be a union of hypersurfaces (homogeneous polynomial).

Supposing $f$ is an homogenous polynomial (worst case), each hypersurface is able at best to make $f=0$ along $n-1$ of the Vandermonde line-vectors. So a union of $d$ hypersurfaces (best case as d is the maximum degree of a variable in $f$) is able at best to make $f=0$ along $(n-1)\*d

---

Would this work? What is wrong?

**Tags:** cc.complexity-theory, ds.algorithms, circuit-complexity, polynomials
> **Comments:**
> **username_1**: First, a polynomial represented by an arithmetical circuit may well have exponentially large degree. Second, I don't see how the linear independence of the Vandermonde vectors should imply correctness of the test. Unless I'm missing something, your test declares $f(x,y,z)=xz-y^2$ identically 0.  
> **username_0**: @EmilJeřábek You are correct. Linear independence is not enough...  

---

## 1 answers

### Answer by username_2 on 2015-01-04. Score: 5 | Accepted answer

> Would this work? What is wrong?

No proof sketch that this is a polynomial time algorithm is given. The point where the algorithm might stop being a polynomial time algorithm is step 3:

> 3. Being a univariate polynomial, it is trivial to normalise this polynomial and check if it is identically 0 or not.

Even so normalising a univariate polynomial is trivial from a conceptual point of view, it's unclear whether it can be done in polynomial time (or even polynomial space). For multivariate polynomials, it's obvious that polynomials like $(1+x\_1)(1+x\_2)\dots(1+x\_n)$ can't be normalized in polynomial space. For univariate polynomials, the details of the problem formulation become important. If the input polynomial is given by an [arithmetic circuit](http://en.wikipedia.org/wiki/Arithmetic_circuit_complexity) and the coefficients are from $\mathbb Z$, then repeated squaring will give you abundant examples of polynomials which cannot be normalized in polynomial space. (PIT is often done over finite fields, which avoids this sort of space explosion.)

The proof sketch that the algorithm works as intended has too many holes for being a valid mathematical proof. However, it is quite possible that there is a proper mathematical proof showing that the proposed algorithm works as intended, and this wouldn't even be a surprise. Here are some of the holes:

> $f$ should be a union of hypersurfaces (homogeneous polynomial)

This reads like a claim that $f$ is a homogeneous polynomial iff $f=0$ is a union of hypersurfaces (through the origin). But $f(x,y,z)=x^2+y^2-z^2$ is a homogeneous polynomial for which $f=0$ is not a *finite* union of hypersurfaces.

> Supposing $f$ is an homogenous polynomial (worst case), each hypersurface is able at best to make $f=0$ along $n−1$ of the Vandermonde line-vectors.

This seems to assume that $f(x\_1,\dots,x\_n)=\prod\_i(\sum\_j a\_{ij}x\_j)$, which might be yet another interpretation of "union of hypersurfaces". The hole in the proof here is that the "(worst case)" claim isn't proved. Note that $f(x,y,z)=x^2+y^2-z^2$ is a homogeneous polynomial, but it cannot be written in the assumed form.

> **Comments:**
> **username_0**: "Homogeneous polynomial" is completely wrong. The correct notion would be a polynomial that factors to linear components..  
> **username_2**: @FlávioBotelho Even so EmilJeřábek's counterexample shows that linear independence is not enough, I have seen similar reductions to univariate polynomials (but relying on randomness) in related work by Erich Kaltofen and Barry Trager: http://www4.ncsu.edu/~kaltofen/bibliography/88/focs88.ps.gz and http://www4.ncsu.edu/~kaltofen/bibliography/90/KaTr90.pdf  
> **username_1**: PIT (for circuits) is in fact deterministically polynomial-time reducible to its univariate version using Kronecker substitution: replace $f(x_0,\dots,x_{n-1})$ with $f(x,x^d,\dots,x^{d^{n-1}})$, where $d$ is larger than the degree of $f$ (which is at worst exponential in the size of the original circuit). You can implement $x^{d^i}$ by a circuit of size $O(i\log d)$ using repeated squaring. Over $\mathbb Z$ (or $\mathbb Q$), PIT is even reducible to its 0-variate version, i.e., zero-testing for integer constant circuits: replace $f(x)$ with $f(c)$, where $c$ is a suitably huge constant, ...  
> **username_1**: ... which you again compute by repeated squaring. None of this actually seems to help solving the problem.  
> **username_0**: About checking if the univariate polynomial is identically 0, maybe that could be overcome by changing the step to evaluate this univariate polynomial at $d+1$ or $n*d+1$ points (black box). Probably that should be enough to show that the line is a subvariety of the algebraic variety correspondent to the original polynomial. But Emil's counterexample to the whole scheme withstands. The vectors cannot have any polynomial patterns (limited to some degree of polynomials)...  

---

