190 likes | 480 Views
이산수학 (Discrete Mathematics) 행렬 (Matrices). 2014 년 봄학기 강원대학교 컴퓨터과학전공 문양세. Introduction. Matrices. A matrix (say MAY-trix) is a rectangular array of objects (usually numbers). ( 행렬 은 수의 사각형 배열이다 .)
E N D
이산수학(Discrete Mathematics) 행렬 (Matrices) 2014년 봄학기 강원대학교 컴퓨터과학전공 문양세
Introduction Matrices • A matrix (say MAY-trix) is a rectangular array of objects (usually numbers). (행렬은 수의 사각형 배열이다.) • An mn (“m by n”) matrix has exactly m horizontal rows, and n vertical columns. (m개의 행과 n개의 열을 갖는 행렬) • Plural of matrix = matrices • An nn matrix is called a square matrix, whose order is n.(행과 열의 개수가 같은 행렬을 정방행렬이라 한다.) • Tons of applications: • Models within Computational Science & Engineering • Computer Graphics, Image Processing, Network Modeling • Many, many more …
Matrix Equality Matrices Two matrices A and B are equal iff they have the same number of rows, the same number of columns, and all corresponding elements are equal.(두 행렬이 같은 수의 행과 열을 가지며 각 위치의 해당 원소의 값이 같으면 “두 행렬은 같다”고 정의한다.) Example
Row and Column Order (1/2) Matrices The rows in a matrix are usually indexed 1 to m from top to bottom.(행은 위에서 아래로 1~m의 색인 값을 갖는다.) The columns are usually indexed 1 to n from left to right.(열은 왼쪽에서 오른쪽으로 1~n의 색인 값을 갖는다.) Elements are indexed by row, then column.(각 원소는 행 색인, 열 색인의 순으로 표현한다.)
Row and Column Order (2/2) Matrices Let A be mn matrix [ai,j], ith row = 1n matrix [ai,1ai,2 … ai,n], jth column = m1 matrix
Matrix Sums Matrices The sumA+B of two mnmatrices A, B is the mnmatrix given by adding corresponding elements.(A+B는 (i,j)번째 원소로서 ai,j+bi,j를 갖는 행렬이다.) A+B = C = [ci,j] = [ai,j+bi,j] where A = [ai,j] and B = [bi,j] Example
Matrix Products (1/2) Matrices For an mk matrix A and a kn matrix B, the productAB is the mn matrix: I.e., element (i,j) of AB is given by the vector dot product of the ith row of A and the jth column of B (considered as vectors). (AB의 원소 (i,j)는 A의 i번째 열과 B의 j번째 행의 곱이다.)
Matrix Products (2/2) Matrices • Example • Matrix multiplication is not commutative! (교환법칙 성립 안 함) • A = mn matrix, B = rs matrix • AB can be defined when n = r • BA can be defined when s = m • Both AB and BA can be defined when m = n = r = s
(m)· (n)·( (1)+ (k) · (1)) Matrix Multiplication Algorithm Matrices procedurematmul(matrices A: mk, B: kn) fori := 1 tom forj := 1 ton begin ci,j := 0 forq := 1 tok ci,j := ci,j + ai,qbq,j end {C=[ci,j] is the product of A and B} What’s the of itstime complexity? Answer: (mnk)
Identity Matrices (항등 행렬) Matrices The identity matrix of order n, In, is the order-nmatrix with 1’s along the upper-left to lower-right diagonal and 0’s everywhere else.((i,i)번째 원소가 1이고, 나머지는 모두 0인 행렬) AIn = InA = A
Matrix Inverses (역행렬) Matrices For some (but not all) square matrices A, there exists a unique multiplicative inverseA-1 of A, a matrix such that A-1A = In. (정방 행렬 A에 대해서 하나의 유일한 역행렬 A-1이 존재한다.) If the inverse exists, it is unique, and A-1A = AA-1. A I3 A-1
Matrix Transposition (전치 행렬) Matrices If A=[ai,j] is an mn matrix, the transpose of A (often written At or AT) is the nm matrix given byAt = B = [bi,j] = [aj,i] (1in,1jm) Flipacrossdiagonal
Symmetric Matrices (대칭 행렬) Matrices A square matrix A is symmetric iff A=At.I.e., i,jn: aij = aji . Which is symmetric?
p times Powers of Matrices (멱행렬) Matrices If A is an nn square matrix and p0, then: Ap AAA···A (A0 In) Example:
Zero-One Matrices (0-1 행렬) Matrices • Useful for representing other structures. • E.g., relations, directed graphs (later in course) • All elements of a zero-one matrix are 0 or 1 • Representing False & True respectively. • The meetof A, B (both mn zero-one matrices):AB : [aijbij] (= [aijbij]) • The joinof A, B: AB : [aijbij]
Boolean Products (부울 곱) (1/2) Matrices • Let A=[aij] be an mk zero-one matrix,& let B=[bij] be a kn zero-one matrix, • The Boolean product of A and B is like normal matrix multiplication, but • using “” instead “+” • using “” instead of “∙” A⊙B
Boolean Products (부울 곱) (2/2) Matrices Example: Algorithm of Boolean Product ⊙ procedureBoolean product(A,B: zero-one matrices) fori := 1 to m for j := 1 to n begin cij:= 0 for q:= 1tok cij := cij (aiq bqj) end {C = [cij] is the Boolean product of A and B.}
Boolean Powers (부울 거듭제곱) Matrices For a square zero-one matrix A, and any k0,the kth Boolean power of A is simply the Boolean product of k copies of A. (A의 k부울린 거듭제곱) A[k] A⊙A⊙…⊙A, A[0] In Example: k times ⊙ ⊙ ⊙
Homework #4 Matrices