진리표는 단순명제나 복합명제의 진리값을 표로 나타낸 것입니다. 어떤 명제의 진리값을 결정할 때 유용하게 사용되는 수단이죠.

 

명제는 T(true)/F(false)로 구분되는데, 이를 이용하여 진리표를 생성합니다.

 

가령 p∧q의 진리표는 다음과 같습니다.

 

 

 

 p

 q 

 p∧q 

 T

 T

 T 

 T

 F

 F

 F

 T

 F

 F

 F

 F

 

 

각각 p와 q는 명제이구요, p와 q의 진리값에 의해서 p∧q의 진리값을 결정할 수 있습니다. 저렇게 구성된 것을 진리표라고 합니다.

 

p가 취할 수 있는 진리값은 T/F 2개, q도 T/F 2개입니다. 따라서 가능한 모든 진리값은 2x2 = 4이죠.

위의 진리표를 보면 pq의 진리값이 TT일 때만 p∧q가 T임을 알 수 있습니다. 즉, p와 q가 모두 참이어야만 p∧q가 True값을 가지게 됩니다.

 

 

비슷하게 p∨q의 진리표도 만들어 봅시다.

 

 p 

 q 

 p∨q 

 T 

 T

 T

 T

 F

 T

 F

 T

 T

 F

 F

 F

 

 

p∨q의 진리표는 위와 같습니다. p∨q는 p or q라는 의미인데, p와 q 둘 중 하나만 참이면 참인 진리값을 갖는 명제입니다. 따라서 p와 q가 FF인 경우에만 p∨q는 F라는 진리값을 가지게 되죠.

 

 

 

~A의 진리표도 그려봅시다.

 

 

 A 

 ~A

 T

 F

 F

 T

 

 

명제논리에서 모든 명제는 참이거나 거짓이라고 했죠? 따라서 A가 참이면, A의 부정인 ~A는 거짓입니다. 반대로 A가 거짓이면 ~A는 참이되겠죠.

 

 

 

마지막으로 p→q의 진리표도 그려봅시다.

 

 p 

 q

 p→q

 T

 T

 T

 T

 F

 F

 F

 T

 T

 F

 F

 T

 

 

보통 많은 사람들이 p→q의 진리표를 보고 '어? 이거 이상하지 않아?'라고 생각합니다. 'pq의 진리값이 TT라면 당연히 참이고, TF라면 당연히 p→q는 거짓인 건 알겠는데, 왜 p가 F이면 q의 진리값에 상관없이 p→q는 T이지?'

 

이에 대해서는 논리학상의 문제를 언급해봐야 합니다.

 

논리학에서는 전제가 거짓이면 결론의 값에 상관없이 p→q는 항상 참으로 간주합니다. 이를 vacuous truth라고 부르고, p→q라는 명제는 vacuously true라고 합니다.

 

이것이 어떻게 가능한가에 대해서는 지금부터 설명을 해봐야 합니다.

 

앞서 제가 정의하기를, 모든 명제는 참이거나 거짓이라고 했죠? 그렇다면 p→q의 진리값도 반드시 T/F이어야 합니다. 하지만, p가 F일 경우에 원칙적으로 우리는 p→q의 진리값을 정할 수 없습니다. 하지만 그런 경우에도 반드시 p→q의 진리값은 정해져야 하기 때문에 p가 F일 때 p→q의 진리값을 T로 하자고 약속한 것입니다.

 

... 무슨 소리냐구요? 사례를 들어 쉽게 설명해드리겠습니다.

 

'내일 비가 오면, 과제를 할 것이다'는 명제가 있습니다. p→q에서 각각 p는 '내일 비가 온다'이고, q는 '과제를 할 것이다'에 해당되겠습니다.

 

내일 비가 오고 과제를 한다면 '내일 비가 오면, 과제를 할 것이다(p→q)'는 명제는 참이죠? 그런데, 내일 비가 왔는데, 과제를 하지 않는다면 위의 명제(p→q)는 자연스럽게 거짓이 될 겁니다.

 

하지만 만약 내일 비가 오지 않는다면요? 사실적으로 말하면, 내일 비가 안오면 저 명제에 대해서 우리는 참이나 거짓을 논할 수가 없습니다. 저 명제는 '비가 온다'는 전제로부터 성립되는 명제니까요. 즉, 전제가 부정되는 경우에 대해서 '내일 비가 오면, 과제를 할 것이다'가 참인지 거짓인지는 우리가 알 수 없습니다.

 

논리학자들은 이런 경우에 이런 논리를 펼칩니다. 비가 오지 않는다면, 내일 과제를 하든 안 하든 상관 없게 됩니다. 그리고 이로부터 '내일 비가 오면, 과제를 할 것이다'는 명제가 거짓인지 밝힐 수 없게 됩니다. 거짓임을 밝힐 수 없다면, p→q는 참으로 간주됩니다. 따라서 내일 비가 오지 않는다면 '내일 비가 오면, 과제를 할 것이다'는 참이 되는 것이죠.

 

 

대략의 논의는 이와 같습니다. 중요한 것은, 논리학자들은 조건문에서 전제가 거짓일 경우 p→q의 값은 항상 참으로 여기기로 '약속'했다는 것이죠. 따라서 명제논리체계에서는 적어도 이에 대해서 의심을 가지지 말고, 하나의 정의된 '약속'으로 생각하시면 됩니다.

(이에 대한 자세한 논의와 비판은 http://imnt.tistory.com/84  에서 다루었습니다)

 

따라서, p→q의 진리표는 위와 같습니다.

 

 

가장 기본적인 진리표는 위의 4개와 같구요, 우리가 아는 여러 법칙들과 명제논리의 정리들은 진리표를 활용해서 '모두' 증명가능합니다. 나머지 관련한 것들은 직접 증명해보시거나, 질문을 하시길 바랍니다(중요한 것들은 차후에 다루겠습니다).

 

 ----


2020.03.30. 내용을 첨가합니다.


 6년 전에 쓴 글이라 당시보다 많은 걸 알게 되었습니다. 논리학 입문서에서는 p→q를 위와 같이 정당화하는데, 논리학적 개념에 대한 엄밀한 정립과 비판을 다루는 논리철학에서는 다른 방법으로 이해할 수 있을 겁니다.


1. 수학에서는 참/거짓을 아직 밝혀내지 못한 명제 가령 p의 진위를 가리기 위해 p와 ~p를 동시에 가정한다.

2. 각자에 논의들을 전개해서 어떤 결과를 이끌어냈다
3. 원래의 논의과는 독립적으로, 얻어낸 결과가 수학적으로 잘못되었다는 걸 증명할 수 있다면, 귀류법에 의해 처음 가정한 p 혹은 ~p가 잘못되었다는 걸 알 수 있으므로 처음 가정한 것의 부정을 증명한 셈이 된다
4. 그러나 조건문을 이끌어내는데 있어 타당한 규칙들만을 사용했다면 조건문을 참으로 보아야 한다.

수학에서는 p→q를 p에 타당한 수학적 추론규칙을 사용해서 q를 얻어내는 것으로 이해할 수 있는데, 이때 p가 참인지 아닌지는 위와 같이 아직 밝혀지지 않은 명제에 대해서는 크게 중요하지 않을 수 있습니다. 따라서 p→q를 'p에 타당한 규칙을 통해 q를 얻어낼 수 있다'는 것으로 이해하면, p가 거짓일 때도 타당한 절차를 거쳐 q가 나온다는 것은 사실이므로 p→q를 참으로 정의해야 합니다. p→q를 p가 거짓인 경우 거짓으로 정의하면 위와 같은 수학의 증명방식이 완전히 부정되겠죠..


 가령 골드바하의 추측(4이상의 짝수는 모두 소수의 합이다)이 참인 경우를 가정하고 어떤 결과 B를 얻어낼 수 있다고 합시다. 그런데 B가 다른 방법으로 거짓임이 밝혀졌습니다. 참인 명제에 타당한 규칙을 적용하면 참인 명제가 나와야 한다는 논리학자들의 생각을 따른다면, 골드바하의 추측이 틀렸겠죠. 그러나 그렇다고 해서 골드바하 추측을 가정하고 B를 얻어낸 것 자체가 잘못된 것은 아니므로, 조건문의 전건이 거짓일 때 조건문을 거짓으로 봐서는 안 됩니다. 따라서 참으로 정의합니다.

Posted by 괴델
,