110 likes | 123 Views
Lecture 19 The Vector Space Z n p (Section 5.1). Theory of Information. About Linear Codes. Linear codes --- most important and widely studied types of codes. Advantages of linear codes over other types of codes: Easier to describe Nearest neighbor decoding easier to implement
E N D
Lecture 19The Vector Space Znp(Section 5.1) Theory of Information
About Linear Codes • Linear codes --- most important and widely studied types of codes. • Advantages of linear codes over other types of codes: • Easier to describe • Nearest neighbor decoding easier to implement • Encoding and decoding messages easier • Code alphabet is a field, so code symbols can be added and multiplied • Etc. • Our attention will focus on the fields Zp, where p is prime. • Remember that Zp={0,1,…,p-1}, and • Znp is the set of all strings over Zp of length n. • Remember everything else from Lecture 3.
Addition and Scalar Multiplication in Znp Assume u=u1u2…unZnp, v=v1v2…vnZnp, and Zp. Addition: u+v = u1u2…un + v1v2…vn = (u1+v1)(u2+v2)…(un+vn) Scalar multiplication: u = (u1u2…un) = (u1)(u2)…(un) Example 5.1.1 In Z43, 1201 + 1212 = 2 (1212) = Theorem 5.1.1 If p is a prime number then Znp together with the above two operations is a vector space over Zp.
Vector Spaces Definition Let F be a field. A vector space over F is a nonempty set V together with two functions: + (addition) of type VVV and (scalar multiplication) of type FVV such that these two operations satisfy the following conditions: Associativity: For allx,y,zV, x+(y+z)=(x+y)+z Commutativity: For allx,yV, x+y=y+x Zero vector property:There exists an element 0V, called the zero vector, such that, for all xV, 0+x=x+0=x Property of negatives: For any xV, there exists another element of V, denoted by –x and calledthe negative of x, such that(-x)+x=0 Scalar multiplication property:For all x,yV and ,F, (x+y) = x+y (+)x = x+x ()x = (x) 1x = x The elements of V are called vectors, and the elements of F are called scalars. F is called the base field of V.
Subspaces of Znp Definition A nonempty subset S of Znp is called a subspace of Znp if the set S, together with the operations of addition and scalar multiplication inherited from Znp, is itself a vector space. Theorem 5.1.2 A nonempty subset S of Znp is a subspace of Znp if and only if it is closed under addition and scalar multiplication. I.e., for all vectors x,yS and every scalar Zp, we have x+yS and xS. • Two observations: • A subspace S of Znp will always contains 0. Because 0x=0 must be in it. • All nonempty subsets of Zn2 are closed under scalar multiplication.
Examples on Subspaces (See the textbook) Example 5.1.2 {0000,0100,0010,0110} is a subspace of Z42. Example 5.1.3 {0000,0001,1000,0110} is not a subspace of Z42. Example 5.1.4 {000,100,200,001,002,101,102,201,202} is a subspace of Z33. Example 5.1.5 {0} and Znp are subspaces of Znp.
Linear Combinations Definition Let x1,x2,…xk be strings in Znp, and let 1, 2,…, k be scalars (i.e. elements of Zp). The string 1x1+ 2x2…+ kxk is called a linear combination of the strings x1,x2,…,xk, with coefficients 1, 2,…, k. If all of the coefficients are 0, then the linear combination is said to be trivial, otherwise it is nontrivial. Example 5.1.6 In Z35, the string x=2(010)+121+3(140)=411 is a (nontrivial) linear combination of 010, 121 and 140, with coefficients 2,1 and 3. The elements of the subspace S1={000,100,200,001,002,101,102,201,202} of Z33 (Example 5.1.4) can be described in terms linear combinations as S1={(100)+(001) | ,Z3}. Because of this, we say that {100,001} generates S1.
Generating Sets Definition Let S be a subspace of Znp. A subset G={g1,…,gk} of S is called a generating set for S if, for any xS, there exist scalars 1,…,k such that x = 1g1 +… + kgk. To indicate that G is a generating set for S, we write S=<G>. Example 5.1.7 {0000,0100,0010,0110}=<0100,0010> (see the textbook). Theorem 5.1.3 Let G be a nonempty set of strings in Znp. The set of all linear combinations of strings in G is a subspace of Znp, called the subspace generated by G, or the subspace spanned by G, and denoted by <G>. Exercise: See that both G1={100,001} and G2={100,001,101} are generating sets for S={000,100,001,101}. G2, however, is a wasteful way to describe S, because it is not minimal.
Bases • Definition Let S be a subspace of Znp. A generating set B of S is said to be a basis • for S if it is a minimal generating set, in the sense that no proper subset of B • generates S. • Example 5.1.8 B={100,001} is a basis for S={000,100,001,101}. Indeed: • B does generate S, because 000 is the trivial combination (i.e. 0(100)+0(001)); • 100=1(100) (i.e. 1(100)+0(001)); • 001=1(001) (i.e. 0(100)+1(001); • 101=100+001 (i.e. 1(100)+1(001)). • No proper subset of B can generate S. Say, {100} does not generate S because • 001 is not a scalar multiple of 100. Similarly for {001}. • We are going to see that bases allow us to describe subspaces (=linear codes) without • listing all of the elements.
Standard Bases; Dimension Example 5.1.9 The set B={e1,e2,e3,e4}={1000,0100,0010,0001} is a basis for Z42. Because any string x = u1u2u3u4 in Z42 can be written as x = u1(1000) + u2(0100) + u3(0010) + u4(0001). More generally: Let ei denote the string in Znp with 0s in every position except the ith position, where it has a 1. Then B={e1,…,en} is a basis for Znp. It is called the standard basis of Znp. Theorem 5.1.6 Let S be a subspace of Znp. Then all bases for S have the same size. This size is called the dimension of S and is denoted by dim(S).
Homework Exercises 3, 6, 8, 9, 12, 13. Remember (and understand) all of the items of this lecture marked as Definition or Theorem.