09 관계 - jullio.pe.krjullio.pe.kr/lecture/2017/12inu2017_d_math_ch09.pdf · 이산수학...

41
이산수학 Discrete Mathematics 인천대학교 컴퓨터공학과 공학시인 이숙 이철호 교수 09 관계

Upload: others

Post on 17-Sep-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

이산수학Discrete Mathematics

인천대학교 컴퓨터공학과

공학시인 이숙 이철호 교수

09 관계

끈의 길이는?문제 :

지름이 20 cm인 두루마리 휴지 3개를 끈으로 묶었다.

이 끈의 길이는?

묶인 부분은 생각하지 않는다. 즉 둘레의 길이를 구는 문제

모델링 :

직사각형의 양 변의 길이 : 40 cm x 2 = 80 cm

반원 2 개의 원주 합 길이(π x 2r) : 20π cm

(단 π를 3.14로 계산)

문제 해결 :

끈(둘레)의 길이는

80 + 20π [cm]

80 + 62.8 = 142.8 [cm]

2

40 cm

오늘의 강의 목표

관계

• 관계와 특성

• n항 관계

• 관계의 표현

• 동치관계

• 부분순서

3

관계와 특성정의 1-page 625, 예제 2

4

두 집합 원소들 사이의 관계 => 순서쌍(Ordered Pair) 사용

순서쌍 집합 => 이진 관계(Binary Relation)

정의 1

A와 B 집합

A에서 B로의 이진 관계 => A x B의 부분 집합

A에서 b로의 이진 관계 => 순서쌍 집합 R

예제 2

A = {0, 1, 2}이고, B = {a, b}일때{(0, a), (0, b), (1, a), (2, b)}는

A에서 B로의 관계

관계와 특성정의 2-page 627

5

정의 2

집합 A에 관한 관계는 A에서 A로의 관계이다.

집합 A의 관계는 A x A 의 부분집합이다.

예제 4

집합 A = {1, 2, 3, 4}

관계 R = {(a, b) | a divides b}

R={(1,1),(1,2),(1,3),(1,4),

(2,2),(2,4),(3,3),(4,4)}

관계와 특성집합 A 에 대한 관계 R

6

• 반사 관계(Reflexive relation) 모든 a∈A 에 대하여 aRa 일 때의 R

• 비반사 관계(Ir-reflexible relation)모든 a∈A 에 대하여 일 때의 R

• 대칭 관계(Symmetric relation) 모든 a, b∈A 에 대하여 aRb 이면 bRa 일 때의 R

• 반대칭 관계(Antisymmetric relation) 모든 a, b∈A 에 대하여 aRb 이고 bRa 이면 a=b 일 때의 R

• 전이(추이) 관계(Transitive relation) 모든 a, b, c∈A에 대하여 aRb 이고 bRc 이면 aRc 일 때의 R

aa R

관계와 특성정의 3, 예제 7 – page 628, 629

7

정의 3

집합 A에 관한 관계 R이 모든 원소 a ∈ A에 대해

(a, a) ∈ R 이면 반사적(reflexive)

예제 7

반사 관계는 ?R1 = {(1, 1), (1, 2), (2, 1), (2, 2), (3, 4), (4, 1), (4, 4)},

R2 = {(1, 1), (1, 2), (2, 1)},

R3 = {(1, 1), (1, 2), (1, 4), (2, 1), (2, 2), (3, 3), (4, 1), (4, 4)},

R4 = {(2, 1), (3, 1), (3, 2), (4, 1), (4, 2), (4, 3)},

R5 = {(1, 1), (1, 2), (1, 3), (1, 4), (2, 2), (2, 3), (2, 4), (3, 3), (3, 4), (4, 4)},

R6 = {(3, 4)}.

R3, R5는 (1, 1), (2, 2), (3, 3), (4, 4) 순서쌍으로 모두 가짐

아니면 비반사적(ir-reflexive)이다.

관계와 특성정의 2, 예제 4- page 627

8

정의 2

집합 A에 관한 관계는 A에서 A로의 관계

예제 4

집합 A => {1, 2, 3, 4}

관계

R={(a, b) | a divides b}

에 속하는가?

집합 A => {(1,1), (1,2), (1,3), (1,4), (2,2), (2,4), (3,3), (4,4)}

관계와 특성정의 4 – page 629

9

정의 4

집합 A에 대한 관계 R이 모든 a, b ∈ A에 대해

(a, b)∈ R 일 때, (b, a)∈ R 이면

대칭적(symmetric)이다.

집합 A에 대한 관계 R이 모든 a, b ∈ A에 대해

(a, b)∈ R 이고, (b, a)∈ R 일 때 a=b 이면반대칭적(antisymmetric)이라 함.

관계와 특성정의 5 – page 631

10

정의 5

집합 A에 대한 관계 R이

모든 a, b, c ∈ A에 대해

(a, b) ∈ R 이고, (b, c) ∈ R 일 때,

(a, c) ∈ R 이면 전이(추이)적(transitive)이라 한다.

관계와 특성관계의 결합, 예제 17 – page 632

11

A에서 B로의 관계는 A x B의 부분 집합

두 집합의 결합되는 방법에 의해

A에서 B로의 두 관계는 결합이 가능

예제 17

A={1, 2, 3}, B={1, 2, 3, 4}

R1 = {(1, 1), (2, 2), (3, 3)}

R2 = {(1, 1), (1, 2), (1, 3), (1, 4)} 에서

R1 ∪ R2 = {(1, 1), (1, 2), (1, 3), (1, 4), (2, 2), (3, 3)},

R1 ∩ R2 = {(1, 1)},

R1 − R2 = {(2, 2), (3, 3)},

R2 − R1 = {(1, 2), (1, 3), (1, 4)}

관계와 특성정의 6 –page 633

12

정의 6

R을 집합 A에서 집합 B로의 관계라 하고,

S를 집합 B에서 집합 c로의 관계 일때

R과 S의 합성은 순서쌍 (a, c)로 구성되는 관계

a ∈ A, c ∈ C 이고,

(a, b) ∈ R과

(b, c) ∈ S인 원소 b ∈ B가 존재.

R과 S의 합성을 S ◦R로 표시

관계와 특성정의 7, 정리 1 –page 634

13

정의 7R이 집합 A에 관한 관계일 때n = 1, 2, 3, … 일 때거듭 제곱 Rn은R1 = R, Rn+1 = Rn ◦ R

정리 1집합 A에 관한 관계 R이 전이(추이)적만일 n = 1, 2, 3, . . . 에 대해Rn ⊆ R

n 항 관계정리 1 - page 638

14

셋 이상의 집합의 원소들 간의 관계

정리 1

A1,A2, . . . , An 집합

이 집합들에 대한 n항 관계는

A1 × A2 ×・ ・ ・×An의 부분 집합

A1, A2, . . . , An : 정의역

N : 차수

n항 관계데이터베이스 관계

15

관계 데이터베이스 모델

레코드, 튜플

필드, 속성, 어트리뷰트

엔트리, 테이블, 관계, 관계변수

n항 관계데이터베이스 관계

16

n항 관계데이터베이스 관계

17

강 개체 타입 사원을 주 개체 타입으로 하는약 개체 타입 부양 가족을표현하기 위한 개체-관계 다이어그램

차수가 2인 경우

차수가 3인 경우

n항 관계데이터베이스 관계

18

선택적으로 참여

필수적으로 참여

n항 관계데이터베이스 관계

19

회사 데이터베이스를 위한 개체-관계 다이어그램

n항 관계데이터베이스 관계

20

표1에 관계에 투사 P1,4 적용=>표2

예제 9

표3의 관계에 투사 P1,2 적용=>표4

예제 10

평점 등록전공

학생

투사 P1,2 적용

투사 P1,4 적용

Page 642

n항 관계데이터베이스 관계

21

표 5와 표 6의 관계를 결합하여 표 7을 생성

예제 11 – Page 643

n항 관계데이터베이스(SQL:structured Query Language)

22

SELECT Departure_timeFROM FlightsWHERE Destination=‘Detroit’

결과 : 08:10 08:47 09:44

항공편(Flights)

예제 12 – Page 643

n항 관계데이터베이스(SQL:structured Query Language)

23

SELECT Professor, TimeFROM Teaching_assignments, Class_scheduleWHERE Department=‘Mathmatics’

결과 : Rosen, 3:00 P.M.

예제 13 – Page 644

관계의 표현행렬 이용:관계 행렬(Relation Matrix)

24

관계 행렬의

행에는 집합 A의 원소,

열에는 집합 B의 원소를 표시

행렬의 각 요소의 값

a ∈ A와 b ∈ B 의 관계에서

관계가 있으면 1

관계가 없으면 0

R={(1, 2), (1, 3), (3, 2)}일 때

행렬에 의한 관계 표현

관계의 표현행렬 이용:관계 행렬(Relation Matrix)

25

A={1, 2, 3, 4}

B={x, y, z}

R={(1, y), (1, z), (3, y), (4, x), (4, z)}

관계의 표현방향성 그래프

26

반사 관계 방향 그래프

방향 그래프

대칭 관계 방향 그래프

전이(추이) 관계 방향 그래프

동치 관계정의 1-page 666, 정의 2-page 667

27

정의 1

집합 A에 관한 관계가

반사적, 대칭적, 전이(추이)적이면

집합 A와 관계 R은 동치 관계이다.

정의 2

동치 관계로 두 원소 a와 b가 관계되어 있을 때,

이를 동치라 함.

a와 b가 특정 동치 관계에 의한 동치 원소임 표시 : a~b

동치류:Equivalence Class정의 3-page 669

정의 3

R이 집합 A와 동치 관계 일때,

A의 원소 a와 관련된 모든 원소의 집합을 a의 동치류라함.

R에 관한 a의 동치류는 [a]R로 표시

하나의 관계 일 때는 [a]로 표시

R이 집합 A에 관한 동치 관계이면,

원소 a의 동치류는 [a]R = {s | (a, s) ∈ R}.

b ∈ [a]R이면, b를 대표(representative)라고 함

28aRb, [a] = [b], [a] ∩ [b] = ∅정리 1

부분 순서정의 1-page 679

29

정의 1부분 순서(partial ordering) : 집합 S에 관한 관계 R이 반사적, 반대칭적, 전이적인 관계

부분 순서 R과 집합 S를 부분 순서 집합(partial ordered set, poset)이라 함

표시 (S, R):

S의 member를 부분 순서 집합의원소(element)라 함

부분 순서부분 순서 관계는 관계 ≤를 일반화하는 것

집합 A에 대한 관계 R이 부분 순서 관계일 때

(a, b)∈R 을 나타내기 위해서

‘ ’를 사용하여 라고 나타냄

이고 이면 라고 나타냄

‘a가 b 보다 우선한다(a precedes b)’라는 의미.

30

ba

ba ba ba

부분 순서

31

집합 A에 대한 관계 R 이 부분 순서 관계이고

a, b∈A 일 때

또는 이면 a와 b는 비교 가능(comparable)

또는 이면 a와 b는 비교 불가능(noncomparable)

완전 순서 관계(total order relation)

또는 선형 순서 관계(linear order relation) :

집합 A 에 속하는 원소들의 모든 쌍이 비교 가능할 때의 R

완전 순서 집합(totally ordered set)

또는 선형 순서 집합(linearly ordered set) : 집합 A

ba abba ab

정의 2/3/4 ‐ page 680

부분 순서하세 도표(Hasse Diagrams)

32

독일의 수학자 하세(Helmut Hasse, 1898~1979)

부분 순서 집합을 그래프로 나타낼 때 사용

방향 그래프의 일종으로 유한한 부분 순서 집합의 방향성그래프에서 화살표는 표시하지 않고, 모든 연결선(edge)을 트리(tree)와 같이 모두 아래 방향을 향하도록 그림.

모든 순환(loop)은 표시하지 않고

집합 A의 원소 x, y, z에서 x ≲ y이고

y ≲ z를 만족하는 y가 존재하지 않을 경우에만

x에서 z로의 연결을 그려줌

부분 순서하세 도표(Hasse Diagrams)

33

방향 그래프 하세 도표

({1, 2, 3, 4}, ≤)에 대한 하세 도표 만들기

관계 R={(1, 1), (1, 2), (1, 3), (1, 4), (2, 2), (2, 4), (3, 3), (3, 4), (4, 4)}

관계 R={(1, 1), (1, 2), (1, 3), (1, 4), (2, 2), (2, 4), (3, 3),(4, 4)}

부분 순서

34

극대 원소(Maximal): 어떤 원소보다 작지 않음

극소 원소(Minimal): 어떤 원소보다 크지 않음

최대 원소: 어떤 원소보다 큰 원소

최소 원소: 어떤 원소보다 작은 원소

상한계(upper bound) :

poset 내 부분 집합의 어떤 원소 보다도 큰 원소

하한계(lower bound) :

poset 내 부분 집합의 어떤 원소 보다도 작은 원소

최소 상한계(least upper bound) :

포셋 내 부분 집합 A의 다른 모든 상한보다 작은 상한이면

A의 최소 상한

최대 하한계(greatest lower bound) :

포셋 내 부분 집합 A의 다른 모든 하한보다 큰 상한이면

A의 최대 하한

부분 순서최소 원소, 최대 원소

35

(a) 최소 원소 a, 최대 원소 없음

(b) 최소 원소, 최대 원소 없음

(c) 최소 원소 없음, 최대 원소 d

(d) 최소 원소 a, 최대 원소 d

성당과 시장(The Cathedral and the Bazaar)

36

에릭 레이먼드 작성

자유 소프트웨어 철학을 대변하는 유명한 글

리눅스 커널 개발 과정과 패치메일이라는 오픈 소스 프로젝트를 개발한 경험으로 작성

오픈 소스 개발 방식의 유효성을 설명(1997년 5월 27일 리눅스 회의에서 처음 공개)

성당 모델:

출시 때에만 소스 코드를 공개

그 사이에는 제한된 개발자들만 소스 코드에 접근 가능한 개발 모델

GNU 이맥스와 GNU 컴파일러 모음이 예

시장 모델:

소스 코드가 인터넷으로 일반에 공개된 상태로 개발되는 모델

리눅스 커널 프로젝트의 리더인 리누스 투르발스가 이 방식을 발명

페치메일 프로젝트에 자신이 이 모델을 적용

성당과 시장(The Cathedral and the Bazaar)

37

시장 모델 :

리누스 법칙 :

"보는 눈만 많다면, 어떤 버그라도 쉽게 잡을 수 있다"

많은 사람이 테스트하고

훑어보고 실험해 볼 수 있도록

코드가 공개되어 있으면

버그는 빨리 잡힐 것이란 뜻

성당 모델 :

소스 코드를 여러 명의 개발자들만 볼 수 있으므로

버그를 잡는 데에

엄청난 시간과 노력이 든다고 주장

성당과 시장(The Cathedral and the Bazaar)

GNU 이맥스와 GCC를 포함한

많은 오픈 소스와 자유 소프트웨어 프로젝트들이

시장식의 열린 개발 모델을 사용

넷스케이프가 넷스케이프 커뮤니케이터의 소스를 공개한 것

현재 성당 모델은

상용 소프트웨어의 전형적인 개발 방식

"시장과 성당"이라는 구문은

종종 상용 소프트웨어와 오픈 소스 소프트웨어를 비유하는 데에 사용

자유 소프트웨어들 중에 두 종류를 비교하여 설명

성당과 시장의 예는

위키백과는 시장식의 프로젝트이고,

누피디아나 브리태니커 백과사전은 성당형의 프로젝트

38

칸에 수 채우기“마방진”

39

다리 건너기 ???

4명이 다리를 건너야 한다.

다리를 건너는 데 각각

1번 사람은 1분, 2번 사람은 2분,

3번 사람은 5분, 4번 사람은 10분 걸린다.

2명만 건널 수 있는 다리를

밤이라서 손전등으로 한 사람이 반대 쪽으로

바래다 주어야 한다.

4명이 모두 건너는 데 소용되는 최소 시간은?

이 때의 방법은?

40

추가 자료들

41

제4차 산업혁명 특강https://youtu.be/tUtZD_5nzc0https://youtu.be/e3xax1auqn0 특강

수자원공사강연

제4차 산업혁명 특별기획(KBS)- 기계와의 대결.1편 車, 인간을 넘다https://youtu.be/‐ihUzVbABic

제4차 산업혁명 특별기획(KBS)- 기계와의 대결. 2편 대결은 끝나지 않았다https://youtu.be/r788ZBDcuRY

여러분들의 5년후10년후의비전은있으신가요?