GitHub 자세히보기

Computer Science/이산수학

[이산수학] 명제, 논리 연산자 그리고 진리표, 조건명제 진리표 - 기초 중의 기초!

devdange 2022. 1. 3. 17:08

안녕하셍요! 데브당에입니다.

지난 포스팅에선 이산수학의 개념과 학습의 중요성에 대해 알아보았습니다.

 

[이산수학] 이산수학이란? 개발자가 학습해야하는 이유!

안녕하세요! 데브당에입니다. Computer Science 학습의 시작으로 이산수학에 대해 알아보려 합니다. 아마 컴공을 전공으로 한 대부분의 학생들은 신입생때 필수전공으로 이산수학을 학습했을 것입

devdange.tistory.com

이번 포스팅에서는 컴퓨터 사이언스의 기초 중의 기초인 명제, 논리 연산자 그리고 (조건명제) 진리표에 대해 알아보겠습니다!

명제(Proposition)란?

저는 좀더 쉽고, 직관적으로 의미를 받아들이기 위해 용어의 정의를 알아볼때 영어 혹은 한자를 찾아봅니다.

아래는 명제(proposition)에 대한 영영사전의 사전적 의미입니다.

A statement or assertion* that expresses a judgment or opinion

해석하자면 "판단이나 의견을 표현하는 진술이나 주장" 입니다.

저는 여기서 assertion에 주목하려 합니다.

영한사전에서 사전적 의미를 살펴보면 아래와 같습니다.

 

assertion
[명사]
1. (사실임을) 주장 (=claim)
2. (권리 등의) 행사

 

여기서 끝일까요?

더 나아가 assertion는 프로그래밍 분야에서 또다른 뜻을 가지고 있습니다.

 

assertion
컴퓨터 프로그래밍에서 프로그램 안에 추가하는 참·거짓을 미리 가정하는 문장

 

지금까지 '명제란 무엇인지' 명제에 대해 살짝 맛보았습니다.

이제 명제와 명제를 연산하는 연산자에 대해 본격적으로 알아보도록 하겠습니다.

 

의미

사전적 의미

진실 혹은 거짓으로 진리를 구분할 수 있는 문장


👉 명제는 0 또는 1만을 가지는 컴퓨터 메모리처럼 항상 참과 거짓 둘 중 하나의 값만 가질 수 있습니다.
또한, 여러 개의 명제를 조합하여 연산할 수 있습니다.

예시

1. 맥북은 비싸다 → 참, 거짓을 구분할 수 없으므로 명제가 아님

사람에 따라 맥북이 비싸다고 느끼는 사람이 있고 저렴하다고 느끼는 사람이 있습니다.

2. 숫자 2는 짝수이다 → 명확하게 참, 거짓을 구분할 수 있기 때문에 명제가 맞음

 

논리  연산자

논리연산자는 명제를 연산하기 위한 도구입니다.

이산수학의 기본 연산자로는 6가지가 있습니다. 

아래 표를 살펴보겠습니다.

 

< 기본 연산자 >

연산자 의미 기호 예시
NOT 명제의 참과 거짓을 반전 ¬ ¬p
AND 주어진 복수 명제 모두가 참인지 p ∧ q
OR 복수 명제에 적어도 1개 이상의 참이 있는지 p ∨ q
Exclusive or 주어진 2개의 명제 가운데 1개만 참인지 p ⊕ q
Implication 조건, 결과에 따른 흐름 표현 p → q
Biconditional 쌍방 조건명제로, 두 명제가 일치할때만 참 반환 p ↔ q

 

진리표

진리표에 대해 알아보겠습니다.

간략하게 살펴보자면 아래와 같습니다.

  • 특정한 합성명제 안에서 사용되는 모든 명제가 가능한 경우의 수 표현
  • 각 명제 사이에 관계식의 진리값을 보여주는 표

 👉 아무리 복잡한 합성 명제라도 진리표로 풀어낼 수 있다.

 

조건명제 진리표

많은 분들이 헷갈려하는 조건 명제 진리표에 대해 알아보겠습니다. 

아래 표를 보시면 2번 행을 제외한 나머지는 모두 결과가 True라는 것을 확인하실 수 있습니다.

하지만, 3번 행의 결과가 False 라는 것에 의문을 던지는 분이 많을 것 같습니다.

 

< 조건 명제(p→q) 진리표 >

구분 p q p → q
1 T T T
2 T F F
3 F T T
4 F F T

 

조건명제 진리표를 쉽게 이해하기 위해 예시를 들어보겠습니다.

[예시] 만약 아미(BTS의 공식 팬덤)이면 BTS 노래를 듣는다.
p : 아미(BTS의 공식 팬덤)이다. (이하 '아미이다')
q : BTS 노래를 듣는다.

 

< 예시 - 진리표 >

구분 p q p → q 결과
1 아미이다 BTS 노래를 듣는다. 아미이면 BTS 노래를 듣는다. T
2 아미이다 BTS 노래를 듣지 않는다. 아미이면 BTS 노래를 듣지 않는다. F
3 아미가 아니다 BTS 노래를 듣는다. 아미가 아니면 BTS 노래를 듣는다. T
4 아미가 아니다 BTS 노래를 듣지 않는다. 아미가 아니면 BTS 노래를 듣지 않는다. T

 

해석 (예시진리표 상 구분 번호로 확인해주시기 바랍니다)

  1. 아미이면 당연히 BTS 노래를 들을 것입니다. 따라서 True 임을 알 수 있습니다.
  2. 아미인데 BTS 노래를 듣지 않는 사람이 있을까요?
    p가 True이면서 q는 False이기 때문에 p → q는 False 가 됨을 알 수 있습니다.
  3. 아미가 아니지만 (노래가 좋아서) BTS 노래를 듣는다. 다음 명제는 True임을 알수 있습니다. 
  4. 아미가 아니라면 (관심이 없어서) BTS 노래를 듣지 않는다. 3번과 마찬가지로 문제가 없어보입니다.
    이 역시 True 임을 알 수 있습니다.

 

쉽게 생각하자면

1) p가 참일 경우에는, q가 참일 경우에만 결과가 참이다.

2) p가 거짓일 경우에는, 어떠한 q가 오더라도 명제 흐름에는 영향을 주지 않기 때문에 결과가 항상 참이라는 것입니다.

 

마무리

지금까지 명제, 논리 연산자 그리고 조건명제 진리표에 대해 알아보았습니다.

다음에도 이어서 이산수학에 대해 알아보도록 하겠습니다.

감사합니다!

 

 

GitHub - dayaeLee777/CS_STUDY: Computer Science 공부

Computer Science 공부. Contribute to dayaeLee777/CS_STUDY development by creating an account on GitHub.

github.com