2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Упростить рациональную функцию
Сообщение03.06.2023, 14:06 
Аватара пользователя
Предположим у нас есть параметрическая рациональная функция
$$
P = \frac{f(x)}{g(x)},
$$
где $f(x), g(x)$ -- полиномы от одной переменной с параметрами (скажем $a,b,c$).

Допустим мы знаем что у $f$ и $g$ есть общий корень -- параметры $a,b,c$ зануляют результант от $f$ и $g$.
Можно ли символьно сократить и тем самым упростить рациональную функцию?

 
 
 
 Re: Упростить рациональную функцию
Сообщение03.06.2023, 14:10 
См.: результанты, субрезультанты, субрезультантные многочлены

 
 
 
 Re: Упростить рациональную функцию
Сообщение03.06.2023, 20:09 
Пусть $p(x), q(x)$ - многочлены одной переменной $x$. Пусть также $s_i(p, q)$ - i-й субрезультант (См. https://en.wikipedia.org/wiki/Polynomial_greatest_common_divisor#Subresultants) многочленов $p(x), q(x)$, а $S_i(p, q)$ соответствующий i-й субрезультантный многочлен ((См. https://en.wikipedia.org/wiki/Polynomial_greatest_common_divisor#Subresultants)). Тогда, если $s_0(p, q)=...=s_{d-1}(p, q)=0$, а $s_d(p, q)\ne 0$, то $S_d(p, q)$ - наибольший общий делитель полиномов $p(x), q(x)$ и $S_0(p, q)=...=S_{d-1}(p, q)=0$.

Пример процедуры на языке Maple для вычисления $S_i(p, q)$ (здесь v - переменная полиномов, напр. 'x'):
Цитата:
sub_res:=proc(i,p,q,v)
local m,n,S,T,M1,M2,f,V:
m:=degree(p, v):
n:=degree(q, v):
S := LinearAlgebra[SylvesterMatrix](p, q, v)^+:
T:=LinearAlgebra[SubMatrix](S, [1..m+n-i], [1..n-i, n+1..m+n-i]):
M1:=Matrix([[Matrix(m+n-2*i-1, shape=identity)],[Matrix(1,m+n-2*i-1)]]):
f:=(ii,jj)->v^(i-jj+1):
M2:=Matrix([[Matrix(m+n-2*i-1,i+1)],[Matrix(1,i+1,f)]]):
V:=Matrix([M1,M2]):
return LinearAlgebra[Determinant](V.T):
end proc:


Также в Maple есть подпакет ChainTools пакета RegularChains. А там есть функции SubresultantChain(p, q, x, R) и SubresultantOfIndex(i, src, R). Последняя функция вычисляет субрезультантные многочлены порядка i.

 
 
 
 Re: Упростить рациональную функцию
Сообщение04.06.2023, 09:11 
Аватара пользователя
Спасибо! Правильно ли я понимаю что все коэффициенты у $f, g$ при этом фиксированы?
То есть они не могут сами по себе быть полиномами от параметров $(a,b,c)$?

 
 
 
 Re: Упростить рациональную функцию
Сообщение04.06.2023, 12:33 
DLL в сообщении #1596436 писал(а):
Спасибо! Правильно ли я понимаю что все коэффициенты у $f, g$ при этом фиксированы?
То есть они не могут сами по себе быть полиномами от параметров $(a,b,c)$?


Коэффициенты полиномов МОГУТ зависеть от параметров!

Пример:

Дано: $p(x) = x^3+a_2 x^2 + a_1 x + a_0, q(x)=x-b_0$ Найти НОД и условия его существования!
$s_0(p,q)=-a_2 b_0^2-b_0^3-a_1 b_0 - a_0, S_1(p,q)=x-b_0$. Тогда при условии $s_0(p,q)=0$, $S_1(p,q)=x-b_0$ - НОД(p, q).

-- 04.06.2023, 13:15 --

Кстати говоря...

Многие теоремы, относящиеся к локализации корней многочленов, применимы к многочленам без кратных корней. Т.е., чтобы иметь право применить подобного рода теорему, надо предварительно избавиться от кратных корней (найдя помимо всего прочего условия их существования). Вышеперечисленные задачи можно решить, рассматривая субрезультанты (и соотв. субрезультантные многочлены) многочлена и его производной: $s_i(p,\frac{d}{dx}p), S_i(p,\frac{d}{dx}p)$.

 
 
 
 Re: Упростить рациональную функцию
Сообщение05.06.2023, 08:46 
Аватара пользователя
Очень ценная штука! Спасибо!
Хорошо, итак мы нашли условия когда существует НОД и сам НОД.
Еще вопрос: а как собственно упростить рациональную функцию?
То есть если бы мы имели задачу без параметров, мы бы просто разделили числитель и знаменатель на НОД..

 
 
 
 Re: Упростить рациональную функцию
Сообщение05.06.2023, 22:24 
Пример: Пусть $p(x)$ - полином 5-й степени и пусть $g(x)$ - НОД, полином 3-й степени. Тогда результат деления $p(x)$ на $g(x)$ ищем в виде $a_2 x^2+a_1 x+ a_0$. Далее делаем $\boldsymbol{collect}(p(x)-g(x)(a_2 x^2+a_1 x+ a_0),x)$ и приравниваем коэффициенты при степенях нулю, получаем переопределенную СЛАУ (относительно $a_2,a_1,a_0$), которая совместна при выполнении вышеуказанных субрезультантных условий. В данном конкретном случае выбираем любые 3 уравнения (желательно, что попроще) данной СЛАУ и получаем значения коэффициентов в явном виде.

 
 
 
 Re: Упростить рациональную функцию
Сообщение06.06.2023, 12:58 
Аватара пользователя
Ага точно, при этом еще должны появиться неравенства на параметры в духе некий полином $P(a,b,c) \ne 0$ 8-)

 
 
 
 Re: Упростить рациональную функцию
Сообщение06.06.2023, 13:46 
Ну вы вот про это условие не забывайте $s_d(p, q)\ne 0$!

 
 
 
 Re: Упростить рациональную функцию
Сообщение07.06.2023, 12:38 
Аватара пользователя
Сильная штука. Спасибо!
Из праздного интереса: а если взять рациональную функцию от двух переменных
$$
P = \frac{f(x,y)}{g(x,y)},
$$
то что-нибудь подобное сделать можно?

 
 
 
 Re: Упростить рациональную функцию
Сообщение17.09.2023, 13:41 
Аватара пользователя
Хорошо, мои мысли по поводу функции двух переменных $(x,y)$. Мы можем посчитать результант по одной из них (скажем по $x$).
А потом если они имеют совместную компоненту, то производная по другой переменной - $y$ - должна быть равна нулю тождественно.
Отсюда, получаем условие на параметры. Другой вопрос: как теперь найти эту самую совместную компоненту? :-)

 
 
 [ Сообщений: 11 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group