1. 형식적 증명이란
형식적 증명(Formal Proof) 은 개별 추론 규칙(블록)들을 연결하여 거대한 결론(건축물)을 완성하는 과정이다.
레고 블록 비유
| 개별 블록 | 추론 규칙 (Modus Ponens, Resolution 등) |
| 설계도 | 증명 전략 (어떤 규칙을 어떤 순서로) |
| 시작 부품 | 가정 (Premises) |
| 완성 작품 | 결론 (Conclusion) |
| 부실 블록 1개 | 전체 무너짐 ❌ |
💡 단 하나의 추론 규칙 적용이라도 잘못되면 전체 증명이 무효가 된다. 그래서 각 단계마다 어떤 규칙을 적용했는지 명시하는 것이 형식적 증명의 핵심 규칙이다.
2. 형식적 증명의 4대 특징
| 체계적인 단계 | 각 단계는 명확한 추론 규칙에 따라 진행 |
| 가정에서 결론으로 | 참으로 주어진 전제에서 시작 → 목표 결론에 도달 |
| 추론 규칙의 활용 | 각 단계의 '연결재' 역할 |
| 오류 불허 | 단 하나의 논리적 오류도 증명 전체를 무효화 |
형식적 증명의 구조
[가정 1] : 주어진 전제 1
[가정 2] : 주어진 전제 2
⋮
[Step 1] : (가정으로부터 도출) ... 적용한 규칙 명시
[Step 2] : (Step 1로부터 도출) ... 적용한 규칙 명시
⋮
[결론] : 목표 명제 도달
핵심은 시작점(가정) → 연결재(추론 규칙) → 도착점(결론) 의 3단 구조다.
3. 증명 작성의 5단계 전략 ⭐ 시험 핵심
형식적 증명 문제는 다음 5단계로 접근하면 거의 모든 문제를 풀 수 있다.
| 1단계 | 일상 문장을 명제 변수로 치환 | "어떤 명제를 P, Q, R로 둘까?" |
| 2단계 | 모든 가정을 논리식으로 표현 | "각 전제는 어떤 논리 구조인가?" |
| 3단계 | 목표 결론 확인 | "최종적으로 도달해야 할 명제는?" |
| 4단계 | 추론 규칙으로 단계 연결 | "어떤 규칙을 어떤 순서로?" |
| 5단계 | 각 단계마다 적용 규칙 명시 | "이 단계는 무슨 규칙으로 도출됐나?" |
💡 시험 만점 비결: 4단계에서 막힐 때는 결론에서 거꾸로 역추적해보자. "결론을 얻으려면 직전 단계가 무엇이어야 하나?" 를 반복하면 길이 보인다.
4. 종합 예제 ⭐⭐⭐ — 일몰 전에 집에 도착하기
이번 강의 핵심 예제다. PDF에서 강조된 종합 증명 문제를 단계별로 풀어본다.
문제
다음 가정들로부터 "일몰 전에 집에 도착할 것이다" 라는 결론을 형식적으로 증명하시오.
가정 1: "오늘 오후는 맑지 않았고, 어제보다 추웠다." 가정 2: "수영을 갈 거라면, 오늘 오후가 맑아야 한다." 가정 3: "수영을 가지 않으면, 카누를 탈 것이다." 가정 4: "카누를 타면, 일몰 전에 집에 도착할 것이다."
목표 결론: "일몰 전에 집에 도착할 것이다."
Step 1 — 변수 치환
| p | 오늘 오후가 맑다 |
| q | 어제보다 춥다 |
| r | 수영을 갈 것이다 |
| s | 카누를 탈 것이다 |
| t | 일몰 전에 집에 도착할 것이다 |
Step 2 — 가정을 논리식으로
| 가정 1 | 오후가 맑지 않고, 어제보다 춥다 | ¬p ∧ q |
| 가정 2 | 수영 가려면 맑아야 함 | r → p |
| 가정 3 | 수영 안 가면 카누 탐 | ¬r → s |
| 가정 4 | 카누 타면 일몰 전 도착 | s → t |
| 목표 | 일몰 전 도착 | t |
Step 3 — 목표 확인
목표는 단일 명제 t 를 도출하는 것.
Step 4~5 — 단계별 증명
| 1 | ¬p ∧ q | 가정 1 | — |
| 2 | ¬p | 단순화 (Simplification) | Step 1 |
| 3 | r → p | 가정 2 | — |
| 4 | ¬r | 부정법칙 (Modus Tollens) | Step 2, Step 3 |
| 5 | ¬r → s | 가정 3 | — |
| 6 | s | 긍정법칙 (Modus Ponens) | Step 4, Step 5 |
| 7 | s → t | 가정 4 | — |
| 8 | t ✅ | 긍정법칙 (Modus Ponens) | Step 6, Step 7 |
증명 완료 ✅
풀이 흐름 직관 정리
¬p ∧ q (가정1)
↓ 단순화
¬p
↓ + (r→p) (가정2) → 부정법칙
¬r
↓ + (¬r→s) (가정3) → 긍정법칙
s
↓ + (s→t) (가정4) → 긍정법칙
t ← 목표 도달!
💡 핵심 풀이 패턴: 복합 가정(¬p ∧ q)을 단순화로 분해 → 분해된 명제로 Modus Ponens/Tollens 연쇄 적용 → 최종 결론 도달.
5. 증명 전략 — 어디서부터 시작할까?
처음 형식적 증명 문제를 보면 막막하다. 다음 4가지 전략을 순서대로 시도해보자.
전략 1 — 단순한 명제부터 확보
복합 가정(P∧Q)이 있다면 단순화 규칙으로 P와 Q를 각각 분리해두자. 이렇게 하면 사용 가능한 명제가 늘어난다.
전략 2 — 함축(→) 전제를 활용
P→Q 형태의 가정이 있다면:
- P를 가지고 있다면 → Modus Ponens로 Q 도출
- ¬Q를 가지고 있다면 → Modus Tollens로 ¬P 도출
- 다른 함축 Q→R이 있다면 → 삼단논법으로 P→R 도출
전략 3 — 선언(∨) 전제를 활용
P∨Q 형태의 가정이 있다면:
- ¬P를 가지고 있다면 → 선언적 삼단논법으로 Q 도출
- ¬P∨R 형태가 또 있다면 → 분해 규칙으로 Q∨R 도출
전략 4 — 결론에서 역추적(Backward Reasoning)
모든 시도가 막히면 결론에서 거꾸로 추적한다.
| 결론 Q | "P→Q와 P를 만들 수 있는가?" |
| 결론 ¬P | "P→Q와 ¬Q를 만들 수 있는가?" |
| 결론 P∧Q | "P와 Q를 각각 따로 만들 수 있는가?" |
| 결론 P∨Q | "P 또는 Q 중 하나라도 만들 수 있는가?" |
6. 자주 쓰이는 증명 패턴 5가지
시험에 자주 나오는 증명 패턴을 미리 익혀두면 풀이 속도가 크게 빨라진다.
패턴 ① 단순화 → Modus Ponens
[가정] P ∧ Q, P → R
[Step 1] P (단순화)
[Step 2] R (Modus Ponens)
패턴 ② 단순화 → Modus Tollens
[가정] ¬Q ∧ S, P → Q
[Step 1] ¬Q (단순화)
[Step 2] ¬P (Modus Tollens)
패턴 ③ 삼단논법 사슬
[가정] P → Q, Q → R, R → S
[Step 1] P → R (삼단논법)
[Step 2] P → S (삼단논법)
패턴 ④ 분해 규칙 연쇄
[가정] P ∨ Q, ¬P ∨ R, ¬R ∨ S
[Step 1] Q ∨ R (분해, 전제 1·2)
[Step 2] Q ∨ S (분해, Step 1과 전제 3)
패턴 ⑤ Modus Tollens → Modus Ponens
(예제 4에서 쓴 패턴) ¬결과 → ¬조건 도출 → 다른 함축의 시작점으로 활용
[가정] ¬p ∧ q, r → p, ¬r → s
[Step 1] ¬p (단순화)
[Step 2] ¬r (Modus Tollens)
[Step 3] s (Modus Ponens)
💡 이 5가지 패턴이 형식적 증명 문제의 80% 이상을 커버한다. 시험 직전에 한 번씩 풀어보고 들어가자.
7. 증명 시 자주 하는 실수 5가지
실수 ① 적용 규칙 명시 누락
❌ 잘못된 예
Step 1: ¬p
Step 2: ¬r
⭕ 올바른 예
Step 1: ¬p (단순화, 가정 1)
Step 2: ¬r (Modus Tollens, Step 1과 가정 2)
실수 ② Modus Ponens와 Modus Tollens 혼동
| P→Q, P ⊢ Q (긍정법칙) | P→Q, Q ⊢ P (후건 긍정의 오류) |
| P→Q, ¬Q ⊢ ¬P (부정법칙) | P→Q, ¬P ⊢ ¬Q (전건 부정의 오류) |
실수 ③ 함축의 방향 역행
P→Q는 P가 참이면 Q가 참을 의미한다. 절대 Q→P로 거꾸로 사용하면 안 된다 (이건 '역(Converse)' 으로, 동치가 아님).
실수 ④ 단순화 규칙의 오용
P∧Q에서는 P와 Q 각각 도출 가능하지만, P∨Q에서는 P나 Q를 단독으로 도출할 수 없다. (∨에서는 둘 중 하나만 참이어도 전체가 참이므로 어느 쪽이 참인지 모름)
실수 ⑤ 사용한 전제 표기 누락
각 단계에 어떤 가정/단계를 사용했는지 함께 적어야 채점에서 감점되지 않는다.
⚠️ 시험에서 답만 맞으면 되는 게 아니라, 증명 과정의 정당성이 평가 대상이다. 단계마다 근거를 명시하는 습관을 들이자.
8. 추가 연습 예제 — 셀프 풀이
다음 가정들로부터 q ∨ r 을 증명해보자. 직접 풀어본 후 정답과 비교해보자.
문제
가정 1: p ∨ q 가정 2: ¬p ∨ r 목표: q ∨ r
정답 풀이
| 1 | p ∨ q | 가정 1 |
| 2 | ¬p ∨ r | 가정 2 |
| 3 | q ∨ r ✅ | 분해 규칙 (Resolution) |
분해 규칙 한 번으로 끝나는 가장 단순한 형태다.
💡 분해 규칙은 시험에서 단독으로 출제되기보다, 다른 규칙들과 결합해 출제된다. 패턴을 정확히 인식하는 연습이 필요하다.
📌 한눈에 보는 핵심정리
| 형식적 증명 | 추론 규칙을 연결하여 결론 도출하는 체계적 과정 |
| 3대 구성 | 시작점(가정) + 연결재(추론규칙) + 도착점(결론) |
| 5단계 풀이 | 변수 치환 → 논리식화 → 목표 확인 → 규칙 연결 → 규칙 명시 |
| 핵심 패턴 ① | 단순화 → Modus Ponens |
| 핵심 패턴 ② | 단순화 → Modus Tollens |
| 핵심 패턴 ③ | 삼단논법 사슬 |
| 핵심 패턴 ④ | 분해 규칙 연쇄 |
| 풀이 막힐 때 | 결론에서 거꾸로 역추적 |
| 자주 하는 실수 | 규칙 미명시, 함축 방향 역행, ∨를 ∧처럼 단순화 |
| 시험 만점 키 | 단계별 적용 규칙 + 사용 전제 명확히 표기 |
🧠 예상문제 2제
문제 1. 단계별 형식적 증명
다음 가정들로부터 결론 t 를 형식적 증명으로 도출할 때, Step 3에 들어갈 명제와 적용 규칙으로 옳은 것은?
가정 1: ¬p ∧ q 가정 2: r → p 가정 3: ¬r → s 가정 4: s → t
Step 1: ¬p (단순화, 가정 1)
Step 2: ¬r (Modus Tollens, Step 1과 가정 2)
Step 3: ? (?)
Step 4: t (Modus Ponens, Step 3과 가정 4)
① s, 긍정법칙(Modus Ponens, Step 2와 가정 3) ② ¬s, 부정법칙(Modus Tollens, Step 2와 가정 3) ③ s ∨ t, 가산 규칙(Addition, Step 2) ④ s ∧ t, 논리곱 규칙(Conjunction, Step 2와 가정 3)
👉 정답: ①
Step 3은 가정 3(¬r → s)에 Step 2의 ¬r을 적용한 결과다.
- ¬r → s 형태에서 전건 ¬r이 참이므로 → 후건 s가 참
- 이는 긍정법칙(Modus Ponens) 의 정확한 적용이다.
이후 Step 4에서 s → t와 s를 사용해 또 다시 긍정법칙으로 t를 도출하면 증명 완료.
💡 풀이 흐름 복습: ¬p ∧ q (가정1) → ¬p (단순화) → ¬r (Modus Tollens) → s (Modus Ponens) → t (Modus Ponens). 본문 4번 종합 예제와 동일한 구조다.
문제 2. 증명 전략 선택
다음 가정들로부터 r 을 증명하려고 한다. 첫 단계로 가장 적절한 추론 규칙은?
가정 1: p → q 가정 2: q → r 가정 3: p
① 단순화 규칙 (가정 1에 적용) ② 가산 규칙 (가정 3에 적용) ③ 삼단논법 (가정 1과 가정 2에 적용) ④ 부정법칙 (가정 2에 적용)
👉 정답: ③
가정 1(p→q)과 가정 2(q→r)를 삼단논법(Hypothetical Syllogism) 으로 결합하면 p→r이 도출된다. 그 후 가정 3(p)에 Modus Ponens를 적용하면 결론 r을 얻는다.
| 1 | p → r | 삼단논법 (가정 1, 가정 2) |
| 2 | r ✅ | Modus Ponens (Step 1, 가정 3) |
💡 다른 풀이도 가능: 가정 1과 가정 3에 먼저 Modus Ponens를 적용해 q를 얻고, 그 다음 가정 2와 Modus Ponens로 r을 얻어도 된다. 하지만 삼단논법으로 묶는 풀이가 한 단계 더 간결하다. 시험에서는 여러 풀이 경로가 존재하므로, 자신이 가장 자신 있는 패턴으로 풀어도 정답 처리된다.
⚠️ ① 단순화는 ∧ 명제에만 적용 가능 (가정 1은 → 명제이므로 불가). ② 가산은 결론과 무관한 명제 추가라 부적절. ④ 부정법칙은 ¬결과가 있어야 적용 가능한데 여기엔 없음.
'📌 SW전공-개념 > 이산구조' 카테고리의 다른 글
| [이산구조 개념-09] 4대 증명 전략 — 직접·대우·모순·경우별 (0) | 2026.06.01 |
|---|---|
| [이산구조 개념-08] 한정자 추론 규칙 — UI·EI와 증명의 언어 (0) | 2026.05.31 |
| [이산구조 개념-06] 추론 규칙 7선 — 논리적 추론의 도구함 (0) | 2026.05.29 |
| [이산구조 개념-05] 한정자의 순서·부정·동치 — 술어 논리 심화 (0) | 2026.05.28 |
| [이산구조 특별편 1] 드모르간과 AI — 19세기 논리가 21세기 인공지능이 되기까지 (1) | 2026.05.26 |