검수요청.png검수요청.png

논리합

위키원
sms1208 (토론 | 기여)님의 2020년 1월 6일 (월) 16:11 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
이동: 둘러보기, 검색

논리합(disjunction, 論理合, OR)은 수리 논리학에서 주어진 복수 명제에 적어도 1개 이상의 참이 있는지를 나타내는 논리 연산이다. 논리합은 두개의 임의의 명제 P,Q를 논리어「또는 (or)」을 사용하여「P 또는 Q」(P or Q)라고 표시하는 합성명제(合成命題)이다. 이접(離接)·선언명제(選言命題)라고도 한다. 기호 P Q라고 표시하며, 이것은 두 명제 가운데 어느 쪽인가 한 쪽을 주장하는 것이다.

예시

  • 내 키는 160cm 이상이다.
  • 내 몸무게는 50kg 이상이다.

위 두 명제의 논리합은

  • 내 키는 160cm 이상이거나 나의 몸무게는 50kg 이상이다.

가 된다.

특징

PQ 은 부정과 논리곱을 사용했다. ¬(¬P ∧ ¬Q) 와 동일하다. 따라서, 논리합은 부정과 논리곱으로 나타낼 수 있다.

PQ = ¬(¬P ∧ ¬Q)

반대로, 논리곱은 논리합과 부정으로 나타낼 수 있다.

PQ = ¬(¬P ∨ ¬Q)

진리표

P Q의 진리값은 표와 같이 정의한다.

명제 P 명제 Q P ∨ Q
거짓
거짓
거짓 거짓 거짓

즉, P,Q 양쪽이 다 거짓일 때만 거짓이고 P,Q의 한쪽 또는 양쪽이 참일 때는 참이다.

동작논리

논리합(OR)은 +로 표현하고 "또는"을 의미한다.

입력값에 참(1)이 한 개 이상이면 결과값이 참(1)이 되는 논리를 가진다. 입력값의 두 가지 조건 중 하나만 만족해도 된다.

공원 입장료가 "나이가 8세 미만 무료, 65세 이상 무료"라고 했을 때 논리식으로 표현해 보면

나이 · 값 > 8 > 또는 나이 · 값 > 65

입력이 두 개라고 했을때 논리합 연산 결과는 어떻게 될까?

입력값이 두 개이므로 00, 01, 10, 11일 때 각각의 경우를 살펴보면 다음과 같다.

입력값이 두개일때 경우
 

논리합 연산 결과를 표로 정리해 보면,

논리합 연산 결과
 

그림은 스위치 2개, 전구가 1개 있는 병렬회로이다.

스위치 2개, 전구 1개 병렬회로 동작논리
 

스위치가 열렸을 때를 0 닫혔을 때를 1이라고 할 때, 병렬회로는 최소한 스위치가 둘 중에 하나만 닫혀도 전구에 불이 들어온다. 즉 입력값에 최소한 1이 한 개만 있어도 참이 되는 논리합(OR)과 같은 논리로 동작한다.

논리합(OR)의 논리를 집합으로 표현한 그래프
 

참고자료


같이 보기


  검수요청.png검수요청.png 이 논리합 문서는 암호 알고리즘에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.