작은 범주 의 범주의 반대 범주
Cat
op
{\displaystyle \operatorname {Cat} ^{\operatorname {op} }}
에서 집합의 범주의 반대 범주 로 가는, 사상을 잊는 망각 함자
Ob
op
:
Cat
op
→
Set
op
{\displaystyle \operatorname {Ob} ^{\operatorname {op} }\colon \operatorname {Cat} ^{\operatorname {op} }\to \operatorname {Set} ^{\operatorname {op} }}
와 멱집합 함자
P
:
Set
→
Set
op
{\displaystyle {\mathcal {P}}\colon \operatorname {Set} \to \operatorname {Set} ^{\operatorname {op} }}
P
:
X
↦
P
(
X
)
{\displaystyle {\mathcal {P}}\colon X\mapsto {\mathcal {P}}(X)}
P
:
(
f
:
X
→
Y
)
↦
(
f
−
1
:
P
(
Y
)
→
P
(
X
)
)
{\displaystyle {\mathcal {P}}\colon (f\colon X\to Y)\mapsto (f^{-1}\colon {\mathcal {P}}(Y)\to {\mathcal {P}}(X))}
를 생각하자. 그렇다면 쉼표 범주
I
=
Ob
op
↓
P
{\displaystyle {\mathcal {I}}=\operatorname {Ob} ^{\operatorname {op} }\downarrow {\mathcal {P}}}
를 생각할 수 있다. 즉,
I
{\displaystyle {\mathcal {I}}}
는 구체적으로 다음과 같다.
I
{\displaystyle {\mathcal {I}}}
의 대상
(
S
,
M
,
⊨
)
{\displaystyle (S,{\mathcal {M}},\models )}
은 다음과 같은 순서쌍 이다.
집합
S
{\displaystyle S}
.
S
{\displaystyle S}
를 문장 의 집합이라고 한다.
작은 범주
M
{\displaystyle {\mathcal {M}}}
.
M
{\displaystyle {\mathcal {M}}}
의 원소를 모형 이라고 한다.
함수
⊨
:
Ob
(
M
)
→
P
(
S
)
{\displaystyle {\models }\colon \operatorname {Ob} ({\mathcal {M}})\to {\mathcal {P}}(S)}
. 이를 만족 관계 (영어 : satisfaction relation )라고 한다. 보통,
ϕ
∈
S
{\displaystyle \phi \in S}
및
M
∈
M
{\displaystyle M\in {\mathcal {M}}}
에 대하여,
ϕ
∈
⊨
(
M
)
{\displaystyle \phi \in \operatorname {\models } (M)}
를 이항 관계
M
⊨
ϕ
{\displaystyle M\models \phi }
로 표기한다.
I
{\displaystyle {\mathcal {I}}}
의 사상
(
f
,
G
)
:
(
S
,
M
,
⊨
)
→
(
S
′
,
M
′
,
⊨
′
)
{\displaystyle (f,G)\colon (S,{\mathcal {M}},\models )\to (S',{\mathcal {M}}',\models ')}
은 다음과 같은 데이터로 구성된다.
f
:
S
→
S
′
{\displaystyle f\colon S\to S'}
는 함수 이다.
G
:
M
′
→
M
{\displaystyle G\colon {\mathcal {M}}'\to {\mathcal {M}}}
는 함자 이다.
이들은 다음 조건을 만족시켜야 한다.
임의의 모형
M
′
∈
M
′
{\displaystyle M'\in {\mathcal {M}}'}
및 문장
ϕ
∈
S
{\displaystyle \phi \in S}
에 대하여,
M
′
⊨
′
f
S
(
ϕ
)
⟺
G
(
M
′
)
⊨
ϕ
{\displaystyle M'\models 'f_{S}(\phi )\iff G(M')\models \phi }
이다. 즉, 다음 그림이 가환 그림이다.
Ob
(
M
′
)
→
Ob
(
G
)
Ob
(
M
)
⊨
′
↓
⊨
′
⊨
↓
⊨
P
(
S
′
)
→
f
S
−
1
P
(
S
)
{\displaystyle {\begin{matrix}\operatorname {Ob} ({\mathcal {M}}')&{\overset {\operatorname {Ob} (G)}{\to }}&\operatorname {Ob} ({\mathcal {M}})\\{\scriptstyle \models '}\downarrow {}{\color {White}\scriptstyle \models '}&&{\color {White}\scriptstyle \models }\downarrow {}\scriptstyle \models \\{\mathcal {P}}(S')&{\underset {f_{S}^{-1}}{\to }}&{\mathcal {P}}(S)\\\end{matrix}}}
범주
L
{\displaystyle {\mathcal {L}}}
에 대하여,
L
{\displaystyle {\mathcal {L}}}
위의 제도 (영어 : institution )는 함자
I
:
L
→
I
{\displaystyle I\colon {\mathcal {L}}\to {\mathcal {I}}}
이다. 이 경우,
L
{\displaystyle {\mathcal {L}}}
을 제도
I
{\displaystyle I}
의 언어 들의 범주라고 한다.
같은 언어 위의 두 제도 사이의 사상은 자연 변환 이다.
제도
I
:
L
→
I
{\displaystyle I\colon {\mathcal {L}}\to {\mathcal {I}}}
가 다음 두 성질을 만족시킨다면,
(
S
,
⊨
)
{\displaystyle (S,\models )}
가 불 제도 (영어 : Boolean institution )라고 한다.
(부정 의 존재) 임의의 언어
L
∈
L
{\displaystyle L\in {\mathcal {L}}}
및 모형
M
∈
M
(
L
)
{\displaystyle M\in {\mathcal {M}}(L)}
및 문장
ϕ
∈
S
(
L
)
{\displaystyle \phi \in S(L)}
에 대하여,
M
⊨
ϕ
⟺
M
⊭
χ
{\displaystyle M\models \phi \iff M\not \models \chi }
가 되는 문장
χ
∈
S
(
L
)
{\displaystyle \chi \in S(L)}
이 존재한다.
(논리곱 의 존재) 임의의 언어
L
∈
L
{\displaystyle L\in {\mathcal {L}}}
및 모형
M
∈
Model
(
L
)
{\displaystyle M\in \operatorname {Model} (L)}
및 두 문장
ϕ
,
χ
∈
S
(
L
)
{\displaystyle \phi ,\chi \in S(L)}
에 대하여,
M
⊨
ψ
⟺
(
M
⊨
ϕ
∧
M
⊨
ψ
)
{\displaystyle M\models \psi \iff (M\models \phi \land M\models \psi )}
가 되는 문장
ψ
∈
S
(
L
)
{\displaystyle \psi \in S(L)}
이 존재한다.
이 경우, 부정과 논리곱을 사용하여 고전 명제 논리 의 연산(논리합 , 함의 , 동치 등)들을 정의할 수 있다.
기수
κ
{\displaystyle \kappa }
가 주어졌다고 하자.
제도
I
:
L
→
I
{\displaystyle I\colon {\mathcal {L}}\to {\mathcal {I}}}
가 다음 조건을 만족시킨다면,
κ
{\displaystyle \kappa }
-콤팩트 제도 (영어 : compact institution )라고 한다.
임의의 언어
L
∈
L
{\displaystyle L\in {\mathcal {L}}}
및 임의의 부분 집합
A
⊆
S
(
L
)
{\displaystyle A\subseteq S(L)}
에 대하여, 다음이 성립한다.
(
∃
M
∈
M
(
L
)
:
M
⊨
A
)
⟺
(
∀
A
′
∈
P
<
κ
(
A
)
∃
M
∈
M
(
L
)
:
M
⊨
A
′
)
{\displaystyle \left(\exists M\in {\mathcal {M}}(L)\colon M\models A\right)\iff \left(\forall A'\in {\mathcal {P}}_{<\kappa }(A)\exists M\in {\mathcal {M}}(L)\colon M\models A'\right)}
여기서, 문장들의 집합
A
{\displaystyle A}
및 모형
M
{\displaystyle M}
에 대하여
M
⊨
A
{\displaystyle M\models A}
는
∀
ϕ
∈
A
:
M
⊨
ϕ
{\displaystyle \forall \phi \in A\colon M\models \phi }
를 뜻한다.
P
<
κ
(
A
)
{\displaystyle {\mathcal {P}}_{<\kappa }(A)}
는
A
{\displaystyle A}
의, 크기가
κ
{\displaystyle \kappa }
미만의 부분 집합 들의 족이다.
1차 논리 와 그 표준적 모형 은 제도를 이룬다. 이 밖에도, 다른 많은 논리 체계들을 제도로 나타낼 수 있다.
제도의 개념은 1970년대에 조지프 애머디 고겐(영어 : Joseph Amadee Goguen , 1941~2006)과 로드니 마티노 버스톨(영어 : Rodney Martineau Burstall , 1934~)이 도입하였다.[ 1] [ 2]
↑ Goguen, Joseph; Burstall, Rodney M. (1984). 〈Introducing institutions〉. Clarke, Edmund; Kozen, Dexter. 《Logics of programs: workshop, Carnegie Mellon University, Pittsburgh, PA, June 6–8, 1983》. Lecture Notes in Computer Science (영어) 164 . Springer-Verlag. 221–256쪽. doi :10.1007/3-540-12896-4_366 . ISBN 978-3-540-12896-0 . ISSN 0302-9743 . Zbl 0543.68021 .
↑ Goguen, J. A.; Burstall, R. M. (1992년 1월). “Institutions: abstract model theory for specification and programming”. 《Journal of the Association for Computing Machinery》 (영어) 39 (1): 95–146. doi :10.1145/147508.147524 . Zbl 0799.68134 .