Оценочная оптимизация для магии алгебра и реализация

       

Упрощение:


Некоторые преобразования ?-полусоединений могут приводить к генерации выражений, в которых некоторые предикаты проверяются более одного раза; например, в правой части описанного выше преобразования, вводящего ?-полусоединение, предикат ? проверяется дважды. В общем случае повторяющиеся проверки неизбежны, но в некоторых частных случаях они являются избыточными, и выражения можно упростить путем устранения повторяющихся проверок. Следующее преобразование может быть использовано для устранения повторяющихся проверок при наличии возможности его применения.

где attrs(E2) функционально определяют все атрибуты в ?2 над FD(?1)

FD(E1).

Заметим, что использование подмножества функциональных зависимостей при выполнении этого преобразования является безопасным, так что полный механизм вывода функциональных зависимостей не существенен.



Содержание раздела