Polynomials constitute of a rich class of functions. A polynomial in a single variable defined on a field F is a function of the form:
p(x)=cdxd+cd−1xd−1+...+c1x+c0
where the variable x and coefficients ci∈F,∀i∈[d]. The integer d is called the degree of p(x).
Properties
Polynomials have two fundamental properties:
A non-zero polynomial of degree d has at most d distinct roots.
Given d+1 pairs {(ai,bi)∈F2:i∈[d+1]}, such that ai=aj for i=j, there is a unique polynomial p(x) with degree at most d that goes through all these points.
Number of Distinct Roots
We prove claim 1 by induction.
The base case is d=0. As the polynomial is non-zero, it does not have any root.
Suppose the claim holds for non-negative integers ≤d and p(x) is a polynomial of degree d+1. If p(x) has a root z, by polynomial division, we can rewrite p(x) as
p(x)=(x−a)kq(x)
where k≥1 is the largest integer such that (x−a)k∣p(x). Hence q(x) has degree d+1−k. For any z=a, if p(z)=(z−a)kq(z)=0, then q(z)=0, which implies that z is a root of q(x). By the inductive hypothesis, it has at most d+1−k distinct roots.
Remark:We don't claim that p(x) must have a root, but it has at most d distinct roots, if it has degree d.
Unique Interpolation
We first prove the existence of the interpolation, then prove its uniqueness.
Existence of Interpolation
The method is called Lagrange Interpolation. Our basic building blocks are a collection of special polynomials {δi(x):i∈[d+1]}, which we call signal functions, such that ∀i∈[d+1],
The polynomial δi(x) has degree d.
The polynomial takes value 1 at ai, i.e., δi(ai)=1.
The polynomial takes value 0 at aj for j=i, i.e., δi(aj)=0.
First, define δi′(x)=∏j=i(x−aj). It equals to 0 on aj,∀j=i. We normalize its value at ai, to obtain
With proper scaling and summation, p(x) is given by
p(x)=i=1∑d+1bi⋅δi(x)
Uniqueness of Interpolation
Suppose for contradiction that there is another polynomial q(x), s.t., p(ai)=q(ai),∀i∈[d+1]. Let r(x)=p(x)−q(x). If r(x)≡0, then the claim holds trivially. Otherwise, r(x) is a non-zero polynomial with degree at most d. Claim 1 asserts that r(x) has at most d distinct roots, contradicting that r(ai)=0 for i∈[d+1].
Remark: uniqueness can also be proven by showing the following equation has unique solution [cd,cd−1,...,c0]:
Assume that we want to map a set of elements U≐{0,1,...,u−1} into some set F, by picking a function h uniformly at random from a family of functions H≐{h:U→F}. For an i∈U, the value Yi≐h(i) is a random variable. The Yi's are called pairwise independent, if for i,j∈U,i=j and bi,bj∈F,
However, each of the functions takes ulogp bits to represent. To reduce the space, we restrict to the family:
H1={p(x)=c1x+c0∣c1,c0∈Fp}
which contains all polynomials with degree at most 1 in the field Fp, i.e., all lines in Fp. There are p2 such functions.
We know that, for given x1,x2∈U,x1=x2, then ∀y1,y2∈Fp, there is a unique line that goes through (x1,y1),(x2,y2). If we pick a line uniformly at random from H1, then the probability that it goes through this pair of points is 1/p2.
Note that ∣H∣=pk. For 0≤x1<x2<...<xk<u, and y1,y2,...,yk∈Fp, there is a unique polynomial that goes through the points (x1,y1),(x2,y2),...,(xk,yk).
Key-Sharing
Suppose that we have n-candidates who knows some information about the key and we require that only when no less than k of them aggragate their information can they figure the actual key. No group of less than k candidates can achieve this. The way we do it is as follows:
Select a large prime number p.
Select k+1 random numbers y0,y1,...,yk from [p−1].
Generate the unique polynomial p(x) with degree k that goes through (0,y0),(1,y1),...,(k,yk).
Inform the value of p(1) to the first person, p(2) to the second one, ... and p(n) to the n-th person.
If k−1 people pool their keys together, then there are p possible polynomials that goes through all their keys, each has different value at point 0. The probability of guessing the correct key is given by p1.
Reference
[1]. CS 70. Discrete Mathematics and Probability Theory.