Запити, фільтри, використання та функціональне призначення
Таким чином, визначення того, чи є дане вираження арифметичним, і обчислення значення вираження - це два різних питання.
Перейдемо до визначення логічних виражень. Ми будемо вважати, що “цеглини” логічних виражень мають вид хq Т, де х - атрибут, Т - арифметичне вираження, а q - один із символів порівняння: = (дорівнює), <> (не дорівнює), < (менше) чи > (більше). З'єднуються “цеглини” за допомогою логічних операцій AND, OR і NOT.
Як і для арифметичних виражень, ми хочемо дати формальне визначення. Спочатку визначимо найпростіші логічні вираження, чи атоми.
Визначення 1. Нехай х - атрибут, Т - арифметичне вираження. Тоді вираження х=Т, х<>Т, х<Т и х>Т називаються атомами.
Тепер можна формально визначити логічні вираження. Ми будемо позначати їх великими латинськими буквами.
Визначення 2.
Всякий атом є логічне вираження.
Істина і Неправда - логічні вираження.
Якщо X - логічне вираження, то вираження, те (X) - теж логічне вираження
Якщо Х и У - логічні вираження, то вираження Х AND Y, Х OR Y і NOT Х теж є логічними.
Інших логічних виражень немає.
От приклади логічних виражень: NOT х = 7, (х = 2+2) AND у > 2*(х+3).
Тепер переходимо до значень виражень. Значеннями логічних виражень є Істина і Неправда.Спочатку визначимо значення атомів. Для цього всім атрибутам додамо числові значення й обчислимо значення арифметичного вираження, що входить в атом. Символи =, <>, < і > інтерпретуються як стандартним образом, як знаки порівняння чисел. Атом приймає значення Істина, якщо істинно відповідне порівняння, у противному випадку значення атома Неправда. Наприклад, якщо значення х и у є, відповідно, 7 і 8, то значенням атома х=х+2*у буде Неправда, тому що насправді 7 не дорівнює 23.
Для обчислення значення логічного вираження, що не є атомом, служать так називані таблиці істинності. Вони дозволяють обчислити значення логічного вираження, якщо відомі значення його підвисловлень. От таблиця істинності для операції AND.
ХYХ AND Y
ІстинаІстинаІстина
ІстинаНеправдаНеправда
НеправдаІстинаНеправда
НеправдаНеправдаНеправда
Она показывает, как, зная значения выражений Х и Y, вычислить значение выражения Х AND Y.
А вот таблицы истинности для OR и NOT:
ХYХ OR Y