deepdream of
          a sidewalk
Show Question
Math and science::Algebra::Aluffi

Two new rings from polynomial ring quotients

Using the below theorem:

1. Polynomial evaluation

There is a f(x) so that φ:R[x]R[x]/(f(x)) sends any polynomial g(x) to g(a).

  1. What is f(x)? f(x)=xa
  2. What is R[x]/(f(x))? It is R
  3. Is φ an isomorphism of groups or rings? It's an isomorphism of rings
2. Complex ring, C

There is a f(x) so that φ:R[x]R[x]/(f(x)) makes R[x]/(f(x)) isomorphic to C as a ring.

  1. What is f(x)? f(x)=x2+1
  2. How is the multiplication operation transferred to R[x]/(f(x))? See below.

Let R be a commutative ring, R[x] a polynomial ring, and f(x)R[x] a polynomial. Let φ:R[x]Rd be a set function defined by by sending g(x)R[x] to the tuple representation of the remainder of g(x) when divided by f(x).

Then this function induces an isomorphism of abelian groups:

R[x](f(x))Rd

Polynomial evaluation

Let f(x)=xa for some aR. And let φ:R[x]R[x]/(xa) be the function that sends a polynomial in R[x] to its remainder when divided by xa. Then for some g(x)R[x], we can write:

g(x)=q(x)(xa)+r

where rR is the value of φ(g(x)). r is also the value of g(x) when evaluated at a.

Of note is that fact that we have the equivalence:

g(a)=0g(x)(xa)

What have we done? We have "projected" all polynomials in R[x] to the much smaller R. Polynomials which experience this mapping as an identity are those which have no contribution from xa.

Creating C from R[x]

Let f(x)=x2+1. Then φ:R[x]R[x]/(x2+1) sends a polynomial g(x) to its remainder when divided by x2+1. As per the theorem above, this induces an isomorphism of abelian groups:

R[x](x2+1)RR

But we can go further by transferring the multiplication operation. Let a,bR[x](x2+1). We must have both:

a=a1x+a0b=b1x+b0

as they are remainders with degree less than 2. We can try to multiply them as if they were polynomials in R[x]:

ab=(a1x+a0)(b1x+b0)=a1b1x2+(a1b0+a0b1)x+a0b0

We can rewrite the last statement:

ab=a1b1x2+(a1b0+a0b1)x+a0b0=(a1b1)(x2+1)+(a1b0+a0b1)x+a0b0a1b1

And taking the remainder after the quotient by x2+1, forces us to equate:

(a1,a0)(b1,b0)=(a1b0+a0b1)x+a0b0a1b1

If these pairs are from RR, then this is the multiplication operation of the complex numbers. And so:

R[x](x2+1)C

From criteria to f(x)

As an example, consider the criteria: a polynomial ring R[x] and a value for a0=x such that a03=1. For every polynomial in g(x)R[x] when evaluated with x=a0, if we were to divide it by x3+1, the remainder would be g(a0), as any multiple of a03+1 would be zero, and so g(a0) has no contribution from the polynomial (x3+1).

In the "evaluation" example, the criteria was x=a0, and when this criteria is met, then the polynomial xa0 has no contribution to g(x), and so the remainder of g(x) when divided by xa0 is just g(a0).

What is amazing, and something I don't understand yet, is how the sets of polynomials (or their evaluations?) form a group and possibly a ring, by transferring the operations from R[x] through the quotient map φ.

Computation perspective

Remember that R[x] expresses all possible (+,) computation networks where there is 1 "wire" whose value has not been set yet, and this wire can be connected to an arbitrary number of + or bivariate operations or "gates". R[x,y] would have two free wires.

With just one free wire, x, any computation can be evaluated, like lambda terms are evaluated, in order to reach a reduced form which is a polynomial like 4x5+3x2+1, which can be achieved with one 3-input add-gate, one 6 input mult-gate and one 3-input mult-gate. Expressing g(x) as f(x)q(x)+r is a way of factorizing the computation network.


Source

Aluffi p149