Прямое (декартово) произведение множеств двух множеств – это множество упорядоченных пар, в которых первый элемент в паре принадлежит первому множеству а второй второму множеству.
A1 × A2 ≔ {(a1, a2) | a1 ∈ A1 & a2 ∈ A2).
Пример
Для множетсв
A1 ≔ {5, 6}
A2 ≔ {1, 2, 3}
Результатом перемножения будет
A1 × A2 ≔ {(5, 1), (5, 2), (5, 3), (6, 1), (6, 2), (6, 3)}.
Отношение – это любое подмножество R из множеств A1 на A2.
R ⊂ A1 × A2
Например для предыдущего примера можно построить такое отношение
R ≔ {(5, 3), (6, 2)}
Кортеж – это упорядоченный набор данных.
R ≔ {(5, 3), (6, 2)} – отношение R состоит из двух кортежей (5, 3) и (6, 2).
Вот как это соотносится со структурой реляционной БД, как должен выглядеть код на языке Си, что бы это описать?
Точнее код я сам напишу, мне главное логику понять.
Ещё маленький вопрос, домен - это область всех допустимых значений или только уже заданных?
Например есть домен имён D ≔ {Иван, Пётр, Сергей} задаёт три имени или это не именованный атрибут,
а домен это D ≔ {Иван, Пётр, Сергей, ... и т. д.}?