같은 명제는 같은 축에.
p, q, r 아래로 세로선을 내립니다. 원은 해당 축의 정중앙에 놓습니다. 손으로 그려도 명제의 자리를 일관되게 찾을 수 있습니다.
A VISUAL LANGUAGE FOR LOGIC
논리의 흐름을,
눈앞에 그리다.
세로선을 따라 원을 놓고, 두 행의 관계에서 새로운 결론을 읽습니다. Lee, Ho Chan (Hotian)의 ‘활쏘기’를 차근차근 익히는 시각적 명제논리 안내서입니다.
두 증명을 나란히 보기p → q / p ⊢ q
화살은 원을 놓고 사라집니다.
남는 것은, 추론의 자리.
01 / THE LANGUAGE
먼저 명제의 자리를 정합니다. 그다음 원의 모양과 행의 위치를 읽습니다. 점선의 안팎을 짐작할 필요가 없도록, 각 행의 뜻을 고정했습니다.
p, q, r 아래로 세로선을 내립니다. 원은 해당 축의 정중앙에 놓습니다. 손으로 그려도 명제의 자리를 일관되게 찾을 수 있습니다.
●는 p, ○는 ¬p입니다. 아직 참·거짓을 대입하지 않습니다. 원이 없는 자리는 그 행에 해당 명제가 등장하지 않는다는 뜻입니다.
한 행에 놓인 원들을 또는으로 읽습니다. 여러 행은 행 전체를 묶어 그리고로 읽습니다. 서로 다른 행에서 원 하나씩만 골라 결론을 만들지는 않습니다.
두 그림을 번갈아 보세요. ‘둘 중 적어도 하나’와 ‘둘 다’를 위치로 구별합니다.
한 행 · q 또는 r 중 적어도 하나. 둘 다 성립해도 됩니다.
02 / DRAW THE THOUGHT
조건문의 뜻을 유지한 채 원의 자리로 옮깁니다. 그리는 동안의 화살과 식의 조건기호 →는 구별합니다.
완성 · 행 안은 ‘또는’, 행 전체끼리는 ‘그리고’.
이 그림만으로 p나 q가 실제로 성립한다고 결정하지 않습니다. 조건문 하나를 표현한 것입니다.
03 / REASON WITHOUT GUESSING
주어진 전제를 놓고 두 행에서 같은 명제의 반대 원 한 쌍을 선택합니다. 선택한 쌍을 제외한 나머지를 새 행으로 더합니다. 원래 행들은 그대로 둡니다.
두 행과 명제 하나를 선택해 보세요.
(p ∨ X), (¬p ∨ Y) ⊢ X ∨ Y
p가 성립하지 않으면 첫 행 때문에 X가 필요합니다. p가 성립하면 둘째 행 때문에 Y가 필요합니다. 어느 경우든 X 또는 Y가 따라옵니다. 이것이 표준 명제논리의 해소 규칙(resolution)입니다.[2]
이 설명은 규칙 자체가 왜 타당한지를 보여 줍니다. 규칙을 쓸 때마다 p에 값을 대입할 필요는 없습니다. 위의 X와 Y는 원 하나일 수도 있고, 여러 원의 ‘또는’ 묶음일 수도 있으며, 비어 있을 수도 있습니다.
동치변형과 추론은 다릅니다. p → q ≡ ¬p ∨ q는 같은 뜻으로 바꾸는 일입니다. 두 전제에서 새 행을 얻는 것은 결론을 추가하는 일입니다. 새 행 하나로 원래 전제들을 모두 대체하지 않습니다.
03B / TWO WAYS, ONE CONCLUSION
전제를 한 줄씩 쓰면 오른쪽 줄타기에도 곧바로 놓입니다. 왼쪽이 동치규칙으로 식을 전개하는 동안, 오른쪽에서 결론이 드러나는 과정을 함께 따라가 보세요.
같은 전제를 왼쪽의 식과 오른쪽의 원으로 함께 놓습니다.
주어진 전제
전제를 함께 묶고, 같은 뜻의 식으로
명제별 세로선은 처음부터 같은 자리를 지킵니다.
한 행 안의 원은 ‘또는’, 모든 행은 ‘그리고’입니다.
양쪽은 같은 전제와 결론을 사용하고, 재생할 때 한 단계에 같은 시간을 둡니다. 왼쪽은 표시한 동치 전개를, 오른쪽은 전제를 원으로 옮긴 뒤 필요한 행을 얻거나 이미 있는 행의 뜻을 읽는 절차를 보여 줍니다.
조건문을 ¬p ∨ q처럼 바꾸는 과정은 전제를 놓을 때 양쪽에 함께 표시합니다. 이 공통 준비를 마친 다음, 동치 전개와 도해의 추론·읽기를 같은 간격으로 진행합니다. 식 아래의 ‘준비’ 줄은 완료한 변환을 남긴 기록입니다. 화면의 재생 시간은 사람이 증명하는 데 걸리는 시간을 측정한 값이 아닙니다.
원의 배치로 얻는 이점은 식 전체를 거듭 쓰는 양을 줄이고, 사용할 두 행과 한 쌍을 같은 자리에서 찾는 데 있습니다. 여기서는 예제에 표시된 절차를 비교합니다.
A SMALL PAUSE / CHECK YOUR READING
기호를 외우기보다, 어디까지 말할 수 있는지 구별하는 연습입니다.
04 / OPEN LABORATORY
내 논리식을 그림으로 옮기거나 전제와 결론을 직접 입력하세요. 두 행에서 한 쌍을 사용하는 증명 과정을 단계별로 볼 수 있습니다.
05 / CONNECTIONS
카르노맵으로는 식의 간결함을 살펴보고, 활쏘기로는 조건이 이어지는 과정을 읽습니다. 정렬 알고리즘의 작은 판단에도 같은 언어를 적용할 수 있습니다.
다음 두 식은 같습니다. 카르노맵에서는 참인 칸의 묶음을 보고, 활쏘기에서는 동시에 지켜야 할 두 행을 봅니다.
¬p ∨ (q ∧ r)
≡ (¬p ∨ q) ∧ (¬p ∨ r)
카르노맵의 열은 00, 01, 11, 10 순서입니다. 이웃한 칸에서 하나의 입력만 달라지도록 놓습니다.[3]
| p \ qr | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 | 0 |
p가 거짓인 네 칸, 또는 q와 r이 모두 참인 두 칸입니다. 한 칸은 겹칩니다.
배열의 모든 인접한 쌍을 검사했고, 역전이 하나도 없다면 배열은 비내림차순, 즉 같은 값도 허용하는 오름차순입니다. 이 판단을 세 명제로 나누어 봅시다.
(p ∧ ¬q) → r, p, ¬q ⊢ r
원소에 일관된 전순서가 있고, 검사 중 배열이 바뀌지 않는 상황을 가정합니다. 이 한 번의 판단과 별도로, 정렬 프로그램 전체의 불변식·종료·경계 처리는 각각 확인해야 합니다.
모든 이웃에서 앞의 값 ≤ 뒤의 값
첫 행은 ¬p ∨ q ∨ r.
p와 함께 읽고, 다시 ¬q와 함께 읽으면 r이 남습니다.
“같은 함수를 더 간결하게
표현할 수 있을까?”
“이 조건들에서
무엇이 따라올까?”
06 / PRECISION MATTERS
어디에 원을 놓는가만큼, 무엇을 생략하면 안 되는가도 중요합니다. 다음 여섯 가지가 도해를 읽고 추론하는 기준입니다.
(p ∨ q) ∧ (q ∨ r)에서 q는 두 행에 각각 나타납니다. 원 하나로 합쳐 버리면 어느 행의 일부인지 사라집니다. 같은 명제의 축은 공유하되, 등장은 행마다 따로 표시합니다.
p → (q ∧ r)도 ¬p ∨ q와 ¬p ∨ r 두 행으로 그립니다.
p ∨ q ∨ r와 ¬p ∨ ¬q에서 p쌍과 q쌍을 동시에 없애고 r을 얻으면 틀립니다. 예를 들어 p가 참, q, r이 거짓이면 두 전제는 참이지만 r은 거짓입니다.
두 행과 명제 하나를 고르는 방식으로 이 오류를 막습니다. 선택하지 않은 부정·긍정의 원은 그대로 새 행에 포함됩니다.
p ∨ ¬p ∨ q는 항상 참인 행 ⊤입니다. 두 원만 지우고 q를 남기면 안 됩니다. 식을 도해로 바꿀 때는 이 행 전체를 ‘항상 참’으로 정리합니다.
한편 p ∨ p처럼 같은 리터럴이 반복되면 원 하나로 충분합니다.
빈 절 하나는 ⊥, 즉 모순입니다. p 한 행과 ¬p 한 행을 해소하면 이 빈 절을 얻습니다. 도해에서는 빈칸으로 방치하지 않고 반드시 ⊥라고 씁니다.
조건 행이 하나도 없는 판은 ⊤입니다. 추가 제약이 없다는 뜻입니다. 아직 입력하지 않은 편집 화면과도 구별합니다.
p → q와 p → r는 함께 p → (q ∧ r)를 뜻합니다. 이 전제들만으로 q ∧ r이 따라오지는 않습니다. p가 거짓이고 q, r도 거짓인 경우가 허용되기 때문입니다.
여기에 p가 전제로 추가되면 q와 r을 각각 얻을 수 있습니다. 가능하다는 것과 반드시 따라온다는 것을 구별합니다.
(p ∧ q) ∨ r를 단순히 세 원으로 뭉쳐 놓지 않습니다. 분배법칙으로 (p ∨ r) ∧ (q ∨ r)로 바꾼 다음 두 행을 그립니다. 점선이나 우연한 높이에 전체 의미를 맡기지 않습니다.
모든 유한한 고전 명제논리식은 이런 절들의 묶음으로 표현할 수 있습니다. 다만 동치인 식이 반드시 똑같은 그림이 되는 것은 아니며, 전개가 커질 수 있습니다. 실험실의 입력 제한은 이 복잡도를 숨기지 않기 위한 장치입니다.[2]
유한한 전제 집합을 다루는 고전 명제논리에서, 논증이 타당하면 전제들과 결론의 부정을 절 형식으로 모아 해소 규칙을 충분히 적용했을 때 빈 절 ⊥를 얻을 수 있습니다. 모든 필요한 선택을 빠짐없이 탐색하는 해소의 반박 방식은 완전합니다.[2]
그러나 원하는 모든 결론이 전제에서 직접 새 행으로 나타난다는 뜻은 아닙니다. 예를 들어 p에서 p ∨ q가 따라오지만, 반대 원이 없으면 해소할 쌍도 없습니다. 직접 추론에서 더 진행할 수 없다는 사실만으로 ‘틀린 논증’이라고 결론 내리지 않습니다.
‘규칙으로 증명’은 전제의 일관성을 확인한 뒤 결론의 부정을 더하여 해소 반박을 찾습니다. 모든 해소 가능성을 조사해도 빈 절이 나오지 않으면 결론이 따라오지 않는 것으로 판정합니다. 탐색 한도에서 멈추면 판정 미완료로 표시합니다. ‘반례·진리값 확인’을 눌렀을 때만 가능한 진리값 배정을 검사합니다.
07 / AN IDEA, CONTINUED
생각을 식으로만 쓰지 않고,
그 움직임을 눈앞에 놓을 수 있다면.
Hotian’s Arrow는 Lee, Ho Chan (Hotian)의 2008년 논문 A Study on the Logical Diagrams에 소개된 ‘활쏘기’에서 출발합니다. 원문에는 명제별 세로축을 쓰는 ‘외줄타기’와 조건문을 활쏘기 모양의 화살로 나타내는 구상이 담겨 있습니다.[1]
명제별 세로축, 긍정과 부정의 시각적 구별, 위치로 읽는 결합, 활쏘기의 이름과 시각적 발상.
네모를 원으로, 원 배치에 애니메이션을 더하고 완성 후 화살과 가로 연결선은 생략. 행의 의미를 고정하고, 표준 논리의 정규화와 해소 규칙을 명시.
Hotian’s Arrow는 타당한 추론을 세로선과 원의 언어로 읽고 쓰는 방법을 제안합니다. Lee, Ho Chan (Hotian)의 원안에 담긴 시각적 발상을 살리고, 표준 명제논리의 동치변환과 해소 규칙을 연결했습니다.
원문 인쇄면 17쪽의 예제 9행은 앞선 전제에 맞추어 ¬A ∧ ¬B로 읽어야 합니다. 인쇄된 ¬A ∧ ¬D는 잘못된 결론이며, 해당 도해는 A와 B를 사용합니다.
인쇄면 21쪽 예제의 결론 C는 타당합니다. 이 페이지의 ‘원문 예제’에서는 7행의 근거 번호를 바로잡고, 2·3번 전제인 A → D, D → C에서 A → C를 먼저 얻는 순서로 풀이를 구성했습니다.
원문도 큰 실선으로 복합식의 범위를 구별하려고 합니다(16–18쪽). 이 도구는 그 시도를 이어받아, 임의의 복합식에도 적용할 수 있도록 ‘행 안 OR, 행 전체 AND’로 형식을 고정했습니다.
원문 쪽수는 논문에 인쇄된 쪽수입니다. 도해와 예제는 명제논리의 동치변환과 해소 규칙에 맞추어 구성했습니다. 2026년 10월 22일 개정.