В лаборатории Н.Н. Леонтьевой
начинаются эксперименты по созданию
программы синтаксиса русского
языка. До этого в лаборатории работала старая
программа синтаксиса, написанная
Н.Ф. Сущанской. К сожалению, Н.Ф. Сущанская находилась к тому моменту
вне зоны досягаемости (в Польше),
а исходный код без автора понять
было очень трудно. В долгих разговорах формулируется основной синтаксический
тезис данной программы:
"Омонимия хаотична, поэтому
правила не должны использовать информацию об омонимии, поэтому алгоритм
перебора морфологических вариантов
должен быть полным, и он должен быть отделен от синтаксических правил."
Дима Панкратов реализует первую версию синтаксического анализа . Основные правила синтаксического анализа формулирует Соня Семенова и Н.Н.Леонтьева. Программа содержит около 23 правила, создан общий механизм применения правил. Реализована на Borland C++. Вывод результатов в текстовый файл.
Создается новая версия программы на MS VC. В программе
определяются понятие группы (в стиле А.В. Гладкого) и понятие одного
синтаксического правила ("синтаксической
форматки"). Определяется круг возможных операций над группами. Построение групп включает теперь возможность
динамической перестройки надгрупп групп, если меньшие группы были изменены.
Создаются базовые синтаксические
форматки, которые заимствуются из первой версии. Часть из этих форматок сохранились в текущей версии почти нетронутыми (например, правило
для группы "НАР_ПРИЛ").
Вывод результатов в файл RTF.
февраль – июль
С начала года образуется компания
Диалинг, которая начинает
вкладывать средства в
развитие этой программы. Вместе
с Левой Гершензоном Д.Панкратов
начинает создание модуля фрагментации, который призван сократить кол-во перебираемых синтаксических вариантов.
Формулируется понятие фрагмента("клаузы"). Фиксируется
фундаментальное различие между клаузой
и группой (клауза может содержать
непроанализированные куски, группа –
нет). Создаются первые правила иерархии клауз.
Создаются правила удаления омонимов и первое описание синтаксиса и фрагментации (к сожалению, оно же
последнее).
С программистской точки зрения, происходит следующее. Дима Панкратов создает графическую оболочку VisualSynan(MFC), которая удобно показывает синтаксические группы и отношения. Создается COM-объект Synan, передача данных между VisualSynan и Synan идет через COM.
сентябрь-декабрь
Создание правила по
определению подлежащего во фрагменте. Впервые начинается использование
синтаксиса для фрагментации. Таким образом, возникают впервые т.н.
"качели": сначала работает фрагментация, потом синтаксис,
потом опять фргагментация, потом синтаксис и т.д.
Синтаксис начинает использовать термины, взятые из тезаурусов, для
построения синтаксических групп.
январь-май
В синтаксис вводится понятие юнита(идея Д.Панкратова), которое представляет
собой либо слово, либо клаузу. Теперь
появляется возможность вкладывать одну клаузу
в другую, а потом строить синтаксические группы, которые включают не
только слова, но и клаузы (как юниты). Такая
конструкция создается, например,
для причастного оборота.
Под руководством Т.Кобзаревой
создаются функция для необособленного согласованного определения (НСО),
форматки группы с разрывными союзами, группы прил-сущ в постпозиции.
Было введено понятие
"покрытия" предложения, которое используется для алгоритма
удаления омонимов, заменив старые алгоритмы.
Т.Кобзаревой был разработан алгоритм аналитических глагольных форм,
который был полностью реализован и
улучшен И. Ножовым.
октябрь-декабрь
(И.Ножов, О.Шалимов, конс. Д.Панкратов)
Правила
фрагментации о тире и вводных
конструкциях. Развитие алгоритма
аналитических глагольных форм. Тестирование.
январь – апрель
Правило о двух
предикатах в одной клаузе. Тестирование.
Создание JAVA-апплета
по типу VisualSynan.
январь-февраль
Создание версии
синтаксического анализа для размеченного корпуса русских текстов.
август-декабрь