кортежах доказана теорема, устанавливающая эквивалентность
В реляционном исчислении на переменных- кортежах доказана теорема, устанавливающая эквивалентность безопасных выражений в исчислении операциям реляционной алгебры.
Теорема 4.1. Если E - выражение реляционной алгебры, то существует эквивалентное ему безопасное выражение в реляционном исчислении с переменными-кортежами [17].
Для основных операций реляционной алгебры укажем следующие соответствующие выражения реляционного исчисления на переменных-кортежах.
1. Операции объединения (R1R2)
соответствует выражение
соответствует выражение
{t|R1(t) ?R2(t)}.
2. Операции разности (R1-R2) соответствует выражение
соответствует выражение
{t|R1(t) ?¬R2(t)}.
Рассматривается все множество кортежей t, таких, что t принадлежит R1 и не принадлежит R2.
3. Операции декартова произведения (R1R2) соответствует выражение
{t(k+m)|(u)(v)(R1(u) ?R2(v) ?t[1]=u[1] ?… ?t[k]=
=u[k] ?t[k+1]=v[1] ?… ?t[k+m]=v[m])}.
Рассматривается все множество кортежей t арности (k+m), таких, что существует кортеж u, принадлежащий R1, и существует кортеж v, принадлежащий R2, причем k первых компонентов кортежа t образуют компоненты кортежа и, а следующие m компонентов кортежа t образуют компоненты кортежа v.
4. Операции проекции соответствует выражение
{t(k)|(u)(R1
?t[1]=u[i1] ?… ?t[k]= u[ik])}
5. Операции селекции соответствует выражение {t|R(t) ?F'}, где F' – это выражение F, в котором каждый операнд, обозначающий компонент i, заменен на t[i].
Несмотря на то, что реляционное исчисление является достаточно сложным с точки зрения освоения и использования, тем не менее, его непроцедурная природа считается весьма перспективной и это стимулирует поиск других, более простых в употреблении непроцедурных методов. Подобные исследования привели к появлению двух категорий реальных реляционных языков:
– языков на основе преобразований;
– графических языков.
Языки на основе преобразований являются классом непроцедурных языков, которые используют отношения для преобразования исходных данных к требуемому виду. Эти языки предоставляют простые в употреблении структуры для получения результата. Примером реального языка на основе преобразований, реализующего реляционное исчисление с переменными-кортежами, является язык запросов SQL.