암스트롱의 공리

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

암스트롱의 공리는 관계형 데이터베이스에서 함수 종속성을 추론하기 위한 규칙 집합이다. 반사성, 증가성, 이행성의 세 가지 기본 공리와 분해, 결합, 합집합, 유사 이행성, 자기 결정, 확장성의 추가 규칙으로 구성된다. 암스트롱 공리는 건전하고 완전하며, 주어진 함수 종속성 집합으로부터 모든 함수 종속성을 생성할 수 있다. 암스트롱 관계는 주어진 함수 종속성 집합을 만족하는 관계이며, 암스트롱 공리는 데이터베이스 설계 및 정규화 과정에서 중요한 역할을 한다.

암스트롱의 공리
📚 더 읽어볼만한 페이지
  • 데이터 모델링 - 빌딩 정보 모델링
    빌딩 정보 모델링(BIM)은 건축물의 전 생애주기 동안 발생하는 정보를 디지털 모델로 통합 관리하는 프로세스이다.
  • 데이터 모델링 - 저장 프로시저
    저장 프로시저는 데이터베이스 관리 시스템에서 SQL 문들을 미리 컴파일하여 저장하고, 모듈화, 보안성, 성능 향상, 유지보수 용이성과 같은 특징을 가지며, 데이터베이스 시스템마다 구현 방식과 지원하는 언어가 다를 수 있는 코드 묶음이다.
  • 데이터베이스 관리 시스템 - 트랜잭션 처리
    트랜잭션 처리는 데이터베이스 시스템에서 데이터의 일관성과 무결성을 보장하기 위한 기술이며, ACID 속성을 통해 데이터 정확성을 유지하고 롤백, 데드락 처리 등의 기술을 활용한다.
  • 데이터베이스 관리 시스템 - 저장 프로시저
    저장 프로시저는 데이터베이스 관리 시스템에서 SQL 문들을 미리 컴파일하여 저장하고, 모듈화, 보안성, 성능 향상, 유지보수 용이성과 같은 특징을 가지며, 데이터베이스 시스템마다 구현 방식과 지원하는 언어가 다를 수 있는 코드 묶음이다.

2. 암스트롱 공리 (기본 규칙)

암스트롱 공리는 주어진 함수 종속성(FD) 집합으로부터 유도될 수 있는 모든 함수 종속성을 생성하는 규칙들의 집합이다. 이 규칙들은 정당(sound)하고 완전(complete)하다.

* 정당성(Soundness): 암스트롱 공리를 통해 생성된 함수 종속성은 잘못된 함수 종속성을 포함하지 않는다. 즉, 주어진 FD 집합 F로부터 F+에 속하는 FD들만 생성된다.
* 완전성(Completeness): 암스트롱 공리는 주어진 함수 종속성 집합 F에 대해 F+ (F의 폐포)에 속하는 모든 FD들을 생성할 수 있다.

관계형 스키마 R(U)에서 U는 속성 집합을 나타내며, X, Y, Z는 U의 부분 집합이다. XY는 X와 Y의 합집합을 의미하며, 이는 데이터베이스 이론에서 널리 사용되는 표기법이다.

2.1. 반사성 (Reflexivity)

만약 Y가 X의 부분집합이면, X는 Y를 함수적으로 결정한다. (Y ⊆ X이면 X → Y)

2.2. 증가성 (Augmentation)

만약 X → Y이면, 임의의 속성 집합 Z에 대해 XZ → YZ이다. 이는 종속 관계에 있는 속성이 기본적인 종속 관계를 변경하지 않는다는 것을 의미한다.

2.3. 이행성 (Transitivity)

만약 X → Y이고 Y → Z이면, X → Z이다.

3. 추가 규칙 (보조 규칙)

암스트롱 공리로부터 유도될 수 있는 규칙들은 다음과 같다. 이러한 규칙들은 잘못된 함수 종속을 생성하지 않으므로 건전(sound)하며, 주어진 함수 종속 집합 F에 대해 모든 F+를 생성할 수 있으므로 완전(complete)하다.

* 분해: X → YZ이면, X → Y이고 X → Z이다.
* 결합: X → Y이고 A → B이면, XA → YB이다.
* 합집합: X → Y이고 X → Z이면, X → YZ이다.
* 유사 이행성: X → Y이고 YZ영어 → W이면, XZ → W이다.
* 자기 결정: 모든 속성 집합 I영어에 대해, I영어 → I영어이다.
* 확장성: X → Y이면, X → XY이다.

3.1. 분해 (Decomposition)

만약 X → YZ이면, X → Y이고 X → Z이다.

3.2. 결합 (Composition)

만약 X → Y이고 A → B이면, XA → YB이다.

3.3. 합집합 (Union)

만약 X → Y이고 X → Z이면, X → YZ이다.

3.4. 유사 이행성 (Pseudo transitivity)

만약 X → Y이고 YZ영어 → W이면, XZ → W이다.

3.5. 자기 결정 (Self determination)

모든 속성 집합 I영어에 대해, I영어 → I영어이다. 이는 반사율의 공리로부터 직접적으로 따른다.

3.6. 확장성 (Extensivity)

만약 X → Y이면, X → XY이다.

확장성은 다른 공리들과 함께 증가성을 통해 증명될 수 있다는 점에서 증가성을 공리로서 대체할 수 있다.

4. 암스트롱 관계 (Armstrong relation)

함수 종속성 집합 ${\displaystyle F}$가 주어졌을 때, 암스트롱 관계는 ${\displaystyle F^{+}}$ (F의 폐포) 내의 모든 함수 종속성을 만족시키고, 그 외의 종속성은 만족시키지 않는 관계이다. 불행히도, 주어진 종속성 집합에 대한 최소 크기의 암스트롱 관계는 고려된 속성의 수에 따라 지수 함수 크기를 가질 수 있다.

5. 암스트롱 공리의 특징

암스트롱 공리는 다음과 같은 성질을 갖는다.

* 건전성(Soundness): 잘못된 함수 종속을 생성하지 않는다.
* 완전성(Completeness): 주어진 함수 종속 집합 F에 대해 모든 F+를 생성할 수 있다.

함수 종속성 집합 F가 주어졌을 때, 암스트롱 관계는 폐포 F^+ 내의 모든 함수 종속성을 만족시키고, 오직 그러한 종속성만을 만족시키는 관계이다. 불행히도, 주어진 종속성 집합에 대한 최소 크기의 암스트롱 관계는 고려된 종속성의 속성 수에 대한 지수 함수 크기를 가질 수 있다.