This lesson is only available in Korean for now.
Lesson 5 of 20

한정기호 — 모든 것과 어떤 것

∀ 와 ∃, 그리고 그 부정

한정기호 — 모든 것과 어떤 것
∀는 하나도 빠짐없이, ∃는 단 하나라도. 부정하면 서로 뒤바뀝니다.

1강에서 남겨 둔 숙제가 있었죠. x > 3 은 x를 모르니 참·거짓을 말할 수 없어 명제가 아니었습니다. 이런 것을 명제함수 P(x) 라고 부릅니다 — 값을 넣어야 참·거짓이 정해지는 틀이에요.

그런데 x를 정하지 않고도 명제로 만드는 방법이 있습니다. 범위 전체에 대해 말해 버리는 거예요.

∀
전칭 (모든)
"모든 x에 대해 P(x)"
하나라도 어기면 거짓
∃
존재 (어떤)
"어떤 x가 있어 P(x)"
하나만 찾으면 참

파이썬에는 이 둘이 그대로 들어 있습니다 — all() 과 any() 예요.

all() 이 ∀, any() 가 ∃ 입니다.
Python Runs in your browser

🎮 범위를 바꿔 가며 확인해 보세요

학생 명단을 놓고 조건을 걸어 보세요. ∀는 반례 하나에 무너지고, ∃는 증인 하나면 선다는 것을 눈으로 확인할 수 있습니다.

∀ · ∃ 실험실 — 반례 하나로 무너지는 것을 직접 보세요
Loading…
3강의 '공허한 참'이 여기서 다시 나옵니다.
Python Runs in your browser

부정하면 뒤바뀝니다

이 강의에서 가장 실수하기 쉬운 부분입니다. 천천히 봅시다.

  • ¬(∀x P(x)) ≡ ∃x ¬P(x)
    "모든 학생이 왔다"의 부정은 "안 온 학생이 한 명이라도 있다"입니다. "모든 학생이 안 왔다"가 아닙니다.
  • ¬(∃x P(x)) ≡ ∀x ¬P(x)
    "지각한 학생이 있다"의 부정은 "모든 학생이 지각하지 않았다"입니다.

드모르간 법칙(2강)의 확장판이라고 보면 됩니다. ∀는 무한한 ∧이고, ∃는 무한한 ∨니까요.

반례를 하나 찾으면 ∀ 명제는 끝납니다.
Python Runs in your browser
🤔 Check yourself
"모든 서버가 정상이다"의 부정으로 옳은 것은?
🤔 Check yourself
all(x > 0 for x in []) 의 결과는?
🤔 Check yourself
"어떤 사람은 모든 언어를 안다" 와 "모든 언어는 그것을 아는 사람이 있다" 의 관계는?