- •Представление основных математических структур на языкеScb
- •Типология множеств и их представление в языке scb. Основные множества языка scb и соответствующие им ключевые узлы
- •Понятие кортежа. Атрибуты элементов кортежа. Представление кортежей в языке scb. Типология кортежей
- •Понятие кортежа и атрибута
- •Примеры кортежей и их представление в языках scBg и scBs
- •Типология кортежей
- •Резюме к подразделу 3.2
- •Понятие отношения. Представление отношений в языке scb. Типология отношений. Классические и неклассические отношения
- •Обобщение традиционной трактовки отношений
- •Типология отношений на основе базовой типологии множеств
- •Типология отношений на основе типологии кортежей, входящих в состав отношения, а также анализа соотношения между кортежами
- •Типология отношений на основе понятия проекции и понятия области определения
- •Типология отношений на основе понятия функциональной зависимости
- •Представление и типология классических отношений
- •Отношения предельного вида
- •Типология бинарных отношений и метаотношения над ними
- •Множество соответствий как метаотношение, заданное на множестве бинарных ориентированных отношений
- •Типология тернарных отношений и метаотношения над ними
- •Отношения над множествами
- •Отношения над кортежами
- •Отношения над отношениями
- •Числовые отношения
- •Резюме к подразделу 3.3
- •Представление реляционных структур в языке scb. Типология реляционных структур. Классические и неклассические реляционные структуры
- •Представление реляционных структур в языкеScb
- •Типология реляционных структур
- •Отношения над реляционными структурами. Реляционные метаструктуры
- •Графовые структуры и отношения над ними
- •Выводы к разделу 3
Типология отношений на основе понятия функциональной зависимости
Идентификаторы ключевых scb-узлов:функциональная зависимость; отношения без функциональных зависимостей; отношения с одной функциональной зависимостью; отношения с несколькими функциональными зависимостями; ключевая функциональная зависимость; ключ отношения; отношение без ключей; отношение с одним ключом; отношение с несколькими ключами; функция; декартово произведение; отношение без функций; отношение с одной функцией; отношение с несколькими функциями; взаимно однозначное бинарное отношение; алгебраическая операция.
Определение 3.3.5.1. Будем говорить, что отношениеrимеетфункциональную зависимостьатрибутовay1 ,… ,aym отатрибутов ax1 , … , axnв том и только в том случае,если:
указанные множества атрибутов не имеют общих элементов;
все перечисленные атрибуты входят в схему отношения r ;
в отношении rне существует двух таких кортежей, у которых бы совпадали элементы, имеющие атрибуты из множества{ax1 , … , axn } , ноне совпадали элементы, имеющие атрибуты из множества {ay1 ,… ,aym } .
Другими словами, те элементы кортежа, входящего в отношение r, которые имеют атрибуты из множества{ax1 , … , axn },однозначноопределяют другие элементы этого же кортежа, имеющие атрибуты из множества{ay1 ,… ,aym }[330] (Мейер Д.1987кн-ТеориРБД). Атрибуты из множества{ax1 , … , axn }будем называть атрибутами аргументов функциональной зависимости, а атрибуты из множества{ay1 ,… ,aym }– атрибутами результата функциональной зависимости. Минимальное число атрибутов аргументов и атрибутов результата равно 1.
Анализ наличия функциональных зависимостей в отношениях позволяет выделить следующие классы отношений:
отношения без функциональных зависимостей;
отношения с одной функциональной зависимостью;
отношения с несколькими функциональными зависимостями.
Определение 3.3.5.2. Функциональную зависимость атрибутовay1 ,… ,aymот атрибутовax1, … , axnв рамках отношенияr будемназывать ключевой функциональной зависимостьюв том и только в том случае,еслив схеме отношенияr не существует ни одного атрибута, который бы не принадлежал либо множеству{ay1,… ,aym } , либо множеству{ax1, … , axn } .
Множество атрибутов аргументов ключевой функциональной зависимости иногда называют ключом заданного отношения.
Из приведенного определения следует, что для любых двух различных кортежей kiиkj, входящих во множествоr , существует атрибутaxeиз множества{ax1 , … , axn }такой, что элемент кортежаkiс атрибутомaxeне совпадает с элементом кортежаkj , имеющим тот же атрибут. Другими словами, в отношенииr не существует двух таких кортежей, в которых бы совпадали элементы с атрибутами из множества{ax1 , … , axn }и не совпадали элементы, имеющие остальные атрибуты [330] (Мейер Д.1987кн-ТеориРБД). Это означает, что для кортежей, принадлежащих отношениюr, элементы, имеющие атрибуты из множества{ax1 , … , axn } ,однозначноопределяютвсеостальные элементы кортежа, т.е. однозначно определяют весь кортеж.
Анализ наличия ключевых функциональных зависимостей в отношениях позволяет выделить следующие классы отношений:
отношения без ключей;
отношения с одним ключом;
отношения с несколькими ключами.
Определение 3.3.5.3. Ключевую функциональную зависимость отношенияr будем называтьфункциейв том и только в том случае, если:
количество атрибутов результатов этой ключевой зависимости равно 1 – обозначим этот единственный атрибут результата функциональной зависимости через ay ;
в каждом кортеже отношения r существует не более одного компонента с атрибутомay ;
проекция отношения rпо атрибутамax1 , …, axnв случае, если количество указанных атрибутов больше 1, представляет собой декартово произведение.
Примечание.Определение декартова произведения см. впункт 3.3.7.
Функцию n-арного отношения будем называть( n - 1) -арной функцией.
Заметим, что каждая функциональная зависимость бинарного ориентированногоотношения являетсяключевойфункциональной зависимостью, а такжефункцией.
Анализ наличия функций в отношениях позволяет выделить следующие классы отношений:
отношения, не имеющие функций;
отношения, имеющие одну функцию;
отношения, имеющие несколько функций.
Определение 3.3.5.4. Взаимно однозначным отношениембудем называть бинарное ориентированное отношение, которому соответствуютдверазличные функции.
Определение 3.3.5.5. Функцию отношения r будем называтьалгебраической операциейв том и только том в случае, если отношениеrпринадлежит к классу отношений, у которыхвсе домены совпадают(см. пункт 3.3.4).
