Математическая теория формальных языков

       

Математическая теория формальных языков

Предисловие
Слова, языки и грамматики
Формальные языки
Операции над языками
Гомоморфизмы

Порождающие грамматики
Классы грамматик

Математическая теория формальных языков

Конечные автоматы
Недетерминированные конечные автоматы
Конфигурация конечного автомата
Конечные автоматы с однобуквенными переходами
Характеризация праволинейных языков
Нормальная форма праволинейных грамматик

Детерминированные конечные автоматы
Преобразование конечного автомата к детерминированному виду
Основные свойства автоматных языков
Свойства замкнутости класса автоматных языков
Пересечение и дополнение автоматных языков
Лемма о разрастании для автоматных языков
Примеры неавтономных языков

Математическая теория формальных языков

Дополнительные свойства автоматных языков
Гомоморфизмы и автоматные языки
Локальные языки
Длины слов в автоматных языках
Регулярные выражения
Определение регулярного выражения
Свойства регулярных выражений
Теорема Клини

Звездная высота

Синтаксические моноиды
Множества правых контекстов
Минимизация детерминированных конечных автоматов
Множества двусторонних контекстов
Классы эквивалентности слов

Математическая теория формальных языков

Неоднозначность в контекстно-свободных грамматиках
Деревья вывода
Однозначные контекстно-свободные грамматики
Однозначные праволинейные грамматики
Языки Дика и Лукасевича
Нормальные формы контекстно-свободных грамматик
Устранение бесполезных символов

Устранение эпсилон-правил
Нормальная форма Хомского
Нормальная форма Грейбах

Математическая теория формальных языков

Основные свойства контекстно-свободных языков
Лемма о разрастании для контекстно-свободных языков
Лемма о разрастании для линейных языков
Свойства замкнутости класса линейных языков
Свойства замкнутости класса контекстно-свободных языков
Пересечение и дополнение контекстно-свободных языков
Пересечение контекстно-свободного языка с автоматным языком

Теорема Парика

Автоматы с магазинной памятью
Определение автомата с магазинной памятью
Характеризация контекстно-свободных языков
Автоматы с магазинной памятью с однобуквенными переходами
Дополнительные свойства контекстно-свободных языков
Деление контекстно-свободных языков
Гомоморфизмы и контекстно-свободные языки
Представления контекстно-свободных языков посредством гомоморфизмов

Математическая теория формальных языков

Детерминированные контекстно-свободные языки
Детерминированные автоматы с магазинной памятью
Свойства класса детерминированных языков

Синтаксический разбор
Нисходящий разбор
Восходящий разбор
Алгоритмические проблемы
Машины Тьюринга
Разрешимые и перечислимые множества
Массовые задачи
Грамматики типа 0
Проблема соответствий Поста
Алгоритмически разрешимые проблемы
Неукорачивающие грамматики

Линейно ограниченные автоматы
Проблема выводимости слова
Проблема пустоты языка
Проблема бесконечности языка
Проблема эквивалентности конечных автоматов
Проблема эквивалентности детерминированных МП-автоматов
Классы P и NP
Проблема неравенства регулярных выражений без итерации
Алгоритмически неразрешимые проблемы
Пересечение контекстно-свободных языков

Проблема однозначности
Дополнение контекстно-свободного языка
Проблема автоматности
Проблемы контекстной свободности

Практика создания динамических Web-узлов

За последние несколько лет процесс создания Web-узлов претерпел значительные изменения. Если раньше типичный Web-узел был статическим набором информации, вроде журнала, то современный Web-узел — это динамическое приложение, работающее в реальном времени. Пакет Macromedia Studio MX содержит средства для создания таких Web-узлов.
Современные Web-узлы стали динамическими, а это означает, что в зависимости от запроса их содержание передается броузеру или Flash-приложению. Содержание динамически встраивается на Web-страницу непосредственно в процессе передачи. Это фундаментально отличается от статических Web-страниц, содержание которых встраивается дизайнером в процессе разработки.
Распространение динамических Web-узлов и развитие технологии их создания оказали влияние на команды разработчиков, создающих такие Web-узлы. В эпоху статических Web-узлов творчество команды разработчиков зависело от содержания создаваемых страниц. Члены команды, задействованные в творческом процессе, создавали рисунки, текст, разрабатывали внешний вид и управляющие элементы страницы.
Появление и развитие динамических Web-узлов перевернули всю эту модель с ног на голову. Программисты и разработчики баз данных теперь закладывают основу Web-узла. В новой модели решающую роль при создании динамического содержания играет специфика работы этих разработчиков.
В некотором отношении это разделило создателей Web-узлов на два полярных лагеря — на технических и творческих работников. Такое разделение команды разработчиков на два лагеря создает опасность попасть в неприятную ситуацию, даже можно сказать, что эта неприятность неизбежна, если не предпринять специальные меры. Рано или поздно возникнет ситуация, когда дальнейшая работа невозможна, если дизайнеры не понимают основ программирования и принципов работы баз данных, а программисты не представляют себе, как именно должно быть представлено содержание страницы.

Создание динамических Web узлов
Анимация в Web
Создание Webстраниц с помощью Flash
Создание анимации для Webузла JCT
Создание элементов навигации
Этапы
Создание динамических страниц в Dreamweaver MX
Связь с ColdFusion MX
Оптимизация рисунков и пакет Studio MX
Оптимизация узла и программ
Избавляемся от ошибок и выпускаем Webузел в свет


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