Аксиомы Армстронга — это набор аксиом (или, точнее, правил вывода ), используемых для вывода всех функциональных зависимостей в реляционной базе данных . Они были разработаны Уильямом У. Армстронгом в его статье 1974 года. [1] Аксиомы являются обоснованными в создании только функциональных зависимостей в замыкании набора функциональных зависимостей (обозначаемого как ) при применении к этому набору (обозначаемому как ). Они также являются полными в том, что повторное применение этих правил будет генерировать все функциональные зависимости в замыкании .
Более формально, пусть обозначает реляционную схему над набором атрибутов с набором функциональных зависимостей . Мы говорим, что функциональная зависимость логически подразумевается , и обозначаем ее тогда и только тогда, когда для каждого экземпляра , который удовлетворяет функциональным зависимостям в , также удовлетворяет . Мы обозначаем набор всех функциональных зависимостей, которые логически подразумеваются .
Кроме того, относительно набора правил вывода мы говорим, что функциональная зависимость выводима из функциональных зависимостей в с помощью набора правил вывода , и мы обозначаем ее через тогда и только тогда, когда она получается посредством многократного применения правил вывода в к функциональным зависимостям в . Мы обозначаем через набор всех функциональных зависимостей, которые выводимы из с помощью правил вывода в .
Тогда набор правил вывода является обоснованным тогда и только тогда, когда выполняется следующее:
то есть, мы не можем вывести посредством функциональных зависимостей, которые логически не подразумеваются из . Набор правил вывода считается полным, если выполняется следующее:
Проще говоря, мы можем вывести все функциональные зависимости, которые логически подразумеваются .
Аксиомы (основные правила)
Пусть будет схемой отношений над набором атрибутов . В дальнейшем мы будем обозначать буквами , , любое подмножество и, для краткости, объединение двух наборов атрибутов и вместо обычного ; эта нотация довольно стандартна в теории баз данных при работе с наборами атрибутов.
Аксиома рефлексивности
Если — набор атрибутов и — подмножество , то выполняется . При этом выполняется [ ] означает, что функционально определяет .
- Если тогда .
Аксиома приращения
Если удерживает и является набором атрибутов, то удерживает . Это означает, что атрибут в зависимостях не изменяет базовые зависимости.
- Если , то для любого .
Аксиома транзитивности
Если держится и держится , то держится .
- Если и , то .
Дополнительные правила (Вторичные правила)
Эти правила можно вывести из приведенных выше аксиом.
Разложение
Если то и .
Доказательство
1. | (Данный) |
2. | (Рефлексивность) |
3. | (Транзитивность 1 и 2) |
Состав
Если и тогда .
Доказательство
1. | (Данный) |
2. | (Данный) |
3. | (Увеличение 1 и А) |
4. | (Увеличение 2 и Y) |
5. | (Транзитивность 3 и 4) |
Союз
Если и тогда .
Доказательство
1. | (Данный) |
2. | (Данный) |
3. | (Увеличение 2 и X) |
4. | (Увеличение 1 и Z) |
5. | (Транзитивность 3 и 4) |
Псевдотранзитивность
Если и тогда .
Доказательство
1. | (Данный) |
2. | (Данный) |
3. | (Увеличение 1 и Z) |
4. | (Транзитивность 3 и 2) |
Самоопределение
для любого . Это следует непосредственно из аксиомы рефлексивности.
Экстенсивность
Следующее свойство является частным случаем аугментации, когда .
- Если , то .
Экстенсивность может заменить аугментацию как аксиома в том смысле, что аугментация может быть доказана из экстенсивности вместе с другими аксиомами.
Доказательство
1. | (Рефлексивность) |
2. | (Данный) |
3. | (Транзитивность 1 и 2) |
4. | (Коэффициент 3) |
5. | (Рефлексивность) |
6. | (Транзитивность 4 и 5) |
отношение Армстронга
При заданном наборе функциональных зависимостей отношение Армстронга — это отношение, которое удовлетворяет всем функциональным зависимостям в замыкании и только этим зависимостям. К сожалению, отношение Армстронга минимального размера для заданного набора зависимостей может иметь размер, который является экспоненциальной функцией числа атрибутов в рассматриваемых зависимостях. [2]
Ссылки
- ^ Уильям Уорд Армстронг: Структуры зависимостей в связях баз данных , стр. 580-583. Конгресс IFIP, 1974.
- ^ Бири, К.; Дауд, М.; Фагин, Р.; Статман, Р. (1984). «О структуре отношений Армстронга для функциональных зависимостей» (PDF) . Журнал ACM . 31 : 30–46. CiteSeerX 10.1.1.68.9320 . doi :10.1145/2422.322414. Архивировано из оригинала (PDF) 2018-07-23.
Внешние ссылки
- UMBC CMSC 461 Весна '99
- Конспект лекций CS345 из Стэнфордского университета