학 습 목 표
- 자주 쓰는 공리 다섯 가지의 뜻과 쓰임을 구분한다.
- 열린 세계 가정과 유일 이름 가정의 부재가 낳는 효과를 예측한다.
- 표현력과 계산 비용의 거래를 이해하고 프로파일을 고른다.
공리는 해석을 거른다
1부 4차시에서 공리는 어휘의 엉뚱한 해석을 걸러 의도된 모형에 다가가는 장치라고 정리하였다. 이 차시는 그 장치의 목록과 사용법, 그리고 값을 다룬다. OWL에서 자주 쓰는 공리는 다섯 가지면 대부분의 일을 한다.
| 공리 | 뜻 | 예 |
|---|---|---|
| subClassOf | 종류 관계. 하위는 상위에 포함된다 | 작업기억 ⊑ 기억 |
| disjointWith | 서로소. 공통 사례가 있을 수 없다 | 기억 ⊥ 측정과제 |
| domain / range | 관계 양끝의 자격(2-3) | measures: 측정과제 → 심리 구성개념 |
| someValuesFrom | 존재 제약. "~인 것을 적어도 하나 갖는다" | 측정과제 ⊑ ∃measures.구성개념 |
| equivalentClass | 정의된 클래스. 필요충분조건으로 정의 | 작업기억과제 ≡ 측정과제 ⊓ ∃measures.작업기억 |
표 1다섯 가지 기본 공리. 마지막 행의 '정의된 클래스'가 다음 차시에서 추론기의 분류 능력을 끌어내는 열쇠다.
함정 1 — 열린 세계 가정
OWL은 열린 세계 가정(Open World Assumption, OWA) 위에서 해석된다. 그래프에 없는 트리플은 거짓이 아니라 모르는 것이다. 데이터베이스는 반대다 — 테이블에 없으면 없는 것이다(닫힌 세계).
구체적 효과를 보자. 그래프에 숫자폭과제의 measures 트리플이 하나도 없다고 하자. "숫자폭과제는 아무것도 측정하지 않는다"고 추론기가 결론 내릴 것 같지만, 내리지 않는다. 적히지 않았을 뿐 측정할 수도 있기 때문이다. 마찬가지로 "measures가 없는 과제를 모두 찾아라"는 질의는 OWA 아래에서 뜻대로 움직이지 않는다. 추론기가 조용한 것은 동의가 아니라 무지다. 이 성질은 지식이 늘 불완전하게 쌓이는 현실(웹, 과학)에 맞춘 설계이며, 완결된 목록이 필요한 작업은 SPARQL 질의 수준에서 닫힌 세계처럼 다룬다.
함정 2 — 유일 이름 가정의 부재
OWL은 유일 이름 가정(Unique Name Assumption, UNA)도 하지 않는다. 서로 다른 두 이름이 같은 대상을 가리킬 수 있다. :작업기억과 :working_memory가 다른 IRI라도, 추론기는 둘이 다르다고 전제하지 않는다. 같다고 선언하려면 sameAs(개체)나 equivalentClass(클래스)를, 다르다고 못 박으려면 differentFrom이나 disjointWith를 적어야 한다.
이 성질 역시 통합을 위한 설계다. 서로 다른 온톨로지가 같은 개념에 제각기 IRI를 붙였을 때, 두 그래프를 합치며 동치 선언 하나로 잇는다. 정렬(트랙 5의 8차시)의 논리적 기반이 이것이다.
표현력과 비용의 거래
공리의 어휘를 늘릴수록 더 미세하게 말할 수 있다. 그 대가는 추론의 계산 비용이다. OWL 2 DL은 추론이 항상 끝나도록(결정 가능) 표현력을 제한한 언어이고, OWL 2 Full은 제한이 없는 대신 추론 보장이 없다. DL 안에서도 거래의 눈금이 있다 — 프로파일이다. EL은 큰 계층의 빠른 분류에(대형 생의학 온톨로지, 추론기 ELK), QL은 데이터베이스 위 질의에, RL은 규칙 기반 처리에 맞게 표현력을 깎았다.
공리의 예산
어디까지 공리화할 것인가. 기준은 1부에서 두 번 세웠다. 그루버의 최소 존재론적 공약, 그리고 "공리는 그것을 쓸 질문이 있을 때만 값을 한다"(1-5). 실습 온톨로지의 공리 예산은 그래서 작다. subClassOf 계층, 관계의 정의역·치역, 큰 범주 사이의 disjoint 소수, 그리고 추론 실습을 위한 정의된 클래스 한둘. 기수 제약이나 복잡한 부정은 그것을 요구하는 역량 질문이 생길 때 들인다.
판별 연습
문 1"그래프에서 측정 과제가 연결되지 않은 기억 개념을 찾아라"는 요구는 왜 공리 수준에서 처리하기 어려운가.
답 확인
열린 세계 가정 때문이다. 연결이 안 적힌 것은 '없음'이 아니라 '모름'이므로 추론기는 단정하지 않는다. 이런 완결성 점검은 SPARQL 질의(닫힌 세계식 검사)로 처리한다 — 역량 질문 테스트가 바로 이 방식이다.
문 2두 온톨로지를 합쳤더니 '작업기억' 클래스가 두 개가 되었다. 추론기는 이를 오류로 보고하는가.
답 확인
보고하지 않는다. 유일 이름 가정이 없으므로 둘은 같을 수도 다를 수도 있는 상태다. 같다고 판단되면 equivalentClass로 잇고, 다르면 정의를 나눠 적는다. 침묵은 판단이 아니다.
문 3disjointWith를 전혀 쓰지 않은 온톨로지의 약점은 무엇인가.
답 확인
범주를 뒤섞는 입력 실수(예: 과제를 기억의 하위에 넣기)가 모순을 일으키지 않아 추론기에 잡히지 않는다. 서로소 선언은 오류를 '탐지 가능한 모순'으로 바꿔 주는 안전장치다.
적용: 실습의 공리 예산표
실습 온톨로지의 1차 공리 예산을 확정한다. 모든 클래스에 subClassOf 하나 이상(고아 클래스 금지), 모든 관계에 정의역·치역, 최상위 범주(심리 구성개념, 측정 과제, 뇌 구조) 사이의 disjoint, 그리고 추론 시연용 정의된 클래스 한 개. 이 예산은 다음 차시에서 추론기가 실제로 무엇을 해 주는지 본 뒤에 조정한다.
용어 정리
| 용어 | 원어 | 뜻 |
|---|---|---|
| 열린 세계 가정 | Open World Assumption | 적히지 않은 것은 거짓이 아니라 모름 |
| 유일 이름 가정 | Unique Name Assumption | 다른 이름은 다른 대상이라는 가정. OWL은 하지 않는다 |
| 서로소 | disjointWith | 두 클래스가 공통 사례를 가질 수 없다는 선언 |
| 정의된 클래스 | defined class | 필요충분조건(equivalentClass)으로 정의된 클래스 |
| 프로파일 | OWL 2 profile | 표현력을 깎아 추론을 빠르게 한 부분 언어(EL/QL/RL) |
| 결정 가능 | decidable | 추론이 유한 시간 안에 반드시 끝남이 보장되는 성질 |
W3C (2012). OWL 2 Web Ontology Language Primer (2nd Ed.) — 공리, OWA, 프로파일. · W3C (2012). OWL 2 Profiles. · Hitzler, P. et al. (2009). Foundations of Semantic Web Technologies(기술 논리 배경).