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