이 논리적 동치가 의미하는 것은 무엇일까?

Download Report

Transcript 이 논리적 동치가 의미하는 것은 무엇일까?

지난 시간에 배운 것
• 명제(proposition)
– 참, 거짓을 판단할 수 있는 문장
• 참, 거짓을 판단하는 근거는?
– 사실 명제(factual statement)
– 논리 명제(logical statement)
– (이외에 다른 종류의 명제는 없는가?)
복합 명제
• 단순 명제들이 연결된 명제
• 한글의 다음 문장을 생각해 보자.
– “너는 밥을 먹을 수도 있고 혹은 라면을 먹을
수도 있다.”
– “해가 서쪽에서 뜨면 1+1=2이다.”
– “네가 중간시험의 어떤 문제라도 푼다면 이 강
좌에서 A을 받을 수 있다.”
– “모든 사람은 꿈을 갖고 있다.”
• 위 문장들이 갖고 있는 문제는?
명제의 연결
• 명제 연결어
– “not”
– “and”
– “or”
– “implies”
– “if and only if”
• 이 연결어들의 의미는 다음의 진리표로 정
의된다.
연결어의 정의
P
Q
¬P
P∧Q
P∨Q P⇒Q P⇔Q
T
T
F
T
T
T
T
T
F
F
F
T
F
F
F
T
T
F
T
T
F
F
F
T
F
F
T
T
Implies (P⇒Q)
If P, then Q
P only if Q
P is a sufficient condition for Q
Q is a necessary condition for P
Q follows from P
Q provides P
Q is a logical consequence of P
Q whenever P
예: “만약 △ABC이 정삼각형이면 △ABC은 이등변 삼각형이다.”
수학의 논리
• 수학의 정리(theorem)는 참(true)인 명제이
다.
• 어떤 명제가 true인 것을 어떻게 증명하나?
– 公理(axium) 혹은 이미 참으로 증명된 명제로부
터 유도한다. (logical deduction: 연역)
– 진리표 혹은 이미 증명된 명제 혹은 定義
(definition)를 사용하여 true임을 증명한다.
(logical inference: 논리적 추론)
출발점: 명제 P0
公理(true라고 약속한 명제)
혹은 이미 증명된 명제
명제 P1
명제 P2
결론 : 명제 Pn
증명(proof)
- 논리적 추론
定理
논리적 동치(logical equivalence)
P
Q
¬P
¬P∨Q
P⇒Q
T
T
F
T
T
T
F
F
F
F
F
T
T
T
T
F
F
T
T
T
어떤 P, Q의 값에 대해서도 두 명제 ¬P∧Q와 P⇒Q의 결과는 같다. 따
라서 두 명제 ¬P∧Q와 P⇒Q는 논리적 동치(항등)라고 한다.
논리적 동치(2)
P Q ¬Q P⇒Q P⇒¬Q P⇒Q (P⇒Q)∧(P⇒¬Q) ¬P
T T
F
T
F
T
F
F
T F
T
F
T
F
F
F
F T
F
T
T
T
T
T
F F
T
T
T
T
T
T
이 논리적 동치가 의미하는 것은 무엇일까?
중복 명제(tautology)
P Q ¬P P⇒Q ¬P∧(P⇒Q)
¬P∧(P⇒Q) ⇒¬P
T T
F
T
F
T
T F
F
F
F
T
F T
T
T
T
T
F F
T
T
T
T
항상 True인 복합 명제를 tautology라고 한다.(대표적 예: P∨¬P)
모순 명제(contradiction)
항상 False인 복합 명제를 모순이라고 한다.
대표적인 모순 명제: P∧¬P
다음의 프로그램은 무엇이 잘못?
while(x <= 3 || x > 3)
x++;
if(x > y)
if(x == y)
return;
Russell’s paradox
두 조각가 선희와 희경이 있다. 선희는 항상 조각을 할 때 참인 문장을
작품에 쓰고, 희경은 항상 거짓 문장을 작품에 쓴다고 한다. 어떤 조각에
“이 조각은 희경이 만든 작품이다” 문장이 쓰여 있다면
모순에 직면하게 된다.
P: 희경이 이 작품을 만들었다.
R: 선희가 이 작품을 만들었다.
Q: “이 조각 작품은 희경이 만든 작품이다”라는 말은 진실이다.
P
Q
P⇒Q
T
F
F
F
F
F
R
Q
P⇒Q
T
F
F
F
F
F
논리적 추론(inference)
• True인 명제에서 다른 명제가 true임을 유
도하는 것
• 논리적 추론으로 잘 알려진 삼단 논법의
몇 가지 예를 들어 보자.
삼단 논법 예1
• 긍정 논법
P ⇒ Q : true
P : true
∴ Q : true
예: 사람은 죽는다. 홍길동은 사람이다. 따라서 홍길동은 죽는다.
이것은 논리적으로 정당한 추론인가?
P
Q
P⇒Q
T
T
T
T
F
F
F
T
T
F
F
T
혹은 다음 명제의 진리값을 계산하면,
((P ⇒ Q )∧P) ⇒ Q
또 다른 삼단 논법의 예
삼단 논법 예2: 부정 논법
P ⇒ Q : true
¬Q : true
∴ Q : true
삼단 논법 예3
P ⇒ Q : true
Q ⇒ R : true
∴ P ⇒ R : true
논리적 추론의 예
한 섬에 두 개의 부족이 있다고 하자. 그 중 한 부족 사람
은 항상 진실만을 말하고, 다른 한 부족 사람은 항상 거짓
말만 한다고 한다. 이때 만일 당신이 그 섬에 가서 그 섬
에 금이 있는지를 물었을 때 한 사람이 다음과 같이 말했
다고 하자.
“내가 항상 진실만을 말한다면 섬에 금이 있고, 섬에 금
이 있으면 나는 항상 진실만을 말한다.”
이 문장을 쌍조건 문장으로 생각하면, 쌍조건 명제의 성
질에 의하여 이 문장을 말한 사람이 어느 부족 사람이든
지 “섬에는 금이 있다”는 명제는 ture이다.
P: “내가 항상 진실만을 말한다.”
Q: 섬에 금이 있다.
R: P⇔Q
부족
P
Q
P⇔Q
참말 부족
T
T
거짓말 부족
F
F
이 사람이 어느 부족의 사람이든지 위의 진리표가 성립되려면
Q는 T이어야 한다.
따라서 이 사람이 어느 부족이건 섬에는 금이 있다.
증명(proof)
• 어떤 명제가 true인 것을 보이는 것이 증명이
다.
• 대부분의 명제는 앞에서 제시한 단순한 삼단
논법으로 증명되지는 않고 여러 단계를 거쳐
서 결론에 도달하게 된다.
• 이러한 증명의 매 단계에서 이전 명제와 새
명제는 논리적 동치 관계에 있어야 한다.
• 다음의 예에서 증명하는 명제의 내용이나 난
이도를 보지 말고, 증명의 각 단계에서 논리
적 추론이 무엇에 근거하고 있으며 정당한지
살펴보도록 하자.
증명의 예1: 직접 증명
모든 정수 n에 대해 n이 짝수면, n2도 짝수다.
P: 정수 n은 짝수다.
Q: n2은 짝수다.
증명:
짝수 n은 n=2k로 표현할 수 있다.(k∈Z)
n2=(2k)2
=4k2
=2(2K2)
따라서 n2도 짝수다.
각 단계에서 논리적 전개 과정은 정당한가?
왜?
증명의 예2: ¬Q⇒ ¬P을 이용
모든 정수 n에 대해 n3이 3의 배수가 아니면, n도 3의 배수가
아니다.
P: n은 정수이고 n2이 짝수다.
Q: n은 짝수다.
¬Q: n은 짝수가 아니다.
¬P: n2은 짝수가 아니다.
증명:
n은 짝수가 아니므로 n=2k+1이다.(k∈Z)
n2=(2k+1)2
=4k2+4k+1
=2(2k2+2k)+1
어떤 짝수에 1을 더하면 홀수가 된다.
따라서 n2은 홀수다.
그러므로 위의 명제는 참이다.
증명의 예3: 모순을 이용
¬P가 거짓이면 P는 참이다.
2는 무리수이다.
P:
2는 무리수이다.
﹁P:
2는 유리수이다.
증명:
a
2는 유리수이면 2 = 가 된다.
b
(a, b는 정수, b≠0,
a
는 lowest term)
b
a2
양변을 제곱하면 2=
b2
2b2=a2
2b2이 짝수면 a2도 짝수다. a2이 짝수면 a도 짝수다.
a가 짝수면 b도 짝수다.
a,b가 짝수이므로 공통 약수를 갖는다.
따라서 2가 lowest term의 유리수라는 것은 거짓이다
그러므로
2는 무리수다.
수학적 귀납법
귀납법(induction)
집합 A가 있다. ∀n∈A P(n)이라는 명제가 참인것을 증명하기위해
모든 원소에 대해서 P(n)이 참인 것을 보이는 것이다.
그러나 이러한 귀납법은 집합 A가 무한 집합이거나 집합이 크기가
크면 불가능한 방법이다.
수학적 귀납법의 원리
하지만 다음과 같은 논리를 적용할 수 있는 명제는 증명할 수 있다.
P(0)는 true
∀n∈A P(n) ⇒ P(n+1)
그렇다면 ∀n∈A P(n)은 true
수학적 귀납법의 틀(template)
1. n=n0일 때 그 문장이 참(true)임을 보인다.
2. 그 문장이 n=k(k> n0 )일 때 참임을 가정하고
n=k+1일 때 참임을 보인다.
예1: 다음을 증명하시오.
n(n  1)( 2n  1)
1  2  n 
6
2
2
2
1 2  3
1 
6
2
1. n=1일 때,
이므로 성립.
2. n=k일 때 성립한다고 가정하면,
12  2 2    k 2 
k (k  1)( 2k  1)
6
(1)
이 성립한다. 식 (1)의 양변에 (k+1)2을 더하면
k (k  1)( 2k  1)
1  2    k  (k  1) 
 (k  1) 2
6
(k  1)( k  2)( 2(k  1)  1)

6
2
2
2
2
따라서 주어진 식은 n=k+1일 때도 성립한다.
따라서 주어진 식은 n≧1에 대하여 성립한다.
예2: 한 나라의 왕이 그들 신하가 얼마나 영리한지 알기 위하여 다음과 같이
신하들에게 말하였다고 한다.
"내가 너희들 중 일부에게 하얀색 모자를 씌우고, 나머지에게는 검정색 모자를
씌울 것이다. 너희들은 서로 말할 수 없고, 자신의 모자 색은 볼 수 없지만
남들이 쓴 모자 색은 볼 수 있다. 내가 한 시간에 한번씩 방에 들어올 텐데
너희들 중 자신이 하얀색 모자를 쓰고 있다는 사실을 아는 순간에 말하여야
한다." 이 문제는 하얀색 모자를 쓴 신하가 n 명이면 그들은 모두 n 시간 안에 그들이
자신이 하얀 모자를 쓰고 있다는 사실을 알 수 있다는 사실이 증명되었다.
n=1일 때, 즉 하얀색 모자를 쓴 신하가 1명이면, 그 신하는 왕이 첫 번째
들어왔을 때 자신이 하얀색 모자를 썼다는 사실을 알 수 있다. 왜냐하면
그 신하는 다른 신하가 모두 검은 모자를 썼는데 반드시 한명 이상은 하얀색
모자를 씌운다고 했으므로 자신이 하얀색 모자를 썼다는 사실을 알 수 있다.
2. n=k일 때, 즉, 하얀색 모자를 쓴 신하가 k명일 때 그들은 k 시간 안에 그들이
하얀색 모자를 썼다는 사실을 안다고 가정하자.
만일 하얀색 모자를 쓴 사람이 k+1 명이라면, 하얀색 모자를 쓴 사람들은 k명이 하얀색
모자를 쓰고 있다는 사실을 알 수 있는데 k 시간일 때 아무도 안 나간다는 사실에서
자신이 하얀 모자를 쓰고 있다는 사실을 알 수 있다. 왜냐하면 자신이 검정 모자를 쓰고
있고 하얀 모자를 쓴 사람이 k명이면 가정에 의하여 k시간에 하얀 모자를 쓴 사람들은
자신이 하얀 모자를 쓰고 있다는 사실을 알았을 것이기 때문이다. 그런데 아무도 안
나간 사실에서 자신이 하얀 모자를 썼다는 사실을 알 수 있고 k+1 시간에 자기가 하얀
모자를 쓰고 있다는 사실을 말할 수 있다.