// ************************************************************************** // все, что имеет отношение к ядру // // ************************************************************************** // ************************************************************************** // фраза с обычным глаголом // ************************************************************************** @Перевод { @Структура ядро_повест( см_глагола S1 ) = гр_сущ( &Число, &Лицо ) сказуемое( &S1 ) ; @Структура ядро_повест = гр_сущ( &Число, &Лицо, %И, &Род ) сказуемое( Лицо, Число, Род ) ; @Таблица( лицо Лицо = лицо Лицо ) { 1е = 1е ; 2е = 2е ; 3е = 3е ; } @Таблица( число Число = число Число ) { Ед = Ед ; Мн = Мн ; } } @Перевод { @Выбор ядро_вопрос1a( см_глагола S1 ) = ядро_вопрос_модальное( &S1 ) ядро_вопрос( &S1 ) ; @Выбор ядро_вопрос1a = ядро_вопрос_модальное( %Нет ) ядро_вопрос( %Нет ) ; } @Перевод { @Структура ядро_вопрос1( см_глагола S1 ) = Вопрос_к_подлежащему сказуемое( &S1 ) ; @Структура ядро_вопрос1 = Вопрос_к_подлежащему( %И ) сказуемое( %3е, %Ед, %М ) ; } @Перевод { @Структура ядро_вопрос2( см_глагола S1 ) = Вопрос_к_обстоятельству ядро_вопрос1a( &S1 ) ; @Структура ядро_вопрос2 = Вопрос_к_обстоятельству ядро_вопрос1a ; } // ---------------- ядро -------------------------------------------------- @Перевод { @Выбор ядро( см_глагола S1 ) = ядро_модальное( &S1 ) ядро_повест( &S1 ) ядро_вопрос_модальное( &S1 ) ядро_вопрос( &S1 ) ядро_вопрос1( &S1 ) ядро_вопрос2( &S1 ) ядро_повелит( &S1 ) ; @Выбор ядро = ядро_модальное ядро_повест ядро_вопрос_модальное( %Нет ) ядро_вопрос( %Нет ) ядро_вопрос1 ядро_вопрос2 ядро_повелит ; } @Перевод { @Выбор ядро_прид( см_глагола S1 ) = ядро_повест( &S1 ) ядро_модальное( &S1 ) ; @Выбор ядро_прид = ядро_повест ядро_модальное ; } // ----------- фраза обычная ------------------------------ @Перевод { @Структура фраза_а = ядро( &S1 ) хвост_а ; @Структура фраза_а = ядро хвост_а ; } @Перевод { @Структура фраза_б = ядро( %восприятия ) все_все ; @Структура фраза_б = ядро все_все ; } @Перевод { @Структура фраза_вопрос3 = Вопрос_к_подлежащему ядро_вопрос1a( &S1 ) хвост_а Предлог ; @Структура фраза_вопрос3 = Предлог( &Падеж ) Вопрос_к_подлежащему( Падеж ) ядро_вопрос1a хвост_а ; } @Перевод { @Выбор фраза_0 = фраза_пп фраза_have_пп фраза_а фраза_б фраза_вопрос3 ; @Выбор фраза_0 = фраза_пп фраза_have_пп фраза_а фраза_б фраза_вопрос3 ; } @Перевод { @Структура фраза = _пред_обстоятельство фраза_0 _обстоятельство ; @Структура фраза = _пред_обстоятельство фраза_0 _обстоятельство ; } // ---------- фраза придаточная ---------------------------- @Перевод { @Структура фраза_а_прид = ядро_прид( &S1 ) хвост ; @Структура фраза_а_прид = ядро_прид хвост ; } @Перевод { @Структура фраза_б_прид = ядро_прид( %восприятия ) все_все ; @Структура фраза_б_прид = ядро_прид все_все ; } @Перевод { @Выбор фраза_прид1 = фраза_прид_пп фраза_have_прид_пп фраза_а_прид фраза_б_прид ; @Выбор фраза_прид1 = фраза_прид_пп фраза_have_прид_пп фраза_а_прид фраза_б_прид ; } // ************************************************************************** // фраза с глаголом have // ************************************************************************** @Перевод { @Выбор ядро_have = ядро_have_модальное ядро_have_вопрос_модальное ядро_повест_have ядро_вопрос_have ядро_вопрос_have1 ; @Выбор ядро_have( число &Число, род &Род, падеж Падеж ) = ядро_have_модальное( Число, Род, &Падеж ) ядро_have_вопрос_модальное( %Нет ) ядро_повест_have( Число, Род, &Падеж ) ядро_вопрос_have ядро_вопрос_have1( Число, Род, &Падеж ) ; } @Перевод { @Выбор ядро_have_прид = ядро_повест_have ; @Выбор ядро_have_прид( число &Число, род &Род, падеж Падеж ) = ядро_повест_have( Число, Род, &Падеж ) ; } @Перевод { @Структура фраза_have1 = _пред_обстоятельство ядро_have хвост_have ; @Структура фраза_have1 = _пред_обстоятельство ядро_have( Число, Род, &Падеж ) хвост_have( &Число, Падеж, &Род ) ; } @Перевод { @Выбор фраза_have = фраза_have1 фраза_вопрос_have2 ; @Выбор фраза_have = фраза_have1 фраза_вопрос_have2 ; } @Перевод { @Структура фраза_have_прид = ядро_have_прид хвост_have ; @Структура фраза_have_прид = ядро_have_прид( Число, Род, &Падеж ) хвост_have( &Число, Падеж, &Род ) ; } // ************************************************************************** // фраза с глаголом be // ************************************************************************** @Перевод { @Структура ядро_be_прид = гр_сущ( &Число, &Лицо ) сказуемое_be0 ; @Структура ядро_be_прид( число Число, род Род ) = гр_сущ( &Число, &Лицо, %И, &Род ) сказуемое_be0( Лицо, Число, Род ) ; @Таблица( лицо Лицо = лицо Лицо ) { 1е = 1е ; 2е = 2е ; 3е = 3е ; } @Таблица( число Число = число Число ) { Ед = Ед ; Мн = Мн ; } } @Перевод { @Структура ядро_вопрос_be1 = Вопрос_к_подлежащему сказуемое_be0 ; @Структура ядро_вопрос_be1 = Вопрос_к_подлежащему( %И ) сказуемое_be0( %3е, %Ед, %М ) ; } @Перевод { @Структура ядро_вопрос_be2 = Вопрос_к_обстоятельству ядро_вопрос_be ; @Структура ядро_вопрос_be2 = Вопрос_к_обстоятельству ядро_вопрос_be( %Нет ) ; } // ---------------- ядро be ---------------------------------------------- @Перевод { @Выбор ядро_be = ядро_be_модальное ядро_be_прид ядро_вопрос_be_модальное ядро_вопрос_be ядро_вопрос_be1 ядро_вопрос_be2 ядро_повелит_be ; @Выбор ядро_be( число Число, род Род ) = ядро_be_модальное ядро_be_прид( &Число, &Род ) ядро_вопрос_be_модальное( %Да ) ядро_вопрос_be( %Да ) ядро_вопрос_be1 ядро_вопрос_be2 ядро_повелит_be ; } @Перевод { @Структура1 фраза_be_пп = ядро_be хвост_be_a ; @Структура1 фраза_be_пп = ядро_be( &Число, &Род ) хвост_be_a( Число, Род, %Н, %И ) ; @Таблица( @Выбор = число Число ) { @0 = Ед ; } @Таблица( @Выбор = род Род ) { @0 = М ; } } @Перевод { @Структура1 фраза_be_прид_пп = ядро_be_прид хвост_be_a ; @Структура1 фраза_be_прид_пп = ядро_be_прид( &Число, &Род ) хвост_be_a( Число, Род, %Н, %И ) ; @Таблица( @Выбор = число Число ) { @0 = Ед ; } @Таблица( @Выбор = род Род ) { @0 = М ; } } @Перевод { @Структура1 фраза_be_whether_пп = ядро_be_whether хвост_be_a ; @Структура1 фраза_be_whether_пп = ядро_be_whether( &Число, &Род ) хвост_be_a( Число, Род, %Н, %И ) ; @Таблица( @Выбор = число Число ) { @0 = Ед ; } @Таблица( @Выбор = род Род ) { @0 = М ; } } // ------ фраза be+constant ------------------------------------ @Перевод { @Структура2 фраза_be1_пп; @Структура2 фраза_be1_пп; } @Перевод { @Структура2 фраза_be1_прид_пп; @Структура2 фраза_be1_прид_пп; } @Перевод { @Структура2 фраза_be1_whether_пп; @Структура2 фраза_be1_whether_пп; } // -------------------------------------------------------------- @Перевод { @Выбор фраза_be_а = фраза_be_пп фраза_be1_пп ; @Выбор фраза_be_а = фраза_be_пп фраза_be1_пп ; } @Перевод { @Структура фраза_be = _пред_обстоятельство фраза_be_а _обстоятельство ; @Структура фраза_be = _пред_обстоятельство фраза_be_а _обстоятельство ; } @Перевод { @Структура фраза_be_предлог = гр_сущ( &Число, &Лицо ) сказуемое_be0 гр_квази_наречия _хвост_квази_наречия _обстоятельство Предлог ; @Структура фраза_be_предлог = Предлог( &П ) гр_сущ( &Число, &Лицо, П, &Род ) сказуемое_be0( Лицо, Число, Род ) гр_квази_наречия _хвост_квази_наречия _обстоятельство ; } // ************************************************************************** // фраза с there_is // ************************************************************************** @Перевод { @Структура ядро_вопрос_there2 = Вопрос_к_обстоятельству ядро_вопрос_there ; @Структура ядро_вопрос_there2( число &Число, род &Род ) = Вопрос_к_обстоятельству ядро_вопрос_there( Число, Род, %Нет ) ; } @Перевод { @Выбор ядро_there = ядро_повест_there ядро_вопрос_there ядро_вопрос_there2 ; @Выбор ядро_there( число &Число, род &Род, падеж Падеж ) = ядро_повест_there( Число, Род, &Падеж, %Нет ) ядро_вопрос_there( Число, Род, %Нет ) ядро_вопрос_there2( Число, Род ) ; } @Перевод { @Структура фраза_there = _пред_обстоятельство ядро_there хвост_there_a _обстоятельство ; @Структура фраза_there = _пред_обстоятельство ядро_there( Число, Род, &Падеж ) хвост_there_a( &Число, Падеж, &Род ) _обстоятельство ; // ------- грубое хакерство ----------- @Таблица( @Выбор = падеж Падеж ) { @0 = И ; } } @Перевод { @Структура фраза_there_прид = ядро_повест_there хвост_there_a _обстоятельство ; @Структура фраза_there_прид = ядро_повест_there( Число, Род, &Падеж, %Нет ) хвост_there_a( &Число, Падеж, &Род ) _обстоятельство ; // ------- грубое хакерство ----------- @Таблица( @Выбор = падеж Падеж ) { @0 = И ; } } // ************************************************************************** // фраза It is квазинаречие + that_фраза // ************************************************************************** @Перевод { @Структура фраза_квазинаречие = @0[it] сказуемое_be _No гр_квази_наречия _хвост_квази_наречия _обстоятельство ; @Структура фраза_квазинаречие = сказуемое_be( %3е, %Ед, %С ) _No гр_квази_наречия _хвост_квази_наречия _обстоятельство ; } // ------------------------------------------------------------------------- @Перевод { // на самом деле придаточная @Выбор фраза_повест = фраза_прид1 фраза_have_прид фраза_there_прид фраза_прид_пп фраза_be_прид_пп фраза_be1_прид_пп фраза_have_прид_пп ; @Выбор фраза_повест = фраза_прид1 фраза_have_прид фраза_there_прид фраза_прид_пп фраза_be_прид_пп фраза_be1_прид_пп фраза_have_прид_пп ; } @Перевод { @Структура понять_значит_упростить = _пред_обстоятельство to_inf( &S1 ) @0[is] to_inf( &S2 ) ; @Структура понять_значит_упростить = _пред_обстоятельство to_inf( %Ед, %М ) @0[значит] to_inf( %Ед, %М ) ; } @Перевод { @Структура понять_значит_упростить2 = _пред_обстоятельство глагол( &S1, %Ing ) @0[is] глагол( &S2, %Ing ) ; @Структура понять_значит_упростить2 = _пред_обстоятельство глагол( %Сов, %Inf, @0, @0, @0, @0, %Актив, @0 ) @0[значит] глагол( %Сов, %Inf, @0, @0, @0, @0, %Актив, @0 ) ; }