Научная статья на тему 'Символьное интегрирование композиций элементарных функций'

Символьное интегрирование композиций элементарных функций Текст научной статьи по специальности «Математика»

CC BY
464
42
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИМВОЛЬНОЕ ИНТЕГРИРОВАНИЕ / АЛГОРИТМ РИША / ТЕОРЕМА ЛИУВИЛЛЯ ОБ ЭЛЕМЕНТАРНОМ ИНТЕГРАЛЕ

Аннотация научной статьи по математике, автор научной работы — Тарарова Светлана Михайловна

Статья посвящена программной реализации алгоритма символьного интегрирования Риша. Приведен алгоритм символьного интегрирования, выделены основные процедуры алгоритма, и приведены результаты вычислительных экспериментов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Символьное интегрирование композиций элементарных функций»

СИМВОЛЬНОЕ ИНТЕГРИРОВАНИЕ КОМПОЗИЦИЙ ЭЛЕМЕНТАРНЫХ ФУНКЦИЙ

© С.М. Тарарова

Ключевые слова: символьное интегрирование, алгоритм Риша, теорема Лиувилля об элементарном интеграле.

Аннотация

Статья посвящена программной реализации алгоритма символьного интегрирования Риша. Приведен алгоритм символьного интегрирования,выделены основные процедуры алгоритма, и приведены результаты вычислительных экспериментов.

Вычисление интегралов представляет собой важную часть компьютерной алгебры. Алгоритм интегрирования в конечном виде функций из трансцендентного расширения поля рациональных функций, порожденного экспонентами и логарифмами, был сформулирован в 1969 году Ришем [1].

Алгоритм состоит из следующих этапов.

1. Проверка, принадлежит ли подынтегральная функция данному классу. Проверка осуществляется с помощью структурной теоремы [2].

Для формулировки структурной теоремы введем некоторые новые понятия.

Определение 1.1. Элемент в назовем регулярным мономом над дифференциальным по-

лем Р, если в трансцедентен над Р и является либо логарифмом, либо экспонентой над И. Последовательность элементов в\,..., вп называется последовательностью регулярных мономов над

К (ж, в\ 5 . . . , 6^ — 1)., і Ті.

Теорема 1. Пусть К - поле констант, #і,..., вь-і, к > 1 - последовательность регулярных мономов, Е - множество индексов 1 < г < к — 1 таких, что ві является экспонентой 9і = ехр(/г); а Ь - множество индексов 1 < г < к — 1 таких, что ві является логарифмом 9і — іп(/і).

(1) Пусть 6-к — ехр(Д) - экспонента над — К {х, ві,..., . Д Є Если элемент в^

алгебраичен над Ик-і, то Д представляется в виде линейной комбинации с рациональными коэффи-

Ц її ЄН'ЇЇІСіЛі'іІ

где с - некоторая константа.

(2) Пусть — 1п (Д) - логарифм над Иь-і = К {х,в\,... ,в-к~і} , ¡к Є Рк-\- Если элемент $к алгсбраичен над пго f|c представляется в виде произведения рациональных степеней

где с - некоторая константа.

1.1. Освобождаемся от знаменателя и приравниваем коэффициенты при одинаковых мономах левой и правой частях. Но в первом случае нужно предварительно прологарифмировать обе части, представив логарифм от произведения в виде суммы логарифмов, при этом степени пг, wij превратятся в коэффициенты при одинаковых мономах. В результате получим систему линейных уравнений относительно с, щ, raj.

1.2. Если полученная на этапе 1.1 система не имеет решение в поле констант, такое, что все щ. mj 6 Q, то в і не является регулярным мономом, в противном случае проверяем, единственным ли образом 9}£ выражается через ві. Если “да”, то ві не является регулярным мономом, иначе структурная теорема, может только подсказать, как переформулировать исходную задачу.

2. С помощью теоремы Лиувилля [3] определяется вид элементарного интеграла, при условии его существования.

n^rrij є Q,

ІЄ.Б

J€L

Теорема 2 (принцип Лиувилля). Пусть / - функция из некоторого функционального поля К. Если / обладает элементарным над К интегралом, то этот интеграл имеет следующий вид:

3. Разложение подынтегрального выражения в сумму полинома и правильной рациональной дроби

Если 6п - логарифмическая функция, то разложить подынтегральное выражение в сумму полинома от вп и правильной рациональной дроби:

где VI,г>к - нормированные полиномы от в, .. -, ьп принадлежат полю К.

Если вп - экспоненциальная функция, то разлагаем подынтегральное выражение в сумму обобщенного полинома и правильной рациональной функции, знаменатель которой не делится на вп:

где щ - степень полинома, в' - 7)'д.

4. Вычисляем интеграл или приводим доказательство его отсутствия. Вычисление интеграла или доказательство его отсутствия производится методом неопределенных коэффициентов с использованием рекурсии.

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

-К - функциональное поле, предполагаемое эффективным, такое, что мы можем интегрировать в К; -в - логарифм над К, в' = ~ и в предполагается трансцендентным над К;

- поле К (в) имеет то же поле констант, что и поле К.

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

- К - функциональное поле, предполагаемое эффективным, такое, что мы можем интегрировать в К и умеем решать в К дифференциальное уравнение у' fy — д\

~ 6 - экспонента над К, 9' = т]'в и в предполагается трансцендентным над К;

- поле К (в) имеет то же поле констант, что и поле К.

Основной алгоритм метода неопределенных коэффициентов.

Представим полиномиальную (обобщенную полиномиальную) часть интеграла в виде [3]:

П

1 = 1

где ио принадлежит полю К, г>* принадлежит расширению К поля К с помощью конечного числа алгебраических над К констант, а С{ - константы, принадлежащие К.

[3].

ПОЛИНОМ

правильная рациональная функция

обобщенный полином

ч------------- ---------

правильная рациональная функция

т

р — ^ Аів1, п = т + 1;

т /Пч/П/гг п п / /

®пг+1 — 0;

'т+1

Вт — J Лт {т т 1)Вт+ів — — (ш -Ь І)Вт-\-і6 -Ь J Av Вт-1 = -гпЬт9+ / Am_i - rnBm0':

it л

Bq + Сі In г>і — —bid + / Aq — Bid1.

__L, і 1 J

1

Предположим, что полином д записан в виде Ац@ъ- Тогда дробно-рациональную часть можно представить в виде :

ЕШо А1г91 =

Гп СІХ

}■ TD “і

у^ + СгЫг\

/ тп — г I

4=1 ' J

Е?=оА1гв1

г=1

" 1 Г В^гУ ,В^, Сг(гп~У

г, А I 1 “Г ^ „ __ •

£

(і)

где коэффициенты (г е 1,..., п — 1) находятся с помощью расширенного алгоритма Евклида [4]. Т. е. находим такие Р(0), Q(<9), где Р - линейный относительно 9 полином, P(9),Q(9) е Кх, #i,..., 9n~i, что:

—Вцг' = q (mod г).

Подставляем значения Вц в равенство (1) и приравниваем коэффициенты при одинаковых мономах левой и правой частей интеграла.

На основе выше приведенного алгоритма была разработана программа в среде программирования Java, для вычисления интеграла от функции, содержащей полиномиальное выражение. Исходная функция преобразуется в матричный вид, что позволяет выполнять различные операции с ней.

Основные процедуры программного кода.

Основная процедура integrate выполняет интегрирование композиций элементарных функций. На выходе процедуры integrate получим результат интегрирования. Она использует следующие процедуры.

- Процедура razbienie выполняет выделение в подынтегральном выражении последовательности подвыражений.

-Процедуры ЕвИЕХР(для ехр()) и EsliLN (для 1п()) проверяют, является ли выбранная последовательность последовательностью регулярных мономов.

- Процедура FuncUonRAddArg представляет исходную функцию в виде массива, где строки массива хранят в себе элементарные функции и их аргументы.

- Процедура Solve решает систему линейных уравнений относительно коэффициентов при одинаковых мономах (с, щ, гаметодом Гауса. На выходе получаем решения системы линейных уравнений (гпЩх).

- Процедура Verify проверяет, является ли система совместной. На вход подаются корни системы линейных уравнений (int\}x) и некоторая заданная точность (double eps). На выходе получаем true или false,

- Если система линейных уравнений несовместна, то вместо с, пг, rrij с помощью процедуры EsliVerify подставляем их значения и проверяем единственным ли образом 9k выражается через 9i. Если “нет”, то данная процедура возвращает переформулированную исходную функцию.

- Процедура Diff находит производную от 9i.

- Метод неопределенных коэффициентов в зависимости от того, относительно какой переменной происходит интегрирование (ехр() или 1п0), осуществляется в процедуре InPatsMeniExv или InPatsMeniLn. Данные процедуры возвращают массив В,.

- Процедура ItogSum подставляет вместо Вг и 9i их значения в формуле:

ГП

P=Y,Biei.

¿=о

Перечисленные выше процедуры программы реализованы. Приведем пример вычисления интеграла.

функции: / — 1п(:г ехрж2)2.

Построим последовательность расширений полей, которая начинается с поля рациональных чисел Пусть С01 = X2, а02 = ехр(асц), аоз = ха02, а04 = 1п(а03), 005 = а24.

Нужно проверить, является ли выписанная последовательность последовательностью регулярных мономов над (¡¿(х) — (¡¿(аох).

йо-2 = ехр(асп), Я = Д[с, х], ро1 = х2с.

Приравниваем коэффициенты при одинаковых мономах. Получили массив коэффициентов

/ 0 -1 \

х = , „ I .

у -1 и у

Т.к. соответствующая система несовместна, то ао2 является регулярным мономом над (2(аоъ аог)-ао4 = 1п(аоз), Я — Я[с, т0,х, ао2], ро1 — —т0а02 + а02 + хс Приравниваем коэффициенты при одинаковых мономах. Получили массив коэффициентов

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

/0 -1 -1 ^

10 0-1 V -1 о о /

1ак как соответствующая система несовместна, то ао4 является регулярным мономом над <5(aoi, Дог, аоз)-

В поле Q(x, 001, ао2, аоз) исходное выражение имеет вид а§4.

Производная от йоъ а02> аоз, ао4:

ab i = (2.0а:),

а02 = ((2.0a:)) * а02,

4з = (((2.0а:)) * а02) * (a:) + а02 * (1),

а04 = (((((2.0а:)) * а02) * (ж) + а02 * (1)))/(а02 * х).

Метод неопределенных коэффициентов

т = (х), ]

В[ 1] = — (ж'»5 — 2 * (ж).

в|о] = ((г)3)/(3) -f (3 * х2)/(2) + 2 * (х),

J / = (i3/3 3 * íc2/2 + 2 * г) + ln(cc ехр(а:2))(—(а:)2 — 2 * х) + 1п(х ехр(а:2))2а;.

Написаны программы для метода неопределенных коэффициентов для полиномиальной части интеграла, которая содержит композицию элементарных функций, ехр() и 1п(). В дальнейшем планируется расширить программный комплекс на дробно-рациональные выражения комплексную область,а также распараллелить программу для проведения вычислений на кластере ТГУ и МСЦ.

Работа выполнена при частичной поддержке грантов РФФИ (проект 08-07-97507) и программы "Развитие потенциала высшей школы"(проект 2.1.1/1853).

Список литературы

1. Risch R.H. The problem of integration in finite terms // Trans. Amer. Math. Soc. 1969. Vol. 139. P. 167-189.

2. Панкратьев E.B. Элементы компьютерной алгебры (Конспекты спецкурса). М.: Бином. Лаборатория знаний, 2007.

3. Дэвенпорт Д., Сирэ П., Турнъе Э. Компьютерная алгебра. М.: Мир,1991.

4. Кнут Д. Искусство программирования для ЭВМ. М.: Мир, 1976. Т. 1.

Поступила в редакцию 20 ноября 2008 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.