@Перевод
{
   @Структура  модальность_мочь = _Ne глагол[povi] ( %Глагол, &Время ) ;
   @Структура  модальность_мочь( лицо &Лицо, число &Число, род &Род ) = 
               _Ne 
               глагол[мочь] ( &СС, %глагол, Лицо, Число, &Время, Род, %Актив, @0 ) 
               ;
   @Таблица( время Время = время Время, совершенность СС )
   {
      прошлое = прошлое Сов ;
      настоящее = настоящее Несов ;
      будущее = будущее Сов ;
   }
}

@Перевод
{
   @Структура  модальность_хотеть = _Ne глагол[voli] ( %Глагол, &Время ) ;
   @Структура  модальность_хотеть( лицо &Лицо, число &Число, род &Род ) = 
               _Ne 
               глагол[хотеть] ( &СС, %глагол, Лицо, Число, &Время, Род, %Актив, @0 ) 
               ;
   @Таблица( время Время = время Время, совершенность СС )
   {
      прошлое = прошлое Сов ;
      настоящее = настоящее Несов ;
      будущее = будущее Сов ;
   }
}

@Перевод
{
   @Структура  модальность_должен = _Ne глагол[devi] ( %Глагол, &Время ) ;
   @Структура  модальность_должен( лицо &Лицо, число &Число, род &Род ) = 
               _Ne 
               глагол[быть] ( &СС, %глагол, Лицо, Число, &Время, Род, %Актив, @0 ) 
               глагол[должен] ( %Несов, %глагол, @0, Число, @0, Род, %Актив, @0 ) 
               ;
   @Таблица( время Время = время Время, совершенность СС )
   {
      прошлое = прошлое Сов ;
      настоящее = настоящее Несов ;
      будущее = будущее Сов ;
   }
}

@Перевод
{
   @Выбор      модальность_условн1 = @0[povus] @0[volus] @0[devus] ;
   @Выбор      модальность_условн1( лицо &Лицо, число &Число, род &Род ) = 
               глагол[мочь] ( Несов, глагол, Лицо, Число, прошлое, Род, Актив, @0 ) 
               глагол[хотеть] ( Несов, глагол, Лицо, Число, прошлое, Род, Актив, @0 ) 
               глагол[должен] ( Несов, глагол, @0, Число, @0, Род, Актив, @0 ) 
               ;
}

@Перевод
{
   @Структура  модальность_условн = _Ne модальность_условн1 ;
   @Структура  модальность_условн( лицо &Лицо, число &Число, род &Род ) = 
               _Ne модальность_условн1( Лицо, Число, Род ) @0[бы] ;
}

@Перевод
{
   @Выбор      модальность = 
               модальность_мочь 
               модальность_хотеть 
               модальность_должен 
               модальность_условн 
               ;
   @Выбор      модальность( лицо &Лицо, число &Число, род &Род ) = 
               модальность_мочь( Лицо, Число, Род ) 
               модальность_хотеть( Лицо, Число, Род ) 
               модальность_должен( Лицо, Число, Род ) 
               модальность_условн( Лицо, Число, Род ) 
               ;
}

// ----------------------------------------------------------------------------------
@Перевод
{
   @Структура  сказуемое_esti_модальное = 
               модальность связка( %Inf, @0 ) _обстоятельство ;
   @Структура  сказуемое_esti_модальное( лицо &Лицо, число &Число, род &Род ) = 
               модальность( Лицо, Число, Род ) 
               связка( %Несов, %Inf, @0, @0, @0, @0, @0 ) 
               _обстоятельство 
               ;
}

// ----------------------------------------------------------------------------------
@Перевод
{
   @Структура  сказуемое_здесь_модальное = 
               модальность связка( %Inf, @0 ) _обстоятельство ;
   @Структура  сказуемое_здесь_модальное( лицо &Лицо, число &Число, род &Род, падеж &Падеж ) = 
               модальность( Лицо, Число, Род ) 
               связка( %Несов, %Inf, @0, @0, @0, @0, @0 ) 
               _обстоятельство 
               ;
   @Таблица( @Выбор = падеж Падеж )
   { @0 = И ;
   }
}

@Перевод
{
   @Структура  сказуемое_havi_модальное = модальность @0[havi] _обстоятельство ;
   @Структура  сказуемое_havi_модальное( лицо &Лицо, число &Число, род &Род ) = 
               модальность( Лицо, Число, Род ) @0[иметь] _обстоятельство ;
}