Язык RL (I)
Описание языка RL
Часть 1. Введение. Обработка выражений и термов.
1.
Опишите функцию, значение которой на выражении
X равно
Y, на выражении
Y равно
X, а на остальных выражениях равно пустому выражению.
2.
Опишите логические функции
- not
- and
- or.
Их аргументами и значениями могут быть только
TRUE или
FALSE. (При недопустимых аргументах значение — НЕОПРЕДЕЛЕНО). Функция
not имеет один аргумент, и её значение равно
TRUE только если её аргумент равен
FALSE. Функции
and и
or имеют по два аргумента, значение
and равно
TRUE только если оба аргумента равны
TRUE, а значение
or равно
FALSE только если оба аргумента равны
FALSE.
3.
Выразите функции
LAST и
BL через другие стандартные функции, т.е. не используя стандартных функций
LAST и
BL, опишите функции, значение которых равны:
- последнему терму выражения-аргумента);
- выражению-аргументу без последнего терма.
В задачах
4–5 аргументом является последовательность атомов
4.
Удалите
- все атомы bad.
- все заданные атомы.
5.
- Каждое вхождения атома bad замените на атом good.
- Каждое вхождения заданного атома замените на другой заданный атом.
6.
Измените порядок следования термов первого порядка на противоположный.
7.
- Опишите функцию even, значение которой на выражениях с чётным числом термов равно TRUE, а на остальных — FALSE. а.
- Опишите функцию, значение которой равно TRUE на выражениях, в которых число термов кратно 3, и равно FALSE на всех остальных выражениях.
8.
Остатки от деления целого числа на 3 могут быть равны 0, 1, 2. Опишите (в одной программе) три логические функции:
mod_three_zero,
mod_three_one,
mod_three_two, каждая из которых имеет значение
TRUE если и только если число термов в выражении даёт указанный остаток при делении на 3.
9.
Удалите из заданного выражения
- все термы (хх).
- все заданные термы.
10.
Удалите из заданного выражения все скобки.
11.
- Каждое вхождения атома bad замените на атом good.
- Каждое вхождения заданного атома замените на другой заданный атом.
12.
Измените порядок следования термов на противоположный, но рекурсивно по всем выражениям внутри термов.