A VISUAL LANGUAGE FOR LOGIC

Hotian’sArrow.

논리의 흐름을,
눈앞에 그리다.

세로선을 따라 원을 놓고, 두 행의 관계에서 새로운 결론을 읽습니다. Lee, Ho Chan (Hotian)의 ‘활쏘기’를 차근차근 익히는 시각적 명제논리 안내서입니다.

두 증명을 나란히 보기
Original idea Lee, Ho Chan (Hotian) · 2008Interactive edition 2026
DRAW. READ. REASON.01 — 03

p → q / p ⊢ q

↳

화살은 원을 놓고 사라집니다.
남는 것은, 추론의 자리.

긍정 표기부정 표기줄타기

01 / THE LANGUAGE

세 가지만 알면,
그림이 읽힙니다.

먼저 명제의 자리를 정합니다. 그다음 원의 모양과 행의 위치를 읽습니다. 점선의 안팎을 짐작할 필요가 없도록, 각 행의 뜻을 고정했습니다.

A. 줄타기

같은 명제는 같은 축에.

p, q, r 아래로 세로선을 내립니다. 원은 해당 축의 정중앙에 놓습니다. 손으로 그려도 명제의 자리를 일관되게 찾을 수 있습니다.

B. 두 종류의 원

원의 속은 ‘말의 형태’.

p명제 그대로
¬p명제의 부정

●는 p, ○는 ¬p입니다. 아직 참·거짓을 대입하지 않습니다. 원이 없는 자리는 그 행에 해당 명제가 등장하지 않는다는 뜻입니다.

C. 행의 약속

안에서는 ‘또는’, 함께는 ‘그리고’.

(¬p ∨ q)그리고(¬p ∨ r)

한 행에 놓인 원들을 또는으로 읽습니다. 여러 행은 행 전체를 묶어 그리고로 읽습니다. 서로 다른 행에서 원 하나씩만 골라 결론을 만들지는 않습니다.

같은 원, 다른 위치

행이 바뀌면
문장의 뜻도 바뀝니다.

두 그림을 번갈아 보세요. ‘둘 중 적어도 하나’와 ‘둘 다’를 위치로 구별합니다.

한 행 · q 또는 r 중 적어도 하나. 둘 다 성립해도 됩니다.

02 / DRAW THE THOUGHT

화살이 지나간 자리에,
원의 언어가 남습니다.

조건문의 뜻을 유지한 채 원의 자리로 옮깁니다. 그리는 동안의 화살과 식의 조건기호 →는 구별합니다.

줄타기 도해SVG 저장

완성 · 행 안은 ‘또는’, 행 전체끼리는 ‘그리고’.

HOW TO READ

‘p이면 q이다’를 그립니다.

p → q≡ 뜻이 같음¬p ∨ q
  1. p축에 빈 원을 놓습니다. p의 부정형 ¬p입니다.
  2. 같은 행의 q축에 검은 원을 놓습니다.
  3. 한 행이므로 ‘¬p 또는 q’라고 읽습니다.

이 그림만으로 p나 q가 실제로 성립한다고 결정하지 않습니다. 조건문 하나를 표현한 것입니다.

03 / REASON WITHOUT GUESSING

참·거짓을 넣지 않고,
한 수씩 증명합니다.

주어진 전제를 놓고 두 행에서 같은 명제의 반대 원 한 쌍을 선택합니다. 선택한 쌍을 제외한 나머지를 새 행으로 더합니다. 원래 행들은 그대로 둡니다.

1두 행을 고른다
2같은 축의 한 쌍을 고른다
3나머지를 새 행에 더한다

주어진 전제

보일 것

도해 저장
준비

전제부터 놓습니다.

왜 이 한 쌍을 사용해도 될까요? 추론의 근거

(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

같은 논증,
두 방식으로 나란히.

전제를 한 줄씩 쓰면 오른쪽 줄타기에도 곧바로 놓입니다. 왼쪽이 동치규칙으로 식을 전개하는 동안, 오른쪽에서 결론이 드러나는 과정을 함께 따라가 보세요.

전제 놓기0 / 0

같은 전제를 왼쪽의 식과 오른쪽의 원으로 함께 놓습니다.

01 / EQUIVALENCE

동치로 전개하기

전제 대기

주어진 전제

    전제를 함께 묶고, 같은 뜻의 식으로

    02 / HOTIAN’S ARROW

    줄타기로 읽기

    전제 대기

    명제별 세로선은 처음부터 같은 자리를 지킵니다.

    전제가 들어올 자리를 마련했습니다.

    한 행 안의 원은 ‘또는’, 모든 행은 ‘그리고’입니다.

    두 방식의 단계는 어떻게 비교하나요?

    양쪽은 같은 전제와 결론을 사용하고, 재생할 때 한 단계에 같은 시간을 둡니다. 왼쪽은 표시한 동치 전개를, 오른쪽은 전제를 원으로 옮긴 뒤 필요한 행을 얻거나 이미 있는 행의 뜻을 읽는 절차를 보여 줍니다.

    조건문을 ¬p ∨ q처럼 바꾸는 과정은 전제를 놓을 때 양쪽에 함께 표시합니다. 이 공통 준비를 마친 다음, 동치 전개와 도해의 추론·읽기를 같은 간격으로 진행합니다. 식 아래의 ‘준비’ 줄은 완료한 변환을 남긴 기록입니다. 화면의 재생 시간은 사람이 증명하는 데 걸리는 시간을 측정한 값이 아닙니다.

    원의 배치로 얻는 이점은 식 전체를 거듭 쓰는 양을 줄이고, 사용할 두 행과 한 쌍을 같은 자리에서 찾는 데 있습니다. 여기서는 예제에 표시된 절차를 비교합니다.

    A SMALL PAUSE / CHECK YOUR READING

    그림을 읽는 감각,
    네 문제로 확인해 보세요.

    기호를 외우기보다, 어디까지 말할 수 있는지 구별하는 연습입니다.

    04 / OPEN LABORATORY

    내 문장으로,
    직접 시험해 보세요.

    내 논리식을 그림으로 옮기거나 전제와 결론을 직접 입력하세요. 두 행에서 한 쌍을 사용하는 증명 과정을 단계별로 볼 수 있습니다.

    예제

    기호 버튼 없이 ! 부정, & 그리고, | 또는, -> 조건, <-> 쌍조건을 입력해도 됩니다. 명제 이름은 영문자·밑줄로 시작하는 24자 이내의 영문자·숫자·밑줄입니다. 대문자 T/F는 항상 참/거짓 상수입니다.

    SAME MEANING, NEW FORM

    SVG 저장

    변환의 뜻과 범위

    조건과 쌍조건을 풀고, 부정을 명제 바로 앞으로 옮긴 뒤, 분배법칙으로 ‘또는’ 행들을 만듭니다. 이 형태를 연언 정규형(CNF)이라고 합니다. 원래 식과 같은 진리조건을 갖지만, 가장 짧거나 유일한 그림이라는 뜻은 아닙니다. 큰 식은 전개 과정에서 행이 많이 늘어날 수 있습니다.[2]

    이 도구는 명제 8개, 전개된 행 64개 이내의 예제를 다룹니다. 제한을 넘으면 계산을 멈추고 이유를 표시합니다.

    05 / CONNECTIONS

    이미 알고 있는 생각에,
    새로운 시선을 더합니다.

    카르노맵으로는 식의 간결함을 살펴보고, 활쏘기로는 조건이 이어지는 과정을 읽습니다. 정렬 알고리즘의 작은 판단에도 같은 언어를 적용할 수 있습니다.

    01 / 카르노맵과 나란히

    같은 논리함수,
    두 가지 읽는 방법.

    다음 두 식은 같습니다. 카르노맵에서는 참인 칸의 묶음을 보고, 활쏘기에서는 동시에 지켜야 할 두 행을 봅니다.

    ¬p ∨ (q ∧ r)
    ≡ (¬p ∨ q) ∧ (¬p ∨ r)

    카르노맵의 열은 00, 01, 11, 10 순서입니다. 이웃한 칸에서 하나의 입력만 달라지도록 놓습니다.[3]

    KARNAUGH MAP 1 = 참 · 0 = 거짓
    p \ qr00011110
    01111
    10010

    p가 거짓인 네 칸, 또는 q와 r이 모두 참인 두 칸입니다. 한 칸은 겹칩니다.

    같은 뜻을 행으로 읽으면
    02 / 정렬의 작은 판단

    조건을 빠뜨리지 않았는지,
    한 행씩 확인합니다.

    배열의 모든 인접한 쌍을 검사했고, 역전이 하나도 없다면 배열은 비내림차순, 즉 같은 값도 허용하는 오름차순입니다. 이 판단을 세 명제로 나누어 봅시다.

    p
    모든 인접한 쌍을 검사했다.
    q
    인접한 역전이 발견되었다.
    r
    배열이 오름차순이다.

    (p ∧ ¬q) → r, p, ¬q ⊢ r

    원소에 일관된 전순서가 있고, 검사 중 배열이 바뀌지 않는 상황을 가정합니다. 이 한 번의 판단과 별도로, 정렬 프로그램 전체의 불변식·종료·경계 처리는 각각 확인해야 합니다.

    2479

    모든 이웃에서 앞의 값 ≤ 뒤의 값

    첫 행은 ¬p ∨ q ∨ r.
    p와 함께 읽고, 다시 ¬q와 함께 읽으면 r이 남습니다.

    카르노맵의 질문

    “같은 함수를 더 간결하게
    표현할 수 있을까?”

    활쏘기의 질문

    “이 조건들에서
    무엇이 따라올까?”

    06 / PRECISION MATTERS

    예쁜 그림에,
    분명한 규칙을 담습니다.

    어디에 원을 놓는가만큼, 무엇을 생략하면 안 되는가도 중요합니다. 다음 여섯 가지가 도해를 읽고 추론하는 기준입니다.

    01같은 원을 여러 행에서 공유하지 않습니다.

    (p ∨ q) ∧ (q ∨ r)에서 q는 두 행에 각각 나타납니다. 원 하나로 합쳐 버리면 어느 행의 일부인지 사라집니다. 같은 명제의 축은 공유하되, 등장은 행마다 따로 표시합니다.

    p → (q ∧ r)도 ¬p ∨ q와 ¬p ∨ r 두 행으로 그립니다.

    02반대 원은 한 번에 한 쌍만 사용합니다.

    p ∨ q ∨ r와 ¬p ∨ ¬q에서 p쌍과 q쌍을 동시에 없애고 r을 얻으면 틀립니다. 예를 들어 p가 참, q, r이 거짓이면 두 전제는 참이지만 r은 거짓입니다.

    두 행과 명제 하나를 고르는 방식으로 이 오류를 막습니다. 선택하지 않은 부정·긍정의 원은 그대로 새 행에 포함됩니다.

    03같은 행의 p와 ¬p는 ‘항상 참’입니다.

    p ∨ ¬p ∨ q는 항상 참인 행 ⊤입니다. 두 원만 지우고 q를 남기면 안 됩니다. 식을 도해로 바꿀 때는 이 행 전체를 ‘항상 참’으로 정리합니다.

    한편 p ∨ p처럼 같은 리터럴이 반복되면 원 하나로 충분합니다.

    04빈 행과 행이 없는 판을 구별합니다.

    빈 절 하나는 ⊥, 즉 모순입니다. p 한 행과 ¬p 한 행을 해소하면 이 빈 절을 얻습니다. 도해에서는 빈칸으로 방치하지 않고 반드시 ⊥라고 씁니다.

    조건 행이 하나도 없는 판은 ⊤입니다. 추가 제약이 없다는 뜻입니다. 아직 입력하지 않은 편집 화면과도 구별합니다.

    05조건의 뒷부분을 곧바로 사실로 읽지 않습니다.

    p → q와 p → r는 함께 p → (q ∧ r)를 뜻합니다. 이 전제들만으로 q ∧ r이 따라오지는 않습니다. p가 거짓이고 q, r도 거짓인 경우가 허용되기 때문입니다.

    여기에 p가 전제로 추가되면 q와 r을 각각 얻을 수 있습니다. 가능하다는 것과 반드시 따라온다는 것을 구별합니다.

    06복잡한 식의 범위는 정규화로 명시합니다.

    (p ∧ q) ∨ r를 단순히 세 원으로 뭉쳐 놓지 않습니다. 분배법칙으로 (p ∨ r) ∧ (q ∨ r)로 바꾼 다음 두 행을 그립니다. 점선이나 우연한 높이에 전체 의미를 맡기지 않습니다.

    모든 유한한 고전 명제논리식은 이런 절들의 묶음으로 표현할 수 있습니다. 다만 동치인 식이 반드시 똑같은 그림이 되는 것은 아니며, 전개가 커질 수 있습니다. 실험실의 입력 제한은 이 복잡도를 숨기지 않기 위한 장치입니다.[2]

    ‘완전한 증명 체계’라는 말은 어디까지일까요? 심화 읽기

    유한한 전제 집합을 다루는 고전 명제논리에서, 논증이 타당하면 전제들과 결론의 부정을 절 형식으로 모아 해소 규칙을 충분히 적용했을 때 빈 절 ⊥를 얻을 수 있습니다. 모든 필요한 선택을 빠짐없이 탐색하는 해소의 반박 방식은 완전합니다.[2]

    그러나 원하는 모든 결론이 전제에서 직접 새 행으로 나타난다는 뜻은 아닙니다. 예를 들어 p에서 p ∨ q가 따라오지만, 반대 원이 없으면 해소할 쌍도 없습니다. 직접 추론에서 더 진행할 수 없다는 사실만으로 ‘틀린 논증’이라고 결론 내리지 않습니다.

    ‘규칙으로 증명’은 전제의 일관성을 확인한 뒤 결론의 부정을 더하여 해소 반박을 찾습니다. 모든 해소 가능성을 조사해도 빈 절이 나오지 않으면 결론이 따라오지 않는 것으로 판정합니다. 탐색 한도에서 멈추면 판정 미완료로 표시합니다. ‘반례·진리값 확인’을 눌렀을 때만 가능한 진리값 배정을 검사합니다.

    07 / AN IDEA, CONTINUED

    2008년의 발상,
    오늘의 언어로.

    20082026

    Original concept & name
    Lee, Ho Chan (Hotian)

    생각을 식으로만 쓰지 않고,
    그 움직임을 눈앞에 놓을 수 있다면.

    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’로 형식을 고정했습니다.

    기록과 참고 자료

    1. Lee, Ho Chan. (2008). A Study on the Logical Diagrams. Master’s thesis, Ethics Education Major, The Graduate School of Education, Hankuk University of Foreign Studies. 외줄타기 12–18쪽, 활쏘기 19–21쪽. 저자가 제공한 원문을 참고했습니다.
    2. Stanford, Introduction to Logic — Chapter 6: Resolution Proofs 절 형식, 해소 규칙, 반박 방식의 근거. 기본 명제논리는 Chapter 2 참고.
    3. MIT OpenCourseWare, Computation Structures — 4.1 Annotated Slides 카르노맵의 배치와 묶음 읽기.

    원문 쪽수는 논문에 인쇄된 쪽수입니다. 도해와 예제는 명제논리의 동치변환과 해소 규칙에 맞추어 구성했습니다. 2026년 10월 22일 개정.