1. 2 Overview Some basic math Error correcting codes Low degree polynomials Introduction to...

Preview:

Citation preview

1

2

OverviewOverview

Some basic mathError correcting codesLow degree polynomials Introduction to consistent readers and

consistency tests

H.W

3

FieldsFields

Definition (field): A set F with two binary operations + (addition) and · (multiplication) is called a field if

6 a,bF, a·bF7 a,b,cF, (a·b)·c=a·(b·c)8 a,bF, a·b=b·a9 1F, aF, a·1=a10 a0F, a-1F, a·a-1=1

1 a,bF, a+bF2 a,b,cF, (a+b)+c=a+

(b+c)3 a,bF, a+b=b+a4 0F, aF, a+0=a5 aF, -aF, a+(-a)=0

11 a,b,cF, a·(b+c)=a·b+a·c

+,·,0, 1,-a and a-1

are only notations!

4

Finite FieldsFinite Fields

Definition (finite field): A finite set F with two binary operations + (addition) and · (multiplication) is called a finite field if it is a field.

Example: Zp denotes {0,1,...,p-1}. We define + and · as the addition and multiplication modulo p respectively.

One can prove that (Zp,+,·) is a field iff p is prime. Throughout the presentations we’ll usually refer to Zp when we’ll mention finite fields.

5

Strings & Functions (1)Strings & Functions (1)

Let = 0 2 . . . n-1, where i.We can describe the string as a function : {0…n-1} , such that i (i) = i.

Let f be a function f : D R. Then f can be described as a string in R|D|, spelling f’s value on each point of D.

6

Strings & Functions - ExampleStrings & Functions - Example

For example, let f be a function f : Z5 Z5, and let = Z5.

f(x) = x2 = 0, 1, 4, 4, 1

7

1001110

Introduction to Error Correcting Introduction to Error Correcting CodesCodes

Motivation:

communication line

original message

1001110

received message

1101110

1

“noise”

We’d like to still be able to reconstruct the original message

8

Error Correcting CodesError Correcting Codes

Definition (encoding): An encoding E is a function E : n m, where m >> n.

Definition (-code): An encoding E is an-code if n (E(),E()) 1 - , where (x,y) (the Hamming distance), denotes the fraction of entries on which x and y differ.

Note that :mmR+ is indeed a distance function, because it satisfies:

(1) x,ym (x,y)0 and (x,y)=0 iff x=y

(2) x,ym (x,y)=(y,x)

(3) x,y,zm (x,z)(x,y)+(y,z)

9

-code: illustration-code: illustration

E1-

D R

10

Univariate PolynomialsUnivariate Polynomials

Definition (univariate polynomial): a polynomial in x over a field F is a function P:FF, which can be written as

for some series of coefficients a0,...,ar-1F.

The natural number r is called the degree-bound of the polynomial.

1

0

)(r

j

jj xaxP

Note: A polynomial whose degree-bound is r

is of degree at most r-1 !

11

Univariate InterpolationUnivariate Interpolation

Given x0,y0,...,xr-1,yr-1F there is a single univariate polynomial P and degree-bound r, which satisfies 0kr-1 P(xk)=yk

(Lagrange’s formula)

The process of finding the coefficients of a polynomial given its value in r points is called interpolation.

Let’s check the value of this polynomial in x = xt

for some 0 t r-1:

Since the degree-boundof this polynomial is r, we

in fact proved the correctness of the formula

a-b denotes a+(-b) a/b denoted a•(b-1)

1

0 )(

)(

)(r

kkj

jk

kjj

k xx

xx

yxP

1

0 )(

)(

)(r

kkj

jk

kjjt

kt xx

xx

yxP

tjjt

tjjt

ttk

kjjk

kjjt

kt xx

xx

yxx

xx

yxP)(

)(

)(

)(

)( 0 yt

1

0 )(

)(

)(r

kkj

jk

kjj

k xx

xx

yxP

If there are two such polynomials: p1 & p2, then p1-p2 is a polynomial with degree-bound r, which has r roots. This contradicts the fundamental theorem of

Algebra!

12

A Generic A Generic -code-code

Set F to be the finite field Zp for some prime p, and assume for simplicity that = F and m = p.

Given n, let E() be the string of the function f : F F that satisfies:f is the unique polynomial of degree-bound n such that f(i) = i for all 0 i n-1.

13

A Generic A Generic -code (2)-code (2)

E() can be interpolated from any n points.

Hence, for any , E() and E() may agree on at most n – 1 points.

Therefore, E is an (n – 1) / m - code.

14

A Generic A Generic -code - Example-code - Example

p = m = 5, n = 2

= 1, 2 = 3, 1

f(x) = x + 1f(x) = 3x + 3

E() = 1, 2, 3, 4, 0E() = 3, 1, 4, 2, 0

15

Strings & Functions (2)Strings & Functions (2)

We can describe any string as a function f:Hd H (H is a finite field, d is a positive integer).

Given a n we’ll achieve that by choosing H=Zq, where q is the smallest prime greater than ||, and d=logqn.

16

Multivariate PolynomialsMultivariate Polynomials

Definition (polynomial): Let F be a field and let d be some positive integer number. A function p:FdF is a polynomial if it can be written as

for some series of coefficients in the field.h is the degree-bound on each one of the

variables.The total-degree of the polynomial is max{ i0+…+id-1 : ai0…id-1 0 }.

1

0

1

010,...,10

0 1

10

10......),...,(

h

i

h

i

id

iiid

d

d

dxxaxxp

17

-Codes - Home Assignment-Codes - Home Assignment

We’ve seen that univariate polynomials over a finite field F with degree-bound r are -codes for = (r-1)/|F|.

For which multivariate polynomials (over a finite field F, with degree-bound h in each variable and dimension d) are -codes?

Next

18

CurvesCurves

Definition (curve): Let F be a field and let d be some natural number. A (univariate) curve is a function :F Fd of the form

where p1,...,pd are univariate polynomials over F.The degree-bound of is the maximum over the degree-bounds of the polynomials.

))(),...,(()( 1 xpxpx d

19

Vector SpacesVector Spaces

Definition (vector space): Let F be a field and V a set. V is a vector space over F if a binary addition + is defined over V and a scalar multiplication · is defined over V and F s.t

1 u,vV, u+vV2 u,v,wV, (u+v)+w=u+

(v+w)3 u,vV, u+v=v+u4 0V, vV, v+0=v5 vV, -vV, v+(-v)=0

6 vV, aF a·vV7 u,vV, aF a(u+v)=au+av8 vV, a,bF (a+b)v=av+bv9 vV, a,bF (ab)v=a(bv)10 vV, 1·v=v

20

Vector Spaces - ExampleVector Spaces - Example

Let F be a field and let n be a natural number. Fn = { (a1,...,an) | a1,...,anF } is a vector space

over Fwhere for any (a1,...,an),(b1,...,bn)Fn

(a1,...,an) + (b1,...,bn) = (a1+b1,...,an+bn)

and for any (a1,...,an)Fn and cF

c•(a1,...,an) = (c•a1,...,c•an)

21

SubspacesSubspaces

Definition (subspace): A subset W of a vector space V (over a field F) is called a subspace of V if W itself is a vector space over the addition and scalar multiplication operations of V.

22

Affine SubspacesAffine Subspaces

Definition (affine subspace): Let V be a vector space. UV is an affine subspace of V if there exist a subspace W of V and a vV, such that

U = { u | wW : u = w + v }

23

Linear CombinationsLinear Combinations

Definition (linear combination): Let V be a vector space over some field F. Let v1,...,vkV and let a1,...,akF. The sum a1v1+...+akvk is called a linear combination of v1,...,vk with the coefficients a1,...,ak.

Definition (linear dependent): A set of vectors {v1,...,vk} in some vector space V over a field F is linear dependent if there exist a1,...,akF and an 1ik for which ai0, s.t a1v1+...+akvk=0.

Vectors which are not linear dependent are called linear independent.

24

BasisBasis

Definition (Span): Let V be a vector space over some field F. Let KV. Span(K) denotes the subspace of all the linear combination of members of K.

Definition (Basis): Let B{0} be a subset of a vector space V. B is called a basis for V if (a) B is linear independent.(b) Span(B)=V.

25

DimensionsDimensions

Definition (dimension): The number of vectors in any basis of a vector space is called its dimension.

Similarly, the dimension of an affine subspace is the dimension of its corresponding subspace.

26

Restriction of PolynomialsRestriction of Polynomials

Definition (restriction of a polynomial to an affine subspace): Let U be an affine subspace of Fd (where F is a field and d is a positive integer). Let p:FdF be a polynomial. The restriction of p to U is p’:UF, uU p’(u)=p(u).

Definition (restriction of a polynomial to a curve): Let :FFd be a curve (where F is a field and d is a positive integer). Let p:FdF be a polynomial. The restriction of p to is p’(x)=p((x)).

27

Restriction of Restriction of Polynomials - Home Polynomials - Home AssignmentAssignment[1] Prove that the restriction of p to U is a

polynomial. What are its degree-bound and dimension?

[2] The same for .

Next

28

Low Degree Extension (LDE)Low Degree Extension (LDE)

Definition (low degree extension): Let : Hd H be a string (where H is some finite field).

Given a finite field F, which is a superset of H, we define a low degree extension of to F as a polynomial LDE : Fd F which satisfies:

LDE agrees with on Hd (extension).

The degree-bound of LDE is |H| in each variable (low degree).

29

LDE - Home AssignmentLDE - Home Assignment

Let {0,1}n. Write down an expression for LDE.

30

Reading a valueReading a value

Goal: To be able to find the value of an LDE in any point (set of points) of Fd.

LDEx LDE(x)

31

Straightforward ApproachStraightforward Approach

x LDE(x)

Represent the LDE by its coefficients.

Alas, this will require access to |H|d

variables, log|F| bits each, each time!

the coefficients of the dimension-d, degree-bound- |H| LDE

32

““Tricky” ApproachTricky” Approach

x LDE(x)

the value of the LDE in every point in Fd

Represent the LDE by its values in the points of Fd.

Now we only need access to one variable (log|F| bits) each time.

But now we encounter a new problem: we cannot be sure the values we are given are consistent, i.e. correspond to a single dimension-d, degree-bound-|H| polynomial.

33

Consistent ReadersConsistent Readers

In the upcoming lectures we’ll see how to build readers which:

access only a small number of the variables each time.

detect inconsistency with high probability.

We’ll later weaken this notion

34

vv

v

v

v

v

v

v

vv

v

v

v

v

Consistency TestsConsistency Tests

Suppose we have a set of variables which represent the LDE in some manner.A consistency test is a set of local tests.

If the values of the variables are consistent, all the local tests accept.

Otherwise a random test should reject w.h.p.

35

Corresponding GameCorresponding Game

Prover sets values to all variables in the representation.

Verifier picks randomly a single local-test and accepts or rejects according to its output.

The error-probability of a test is the fraction of local tests that may accept although the assigned values do not conform to global consistency.

36

Corresponding GameCorresponding Game

P(0,0,0)

P(0,0,1)

P(0,0,2)

P(0,0,3)

P(0,0,4)

P(0,0,5)

P(0,0,6)

P(0,1,0)

P(0,1,1)

P(0,1,2)

P(0,1,3)

P(0,1,4)

P(0,1,5)

P(0,1,6)

P(0,2,0)

P(0,2,1)

P(0,2,2)

P(0,2,3)

P(0,2,4)

P(0,2,5)

P(0,2,6)

P(0,3,0)

P(0,3,1)

P(0,3,2)

P(0,3,3)

P(0,3,4)

P(0,3,5)

P(0,3,6)

P(6,6,0)

P(6,6,1)

P(6,6,2)

P(6,6,3)

P(6,6,4)

P(6,6,5)

P(6,6,6)

P(0,0,0)

P(0,0,1)

P(0,0,2)

P(0,0,3)

P(0,0,4)

P(0,0,5)

P(0,0,6)

3P(0,1,1)

P(0,1,2)

P(0,1,3)

P(0,1,4)

P(0,1,5)

P(0,1,6)

P(0,2,0)

P(0,2,1)5P(0,2,3

)P(0,2,4)

P(0,2,5)

P(0,2,6)

P(0,3,0)

P(0,3,1)

P(0,3,2)

P(0,3,3)

P(0,3,4)

P(0,3,5)

P(0,3,6)

P(6,6,0)

P(6,6,1)

P(6,6,2)

P(6,6,3)2P(6,6,5

)P(6,6,6)