더북(TheBook)

괄호 및 우선순위 규칙과 함께 이 연산자들을 활용하면 상당히 복잡한 표현식을 만들 수 있으며, 이 표현식은 하나의 불형 함수를 나타낸다. not 연산자는 and보다 우선순위가 높고, and 연산자는 or보다 우선순위가 높다.

논리식에서는 같은 연산을 수행하는 함수가 다른 모습으로 나타나는 경우가 종종 있다. 예를 들어 표현식 (a and b)not (not a or not b)는 대등하다. [표 1.2.11]과 같은 진리표 검증(truth-table proof) 기법을 이용해 모든 경우에 동일한 값으로 평가되는지 확인하면 두 표현식이 대등한지 검증할 수 있다.

▼ 표 1.2.11 a and b와 not (not a or not b)가 동일함을 입증하는 진리표

a

b

a and b

not a

not b

not a or not b

not (not a or not b)

False

False

False

True

True

True

False

False

True

False

True

False

True

False

True

False

False

False

True

True

False

True

True

True

False

False

False

True

 

이렇게 표현식을 조작하는 것에 대해 수학적으로 연구하는 것을 불 논리(Boolean logic)라고 하며, 컴퓨터 과학의 기반이 된다. 불 논리는 컴퓨터 하드웨어 자체의 설계 및 연산에 있어서 핵심적인 역할을 하며, 컴퓨터 과학에 있어서 이론적 기반의 출발점이기도 하다. bool 표현식이 프로그램의 작동을 제어하는 데 사용되므로 여기에서는 일단 bool 표현식을 살펴보자. 일반적으로 관심의 대상이 되는 조건은 불 표현식으로 지정된다. 그러고 나서 표현식이 참으로 평가될 때 실행할 일련의 문장들과 표현식이 거짓으로 평가될 때 실행할 일련의 문장들로 프로그램 코드를 구성한다. 이렇게 코드를 구성하는 방법은 1.3절에서 자세히 설명한다.

 

설명 간소화 | 지금부터 장황하게 설명할 필요가 없을 때는 bool 형 객체 대신 간단히 불형이라고 부른다. 그리고 True 값을 가진 bool 형 객체 대신 간단히 True라고 하며, False 값을 가진 bool 형 객체 대신 간단히 False라고 부른다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.