수학 개념 지도
논리와 계산(Logic and computation)

불 대수(Boolean algebra)

참과 거짓을 1과 0으로 두고 AND·OR·NOT으로 계산하는 대수. 모든 경우를 진리표⁠(truth table)⁠로 확인할 수 있고, 논리 회로와 컴퓨터 산술의 바탕이다.

¬(A∧B)=¬A∨¬B\lnot(A \land B) = \lnot A \lor \lnot B
먼저 보면 좋은 개념집합의 연산함수

불 대수는 참과 거짓을 1과 0으로 적고, '그리고'(AND, ∧\land), '또는'(OR, ∨\lor), '아니다'(NOT, ¬\lnot)를 곱셈과 덧셈처럼 계산하는 대수입니다. 조지 불이 『논리의 수학적 분석』(1847)과 『사고의 법칙』(1854)에서 논리적 추론을 방정식처럼 다루자고 제안한 데서 시작했습니다. 변수가 0과 1 두 값만 가지므로 어떤 식이든 가능한 입력을 모두 넣어 보는 표 한 장으로 끝까지 확인할 수 있습니다. 이 표가 진리표입니다. 입력이 n개면 진리표는 2n2^n줄이고, n개의 입력을 받아 0이나 1을 내는 함수⁠(function)⁠는 모두 22n2^{2^n}가지입니다. 입력이 둘이면 16가지입니다.

원소⁠(element)⁠ 하나를 정해 두고 '그 원소가 A에 속한다'를 참·거짓으로 읽으면 ∧\land는 교집합⁠(intersection)⁠, ∨\lor는 합집합⁠(union)⁠, ¬\lnot은 여집합⁠(complement)⁠이 됩니다(집합의 연산⁠(set operations)⁠). 한 집합⁠(set)⁠의 모든 부분집합⁠(subset)⁠, 곧 멱집합⁠(power set)⁠이 불 대수를 이루는 까닭이고, 확률⁠(probability)⁠에서 사건⁠(event)⁠을 '그리고·또는·아니다'로 묶는 계산도 같은 대수입니다. 벤 다이어그램(집합을 겹쳐 그린 원으로 나타낸 그림)으로 확인하던 법칙은 모두 진리표로 확인됩니다. 대표가 19세기 영국 수학자 오거스터스 드모르간의 이름을 딴 드모르간 법칙⁠(De Morgan's laws)⁠ ¬(A∧B)=¬A∨¬B\lnot(A \land B) = \lnot A \lor \lnot B입니다. 말로 하면 "'A이고 B'가 아니다"는 "A가 아니거나 B가 아니다"와 같다는 뜻입니다. '비가 오고 춥다'가 거짓이라면, 비가 안 오거나 춥지 않거나 둘 중 적어도 하나입니다. 아래 표의 청록색 두 열은 모든 줄에서 똑같습니다.

줄을 누르면 입력 A, B가 바뀝니다. 노란 테두리가 지금 입력의 줄입니다.

1937년 섀넌은 석사 논문에서 스위치로 만든 회로를 불 대수로 설계하고 단순하게 만들 수 있음을 보였습니다. 스위치 두 개를 한 줄로 이으면 둘 다 닫혀야 전류가 흐르니 AND이고, 나란히 이으면 하나만 닫혀도 흐르니 OR입니다. 이렇게 AND·OR·NOT 같은 연산 하나를 해내는 작은 회로를 논리 게이트라고 합니다. 오늘날 칩 안에 있는 수십억 개의 트랜지스터(전기 신호로 여닫는 아주 작은 스위치)도 결국 이런 게이트를 이룹니다. 한 자리 이진수 두 개를 더하는 반가산기⁠(half adder)⁠는 게이트 두 개로 됩니다. 합의 자리는 S=A⊕BS = A \oplus B(배타적 논리합⁠(exclusive or)⁠, XOR: 두 입력 가운데 정확히 하나만 1일 때 1), 올림은 C=A∧BC = A \land B입니다. 지금 A = , B = 이면 S = , C = , 곧 입니다.

왼쪽 입력 원을 눌러 0과 1을 바꿔 보세요. 노란 선에는 1이, 어두운옅은 선에는 0이 흐릅니다.

XOR은 2를 법으로 하는 덧셈입니다. 1 ⊕ 1 = 0이고, 넘친 1은 올림으로 넘어갑니다. 반가산기 둘과 OR 하나로 올림까지 받는 전가산기⁠(full adder)⁠를 만들고, 이를 줄줄이 이으면 여러 자리 이진수의 덧셈기가 됩니다. 여러 비트를 XOR로 이어 붙이면 1의 개수가 홀수일 때 1, 짝수일 때 0이 나옵니다. 이 값을 함께 보내 두면 비트 하나가 뒤집혔을 때(더 일반적으로는 홀수 개가 뒤집혔을 때) 알아챌 수 있는데, 이것이 패리티 검사⁠(parity check)⁠이고, 해밍 부호⁠(Hamming code)⁠는 이런 검사 여러 개를 겹쳐 뒤집힌 자리까지 찾아냅니다. NAND(AND의 부정) 하나만 있어도 NOT, AND, OR을 모두 만들 수 있어서, 이론상 모든 회로를 한 종류의 게이트로 지을 수 있습니다.

이어지는 곳. 식을 참으로 만드는 입력이 있는지 묻는 충족 가능성 문제(SAT)는 진리표 2n2^n줄을 다 보면 풀립니다. 입력 크기의 다항식⁠(polynomial)⁠만큼의 걸음으로 푸는 방법이 있느냐는 물음은 P 대 NP 문제⁠(P versus NP problem)⁠와 같은 물음입니다. SAT가 NP 완전⁠(NP-complete)⁠이기 때문입니다. 게이트만 이은 회로는 기억이 없습니다. 출력을 입력으로 되먹여 상태를 기억하게 하면 유한 오토마톤⁠(finite automaton)⁠이 되고, 끝없는 테이프를 붙이면 튜링 기계⁠(Turing machine)⁠가 됩니다. 함수만으로 계산을 적는 람다 계산⁠(lambda calculus)⁠에서는 참과 거짓조차 '둘 중 하나를 고르는 함수'로 정의하고, 그 위에 불 대수 전체를 다시 짓습니다. 입력에 가중치⁠(weight)⁠를 곱해 더한 값이 문턱⁠(threshold)⁠을 넘는지로 1과 0을 내는 퍼셉트론⁠(perceptron)⁠ 하나는 AND·OR·NOT을 흉내 낼 수 있지만 XOR는 흉내 낼 수 없습니다. 퍼셉트론은 입력 평면을 직선 하나로 둘로 가를 뿐인데, XOR에서 1이 나오는 입력 (0, 1), (1, 0)과 0이 나오는 입력 (0, 0), (1, 1)은 어떤 직선으로도 가를 수 없기 때문입니다. 참·거짓인 문장을 AND·OR·NOT으로 엮는 논리를 명제 논리라 하는데, 이것은 불 대수 그 자체라서 진리표로 늘 참인 식을 모두 기계적으로 가려낼 수 있습니다. '참'을 '증명이 있다'로 읽는 직관주의 논리⁠(intuitionistic logic)⁠에서는 배중률⁠(law of excluded middle)⁠ A ∨ ¬A가 늘 참이지는 않아서, 불 대수 대신 그보다 약한 헤이팅 대수⁠(Heyting algebra)⁠가 명제들의 구조가 됩니다. 부분집합이 불 대수를 이루는 것은 부분집합 하나가 '원소마다 참·거짓을 답하는 함수' 하나와 일대일로 대응하기 때문입니다. 이 두 값짜리 진릿값⁠(truth value)⁠을 더 풍부한 진릿값의 대상으로 바꾼 세계가 토포스⁠(topos)⁠이고, 그 안의 부분 대상⁠(subobject)⁠들은 일반적으로 헤이팅 대수를 이룹니다. 두 구조 모두에서 '그리고'와 '이면'은 짝을 이룹니다. 불 대수라면 a∧b≤ca \land b \le c와 a≤¬b∨ca \le \lnot b \lor c가 같은 말이어서, b를 부등식의 왼쪽에서 오른쪽으로 옮길 수 있습니다. 이렇게 두 연산이 부등식을 사이에 두고 자리를 맞바꾸는 짝을 갈루아 연결⁠(Galois connection)⁠이라 합니다. 그러나 '모든 자연수⁠(natural number)⁠에 대해'라고 말하는 자연수의 산술로 올라가면 사정이 다릅니다. 참인 문장을 모두, 그리고 참인 문장만 증명해 내는 기계적인 체계는 없습니다. 이것이 괴델의 불완전성 정리⁠(Gödel's incompleteness theorems)⁠입니다.

이 개념이 나오는 큰 생각쌍대성표현 바꾸기

이 개념이 나오는 긴 글

미분에서 회전까지 · 5편 · 복소수와 행렬 곱셈은 회전이다 복소수를 곱하는 일과 행렬로 평면을 돌리는 일은 같은 일이다. 계산 이론 기계가 풀 수 없는 문제 모든 수학 문제를 기계적으로 풀 수 있을까? 러셀의 역설에서 괴델과 튜링까지, 그 질문에 대한 답은 '아니오'였고, 그 증명이 컴퓨터를 낳았다. 계산언어학 말을 세는 기계 문법은 규칙일까, 확률일까? 파니니의 문법에서 촘스키의 위계, 섀넌의 영어 엔트로피, 오늘날의 언어 모델까지. 신경망과 기계 학습 배우는 기계 예를 보여 주면 규칙을 스스로 찾는 기계. 1958년의 퍼셉트론에서 오늘의 심층 신경망까지, 그 밑바닥에는 미분과 연쇄법칙이 있다. 타입 이론과 범주론 증명은 프로그램이다 러셀의 역설을 막으려던 '타입'이 프로그램의 실수를 막는 장치가 되었다. 명제를 타입으로, 증명을 프로그램으로 읽으면 둘이 규칙 하나하나까지 맞아떨어진다. 오늘날 수학자들은 그 사실로 컴퓨터에게 증명을 검사받는다. 게임과 증명 이기는 쪽이 존재한다 "이 판은 백이 이겼다"는 흑이 어떻게 두든 백에게 답이 있다는 말이다. 체스의 체르멜로 정리, ε–δ, 님의 이진법, 폰 노이만의 최소최대와 쌍대성, 논리의 한계를 재는 게임, 끝나지 않는 게임과 선택공리, 대화로 읽는 증명, 겨루며 배우는 신경망까지. 수학의 참을 두 사람의 게임으로 읽는다. 반환과 동적 계획법 같은 계산, 다른 덧셈 가장 짧은 길, 길의 가짓수, 가장 그럴듯한 해석, 갈 수 있는지 없는지. 따로 태어난 알고리즘들이 사실은 한 계산이고, 달라지는 것은 더하기와 곱하기 자리에 무엇을 넣느냐뿐이다. 그렇게 바꿔 넣어도 되는 까닭은 분배법칙 하나다. 범주론 화살표만으로 본 수학 최대공약수와 교집합과 '그리고'는 같은 것이고, 화살표를 뒤집으면 최소공배수와 합집합과 '또는'이 된다. 무엇으로 만들었는지 묻지 않고 어떻게 이어지는지만 보는 언어로, '자연스럽다'는 말의 뜻, 관계만으로 대상을 알아보는 요네다의 생각, 함자로 본 연쇄법칙, 어디에나 있는 수반까지 사이트의 여러 분야를 가로지른다.

이 개념 위에 세워진 것

이 개념을 언급하는 페이지

이 페이지가 가리키는 개념