본문 바로가기
Topos Uranos

의미론적 귀결과 동치

요약

이 수업은 논리식의 진리값에서 논리식들 사이의 관계로 나아간다. 유한하거나 무한한 전제 집합으로부터의 의미론적 귀결을 정의하고, 귀결 기호의 읽는 법을 분명히 한다. 그 부정의 읽는 법도 포함해서인데, 부정은 무엇인가가 타당하지 않다는 것을 말할 뿐 그것이 모순이라는 것을 말하지 않는다. 다항식으로 쓴 연결사의 값을 사용하며, 이로써 법칙의 검증은 계산으로 바뀐다. 그리고 귀결의 구조적 성질(반사성, 단조성, 절단, 추이성), 의미론적 연역 정리, 귀결을 충족 불가능성으로 환원하는 정리를 증명한다. 이 환원은 분해 방법의 토대가 될 것이다. 이어서 의미론적 동치를 정의하고, 그것이 상호 귀결과도, 쌍조건의 타당성과도 일치하는 동치 관계임을 증명하며, 복잡도에 관한 귀납법으로 그것을 다루게 해 주는 두 정리를 증명한다. 부분식의 한 출현을 그와 동치인 다른 논리식으로 대체하는 것, 그리고 변항에 논리식을 균일하게 대입하는 것이다. 이 정리들로 올바른 이름을 붙인 법칙의 목록을 세우고, 진리표 없이 동치의 사슬로 논리식을 간단히 한다.

학습 목표

  1. 어떤 논리식이 유한하거나 무한한 논리식 집합의 의미론적 귀결인지를, 그것을 반박하는 진리값 할당을 제시하거나 그런 할당이 없음을 증명함으로써 판정한다.
  2. 귀결의 성질, 의미론적 연역 정리, 귀결을 충족 불가능성으로 환원하는 정리를 증명하고 적용한다.
  3. 진리표, 값의 계산, 동치의 사슬로 의미론적 동치를 세우고, 각 법칙의 이름을 올바르게 붙인다.
  4. 복잡도에 관한 귀납법으로 의미론적 대체 정리와 균일 대입 정리를 증명하고, 각각이 언제 적용되는지 구별한다.

앞 수업에서 쓰는 것

명제 논리의 의미론 수업은 논리식에 의미를 주었고, 이 수업은 그것을 이미 아는 것으로 한다. 진리값 할당이란 함수 v ⁣:V→{0,1}v\colon V \to \{0, 1\}을 말하며, 이 함수는 각 변항에 진리값 11(참) 또는 00(거짓)을 배정한다. 귀납법 수업의 논리식 위의 재귀에 의한 정의 정리에 의해, 각 진리값 할당은 부정논리합의 조항으로 모든 논리식에 오직 한 가지 방식으로 확장된다. 이 조항 하나만 있으면 되는데, 이 언어에는 연결사가 하나뿐이기 때문이다.

v((φ↓ψ))=1  ⇔  v(φ)=0,    v(ψ)=0v((\varphi \downarrow \psi)) = 1 \;\Leftrightarrow\; v(\varphi) = 0, \;\; v(\psi) = 0

확장의 유일성에 의해, 확장의 값도 v(φ)v(\varphi)로 쓴다. 아래첨자 없는 문자 vv는 언제나 진리값 할당을 나타내고(v′v', ww, uu도 다른 할당을 나타낸다), 변항은 언제나 아래첨자를 단다. 형식화 수업에서와 같이, pp, qq, rr, ss, tt는 변항 v1v_1부터 v5v_5까지를 나타내고, V(φ)V(\varphi)는 φ\varphi의 변항들의 집합이다. vv가 φ\varphi를 충족한다고 하며 v⊨φv \models \varphi로 쓴다. 이것은 v(φ)=1v(\varphi) = 1일 때이다. 또 그 할당이 이 논리식을 반박한다고 하며 v⊭φv \not\models \varphi로 쓴다. 이것은 v(φ)=0v(\varphi) = 0일 때이다. 논리식이 타당하다(또는 항진식이다)는 것은 모든 진리값 할당이 그것을 충족한다는 것이며, 이때 ⊨φ\models \varphi로 쓴다. 충족 가능하다는 것은 어떤 할당이 그것을 충족한다는 것이고, 충족 불가능하다(또는 모순식이다)는 것은 어떤 할당도 그것을 충족하지 않는다는 것이며, 우연식이라는 것은 충족 가능하지만 타당하지 않다는 것이다. 진리값 할당이 논리식 집합 Γ\Gamma를 충족한다(v⊨Γv \models \Gamma)는 것은 그 각 원소를 충족한다는 것이며, 어떤 할당이 Γ\Gamma를 충족하면 그 집합은 충족 가능, 그렇지 않으면 충족 불가능하다고 한다. 끝으로, ⊤:=(v1→v1)\top := (v_1 \rightarrow v_1), ⊥:=¬⊤\bot := \neg\top로 둔다. 따라서 모든 진리값 할당에 대해 v(⊤)=1v(\top) = 1이고 v(⊥)=0v(\bot) = 0이다.

그 수업에서는 결과 두 가지를 더 쓴다. 첫째는 일치 보조정리이다. 두 진리값 할당이 φ\varphi의 변항들에서 일치하면, 두 할당은 φ\varphi에서도 일치한다. 이에 따라 nn개의 변항을 가진 논리식의 값은 2n2^{n}이지 조합에만 의존하고, 그 진리표는 유한하다. 둘째는 파생 연결사의 값에 관한 정리로, 공식 약어로부터 각 연결사의 값을 성분들의 값의 다항식으로 계산한다. a=v(φ)a = v(\varphi)이고 b=v(ψ)b = v(\psi)이라 하면:

v(¬φ)=1−a,v((φ∨ψ))=a+b−ab,v((φ∧ψ))=abv(\neg\varphi) = 1 - a, \qquad v((\varphi \vee \psi)) = a + b - ab, \qquad v((\varphi \wedge \psi)) = ab
v((φ→ψ))=1−a(1−b),v((φ↔ψ))=ab+(1−a)(1−b),v((φ⊻ψ))=a+b−2abv((\varphi \rightarrow \psi)) = 1 - a(1 - b), \qquad v((\varphi \leftrightarrow \psi)) = ab + (1 - a)(1 - b), \qquad v((\varphi \veebar \psi)) = a + b - 2ab

이 수업의 증명은 거의 모두 진리값의 비교로 이루어지며, 이 다항식들 덕분에 경우를 하나씩 살피는 대신 계산으로 비교할 수 있다. 추가 규칙은 하나뿐인데, 00과 11만이 자기 제곱과 같은 수라는 것이다. xx의 값이 00 또는 11이면 x2=xx^{2} = x이고 x(1−x)=0x(1 - x) = 0이다. 또한 같은 값의 다른 세 표기를 곁에 두면 좋다. 이것들은 곱을 전개해서 얻는다.

v((φ↓ψ))=(1−a)(1−b),v((φ∨ψ))=1−(1−a)(1−b),v((φ↔ψ))=1−a−b+2abv((\varphi \downarrow \psi)) = (1 - a)(1 - b), \qquad v((\varphi \vee \psi)) = 1 - (1 - a)(1 - b), \qquad v((\varphi \leftrightarrow \psi)) = 1 - a - b + 2ab

첫째는 부정논리합의 조항이다(1−a1 - a와 1−b1 - b의 곱이 11이 되는 것은 정확히 a=b=0a = b = 0일 때이다). 둘째는 선언이 00이 되는 것은 두 성분이 모두 00일 때뿐임을 말하고, 셋째는 쌍조건이 11이 되는 것은 a=ba = b일 때(1−2a+2a2=11 - 2a + 2a^{2} = 1이므로), 00이 되는 것은 a≠ba \neq b일 때(이때 a+b=1a + b = 1이고 ab=0ab = 0이므로)임을 말한다.