Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
65
Добавлен:
16.04.2015
Размер:
437.95 Кб
Скачать

Как представить язык?

Если язык конечен, надо просто перечислить все предложения, т. е. составить список.

Если язык бесконечен, то возникает проблема нахождения способа конечного представления бесконечного языка.

Это конечное представление само будет строкой символов над некоторым алфавитом с подразумеваемой интерпретацией, которая связывает это конкретное представление с данным языком.

11

Для каждого ли языка существует конечное представление?

— На этот вопрос ответ отрицателен ибо:

множество всех предложений над данным словарем счётно-бесконечно;

множество всех подмножеств счётнобесконечного множества не является счётным (Г. Кантор, 1878); другими словами, множество всех языков над данным алфавитом несчётно;

конечное представление языка будет предложением какого-то, обычно другого,

языка — метаязыка.

12

Конечное представление языков

Пусть метаязык есть M V *. Как было показано ранее, множество V * счётнобесконечено. Поэтому метаязык M, как подмножество множества V * , не более чем

счётно-бесконечен.

Так что существует значительно больше языков (их множество несчётно), чем их конечных представлений (их множество счётно).

13

Конечное представление языков

Короче говоря,

Людвиг Витгеншейн

26.04.1889 (Вена) – 29.04.1951 (Кембридж)

“То, что вообще может быть сказано, может быть сказано ясно, а о чём невозможно говорить ― о том следует молчать.”

Людвиг Витгеншейн

14

§ 1.2. Представление языков

Распознающий алгоритм

определяет, есть ли данное предложение в данном языке или нет.

Распознающая процедура

для предложений в языке прекращает работу с ответом “да”, а

для предложений не из языка

либо завершается с ответом “нет” , либо не завершается *) вовсе.

*) Именно этим процедура отличается от алгоритма

15

Представление языков

Говорят, что такие алгоритм и процедура

распознают язык.

Существуют языки, которые можно

распознать при помощи процедуры, но не при помощи алгоритма.

16

Порождающая процедура

Порождающая процедура

систематически порождает предложения языка последовательно в некотором порядке.

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

17

Порождающая процедура

Именно, можно систематически генерировать все предложения из множества V *, проверять каждое предложение на принадлежность его языку с помощью распознающего механизма и выводить в список только предложения языка.

18

Построение порождающей процедуры по распознающей процедуре

Однако, если используется распознающая

процедура, а не алгоритм, то есть опасность,

что процесс порождения никогда не продвинется дальше первого же предложения, на котором распознающая процедура не завершается.

19

Построение порождающей процедуры по распознающей процедуре

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

20

Соседние файлы в папке lectures