Лингвофорум

Общий раздел => Наука и техника => Математика => Тема начата: Марбол от февраля 9, 2012, 08:22

Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 08:22
Здравствуйте!

Меня интересует, есть ли общая формула для производной N-го порядка от суперпозиции h функций f, g одного переменного x, т. е.: h(x) = f(g(x)). А то я сейчас пробую сам вывести, но пока неуспешно.
Название: Производные от суперпозиции функций.
Отправлено: RawonaM от февраля 9, 2012, 08:52
Если обе дифференцируемы, то по "правилу цепи" же.
h'(x) = f'(g(x))·g'(x)
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 09:08
Понятно, что по правилу цепи; но оно рекурсивное, а мне желательно иметь формулу не рекурсивного характера.
Для сравнения: любая производная от произведения: h(n)(x) = (f(x)*g(x))(n) - вычисляется по формуле, вполне аналогичной биному Ньютона, без знания предыдущих производных этого же произведения. Здесь астериск означает умножение.
Я даже написал программу на VBA, символьно дифференцирующую суперпозицию и произведение двух функций, но всё равно пока логики общей формулы N-ой производной не могу уловить. Думал, может, ответ уже есть в общем виде.
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 9, 2012, 16:33
Раз формулы нет у Демидовича, её нет в природе.
Название: Производные от суперпозиции функций.
Отправлено: Alone Coder от февраля 9, 2012, 17:55
А зачем вам n-я производная? А то так и дробную захочете :)
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 19:01
   Предположу, что производная вида f = F(1/n)(x) должна вычисляться, исходя из возможности выполнить следующую замену переменной:
x -> y(x): F(x) -> G(y)
так, что
F(x) = G(y)
и
G(n)(y) == F(1)(x).
Если такая замена возможна, то можно записать, в качестве определения:
F(1/n)(x) == G(1)(y).
   Например:
Пример удалён, ввиду его неверности. - Марбол
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 9, 2012, 19:17
На дробные производные обычно выруливают через спектральную теорию, как степени операторов. Явные формулы бывают интегродифференциальные.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 19:29
По-моему, формула должна быть в природе; в своих выкладках я усматриваю некоторую логику, но ещё не полностью.
Всё остаётся один непонятный член.
Название: Производные от суперпозиции функций.
Отправлено: Bhudh от февраля 9, 2012, 21:15
Там же идёт разрастание сумм.
Общая формула суммы конечного ряда вырисовывается?
Ещё и показатели степеней и степеней производных гуляют от 1 до n...
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 9, 2012, 21:55
Да ну нету формулы. Этому вопросу уже сколько лет, триста? Все формулы давно получены. Для очистки совести, конечно, можно посмотреть, например, Гурса...
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 22:20
Хорошо: я ещё не понял, откуда именно такие коэффициенты, а не другие, но в общем, выглядит стройно. Я могу показать свои результаты пока для шести первых производных, по чему уже можно вывести обобщение. Как Вы хотите читать: в Ворде или прямо тут? Для меня это вопрос времени: в Ворде набор пойдёт медленнее; и думаю, в ТеХе ещё даже более!
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 22:22
Цитата: Bhudh от февраля  9, 2012, 21:15
Общая формула суммы конечного ряда вырисовывается?
Да, она прорисовывается, не считая того, что непонятны коэффициенты.
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 9, 2012, 22:23
Проще сфоткать! (Или в мэпле посчитать. :-\)
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 22:24
Я настырный.

А что, Мэпл выводит общие формулы заданных рядов?
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 22:25
Сфотографировать как раз нечем. Давайте, я наберу прямо тут, греческими и латинскими буквами. Минут через десять, Вы сможете посмотреть.
Название: Производные от суперпозиции функций.
Отправлено: ИЕ от февраля 9, 2012, 22:26
Такую формулу можно вывести. Она должна быть родственна биному Ньютона с той разницей что здесь некоммутативный случай для g поскольку два типа возведения в степень. т. е. что то типа обобщения  (f g + g) ^ n для некоммутативного случая с разными типами умножений.
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 9, 2012, 22:28
Цитата: Марбол от февраля  9, 2012, 22:24
А что, Мэпл выводит общие формулы заданных рядов?

Вряд ли. Но первые сколько угодно производных он бы посчитал и даже, вероятно, удалось бы в удобоваримом виде их представить.
Название: Производные от суперпозиции функций.
Отправлено: Bhudh от февраля 9, 2012, 22:30
Цитата: ИЕ от февраля  9, 2012, 22:26Она должна быть родственна биному Ньютона
Там коэффициенты выходят не биномиальные.
Название: Производные от суперпозиции функций.
Отправлено: ИЕ от февраля 9, 2012, 22:31
Да не проблема - для шестой производной
[tex]15 g''(x)^3 f^{(3)}(g(x))+60 g'(x) g''(x) f^{(3)}(g(x)) g^{(3)}(x)+10 f''(g(x)) g^{(3)}(x)^2+45 g'(x)^2 g''(x)^2 f^{(4)}(g(x))+20 g'(x)^3 g^{(3)}(x) f^{(4)}(g(x))+15 f''(g(x)) g''(x) g^{(4)}(x)+15 g'(x)^2 f^{(3)}(g(x)) g^{(4)}(x)+15 g'(x)^4 g''(x) f^{(5)}(g(x))+6 g'(x) f''(g(x)) g^{(5)}(x)+g'(x)^6 f^{(6)}(g(x))+f'(g(x)) g^{(6)}(x)[/tex]

Цитата: Bhudh от февраля  9, 2012, 22:30
Цитата: ИЕ от февраля  9, 2012, 22:26Она должна быть родственна биному Ньютона
Там коэффициенты выходят не биномиальные.
Естественно. Эта формула не симметричная, ибо некоммутативная. Бином Нютона коммутативен.
Название: Производные от суперпозиции функций.
Отправлено: Bhudh от февраля 9, 2012, 22:36
Это у Вас шестая для [tex]g(f(x))[/tex], а если [tex]h(g(f(x)))[/tex] взять?‥
Название: Производные от суперпозиции функций.
Отправлено: ИЕ от февраля 9, 2012, 22:38
Цитата: Bhudh от февраля  9, 2012, 22:36
Это у Вас шестая для [tex]g(f(x))[/tex], а если [tex]h(g(f(x)))[/tex] взять?‥
Выписывать? В пол экрана получится.
Название: Производные от суперпозиции функций.
Отправлено: Bhudh от февраля 9, 2012, 22:39
Во-во. Так что общая формула для всех уровней вложенности вряд ли получится...
Название: Производные от суперпозиции функций.
Отправлено: ИЕ от февраля 9, 2012, 22:47
Цитата: Bhudh от февраля  9, 2012, 22:39
Во-во. Так что общая формула для всех уровней вложенности вряд ли получится...
С помощью сумм и произведений и факториалов в коммутативном случае компактной получается. Но все таки для некоммутативного случая можно выписать, но читабельность ее будет еще та....
Наверно, поэтому этого никто и не делал.
Название: Производные от суперпозиции функций.
Отправлено: Bhudh от февраля 9, 2012, 22:56
Цитата: ИЕ от читабельность ее будет еще та
Для компа в принципе всё равно, какая у неё читабельность.
Главное, чтобы распарсиваемость была хорошая.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 23:49
Это - ни в коем случае не вывод, а изложение промежуточного результата.

Вначале следует ввести ряд обозначений.

0) Даны функции f = f(y), g = g(x). Их суперпозиция - h(x) = f(g(x)).

1) Обозначим производные исходных функций:
df/dy = α,
dg/dx = u.
В дальнейшем потребуются именно они.

2) Для случая
y == g
(когда рассматривается суперпозиция функций f и g)
обозначим
DNh = DN(αu) = dN(αu)/dxN.

3) Для случая
y == x
(рассматривается произведение функций f и g)
обозначим
δN(αu) = dN(αu)/dxN.
В этом случае известен общий вид производной N-го порядка:
δN(αu) = ΣN( j ) CNj α( j )u( N - j )
где биномиальный коэффициент CNj = N!/{(N-j)!j!},
бегущий индекс j = 0, 1, ..., N.

4) Как таковая, величина δN(αu) не используется. Используется степенной ряд (по степеням u), коэффициенты которого равны слагаемым из δN(αu) соответствующего порядка:
AN = ΣN( j ) CNj α( j )u( N - j ) * u j .
где биномиальный коэффициент CNj = N!/{(N-j)!j!},
бегущий индекс j = 0, 1, ..., N.
Например:
A0 = αu,
A1 = α'u2 + αu'
A2 = α''u3 + 2α'u'u + αu''
A3 = α'''u4 + 3α''u'u2 + 3α'u''u + αu'''
A4 = α(4)u5 + 4α(3)u(1)u3 + 6α(2)u(2)u2 + 4α(1)u(3)u + α(0)u(4)
A5 = α(5)u6 + 5α(4)u(1)u4 + 10α(3)u(2)u3 + 10α(2)u(3)u2 + 5α(1)u(4)u + α(0)u(5)
A6 = α(6)u7 + 6α(5)u(1)u5 + 15α(4)u(2)u4 + 20α(3)u(3)u3 + 15α(2)u(4)u2 + 6α(1)u(5)u + α(0)u(6)

5) В сумме AN можно выделить среднюю часть, в которую не входят только самый старший и самый младший члены: например,
(4)u(1)u4 + 10α(3)u(2)u3 + 10α(2)u(3)u2 + 5α(1)u(4)u   для  A5.
Произведем сдвиг числовых коэффициентов на одну позицию, от младших к старшим членам:
10α(4)u(1)u4 + 10α(3)u(2)u3 + 5α(2)u(3)u2 + 1α(1)u(4)u.
Также понизим степени u на единицу:
10α(4)u(1)u3 + 10α(3)u(2)u2 + 5α(2)u(3)u + 1α(1)u(4).
Получившуюся величину назовем мезоном N-го порядка и обозначим μN:
μ5 = 10α(4)u(1)u3 + 10α(3)u(2)u2 + 5α(2)u(3)u + 1α(1)u(4).
Очевидно, следует принять, что
μ1 = 0.

7) Составим также на основе мезонов следующие величины. Отбросим младший член мезона: например,
μ4 = 6 α(3)u(1)u3 + 4 α(2)u(2)u2 [ + 1 α(1)u(3)u ]
получим здесь
(3)u(1)u2 + 4α(2)u(2)u1
понизим степень величины u на единицу:
(3)u(1)u1 + 4α(2)u(2)
Приравняем числовые коэффициенты единице:
α(3)u(1)u1 + α(2)u(2)
Обозначим получившуюся величину остатком и обозначим σ4, где подстрочный индекс указывает исходный мезон.
Очевидно, следует принять, что
σ1 = σ2  = 0
(или нет мезона, или он имеет единственный член).

6) Теперь можно записать выражения для шести первых производных от суперпозиции функций h = f(g(x)), в принятых обозначениях:

D0h = αu
D1h = A1 + μ1u = A1
D2h = A2 + μ2u(0)
D3h = A3 + 3 μ2u(1) + μ3u(0)
D4h = A4 + 5 μ2u(2) + 5 μ3u(1) + μ4u(0)
D5h = A5 + 15/2 μ2u(3) + 10 μ3u(2) + 15/2 μ4u(1) + μ5u(0) + 15 σ3 u(1) 2
D6h = A6 + 21/2 μ2u(4) + 35/2 μ3u(3) + 35/2 μ4u(2) + 21/2 μ5u(1) + μ6u(0) + 105 σ4 u(1) 2.

Осталось неясным общее выражение для числовых коэффициентов, входящих в выражения для DN.

Исправлены замеченные опечатки.
:yes:
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 9, 2012, 23:54
Что касается уровней вложенности, то для моей цели достаточно уметь вычислять производную однократного вложения функций, а дальнейшие вложения вычисляются путём рекурсии.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 10, 2012, 00:07
Надеюсь, я заметил все опечатки. Доброй ночи!
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 10, 2012, 07:29
Цитата: Квас от февраля  9, 2012, 22:28
Цитата: Марбол от февраля  9, 2012, 22:24
А что, Мэпл выводит общие формулы заданных рядов?

Вряд ли. Но первые сколько угодно производных он бы посчитал и даже, вероятно, удалось бы в удобоваримом виде их представить.
Фактически, это то же, что расчёт степеней суммы на компьютере, вместо применения бинома Ньютона: мы получим быстрые, но непонятные ответы.
А кроме того, как я уже говорил, у меня самого есть символически дифференцирующая программа для данного случая, и из неё уже нетрудно сделать численно-дифференцирующую. Она оперирует переменными строкового типа (наборы символов), размер которых ограничен; поэтому после взятия 16-ой производной от суперпозиции происходит превышение размера, и ответ не выдаётся. Но этот момент легко обойти.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 10, 2012, 07:34
Цитата: Марбол от февраля  9, 2012, 23:49
биномиальный коэффициент CNj = N!/{(N-j)!j!}
Конечно, правильно писать "CjN"
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 10, 2012, 07:51
Цитата: Марбол от февраля  9, 2012, 23:49
7) Составим также на основе мезонов следующие величины. Отбросим младший член мезона: например,
μ4 = 6 α(3)u(1)u3 + 4 α(2)u(2)u2 [ + 1 α(1)u(3)u ]
получим здесь
(3)u(1)u2 + 4α(2)u(2)u1
Исходный мезон μ4 записан вначале с неправильными показателями степени, хотя дальше используется в правильном виде:
μ4 = 6 α(3)u(1)u2 + 4 α(2)u(2)u1 [ + 1 α(1)u(3)u0 ]
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 10, 2012, 08:14
Выскажу ещё наблюдение относительно коэффициентов в итоговых формулах.
Это коэффициенты имеют вид N/2. Для сравнения, запишем сначала величины AN, затем - DN и выделим коэффициенты, соответствующие друг другу.

Цитата: Марбол от февраля  9, 2012, 23:49
Например:
A0 = αu,
A1 = α'u2 + αu'
A2 = α''u3 + 2 α'u'u + αu''
A3 = α'''u4 + 3 α''u'u2 + 3 α'u''u + αu'''
A4 = α(4)u5 + 4 α(3)u(1)u3 + 6 α(2)u(2)u2 + 4 α(1)u(3)u + α(0)u(4)
A5 = α(5)u6 + 5 α(4)u(1)u4 + 10 α(3)u(2)u3 + 10 α(2)u(3)u2 + 5 α(1)u(4)u + α(0)u(5)
A6 = α(6)u7 + 6 α(5)u(1)u5 + 15 α(4)u(2)u4 + 20 α(3)u(3)u3 + 15 α(2)u(4)u2 + 6 α(1)u(5)u + α(0)u(6)
A7 = α(7)u8 + 7 α(6)u(1)u6 + 21 α(5)u(2)u5 + 35 α(4)u(3)u4 + 35 α(3)u(4)u3 + 21 α(2)u(5)u2 + 7 α(1)u(6)u + α(0)u(7)

D0h = αu
D1h = A1 + μ1u = A1
D2h = A2 + μ2u(0)
D3h = A3 + 6/2 μ2u(1) + μ3u(0)
D4h = A4 + 10/2 μ2u(2) + 10/2 μ3u(1) + μ4u(0)
D5h = A5 + 15/2 μ2u(3) + 20/2 μ3u(2) + 15/2 μ4u(1) + μ5u(0) + 15 σ3 u(1) 2
D6h = A6 + 21/2 μ2u(4) + 35/2 μ3u(3) + 35/2 μ4u(2) + 21/2 μ5u(1) + μ6u(0) + 105 σ4 u(1) 2.

Также можно заметить, что входящий в формулы производных остаток σ имеет порядок, на два меньший, чем порядок производной. Надо посмотреть, не появляются ли в следующих производных и остатки ещё меньших порядков.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 12, 2012, 14:34
Здравствуйте!

Да, в последующих производных появляются и остатки меньих порядков, а также добавочные члены, структура которых мне пока непонятна.
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от февраля 12, 2012, 14:44
Если вы сможете составить рекуррентные соотношения, можно будет попытаться вылезти в производящие функции и там всё разобрать.
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от февраля 12, 2012, 21:34
Марбол, живём! Я вывел рекуррентное соотношение. Только там кучища переменных, да ещё и странное оно. Но можно пытаться.

Пусть [tex]A(n; m_1, \ldots, m_l; k) = \left( \left( f^{(n)} \circ g \right) {\prod_{i = 1}^{l} g^{(m_i)} } \right)^{(k)}[/tex].

Тогда имеем [tex]A(n; (m_i)_i; k + 1) = A(n + 1; (m_i)_i; k) +[/tex] некая суммочка, получите её сами просто [там поочерёдно добавляется 1 к каждому из [tex]m_i[/tex]]; больше ни от чего, кроме A, нет зависимостей.

А нам нужно найти [tex]A(0; ; k)[/tex].

Из приведённого мною соотношения и каких-нибудь начальных условий частных случаев для A от нулей-единиц можно бы теоретически сделать какие-то выражения о производящих функциях этого семейства последовательностей (с членами [tex]A(\ldots)[/tex]). Раскладывая функцию в ряд, мы найдём формулу для членов. Если найдём. Но тут беда такая, что это даже не двумерная последовательность, а какая-то страшномногомерная, ведь [tex]m_i[/tex] может быть 0 и более штук разных. Можно теперь брать частные случаи [tex]A(\ldots)[/tex] и называть отдельными именами, и переформулировать то соотношение выше в них: тогда проихводящих функций будет не одна, но можно будет что-то связать.

Поясню, что я имел в виду:

[tex]\begin{array}{l} A_0(n, k) = A(n;; k) \\ A_1(n, k, m_1) = A(n; m_1; k) \\ A_2(n, k, m_1, m_2) = A(n; m_1, m_2; k) \\ \cdots \end{array}[/tex]

Тут мы избавились от кортежа в списке параметров A.

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

Пойду спать, завтра снова в университет...
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 13, 2012, 05:27
Цитата: arseniiv от февраля 12, 2012, 21:34
Марбол, живём! Я вывел рекуррентное соотношение. Только там кучища переменных, да ещё и странное оно. Но можно пытаться.

Пусть [tex]A(n; m_1, \ldots, m_l; k) = \left( \left( f^{(n)} \circ g \right) {\prod_{i = 1}^{l} g^{(m_i)} } \right)^{(k)}[/tex].
Спасибо! Будем мозговать дальше.
Название: Производные от суперпозиции функций.
Отправлено: antbez от февраля 13, 2012, 11:43
Зачем что-то выводить?! Такая же формула существует! Формула Фаа ди Бруно!
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от февраля 13, 2012, 15:43
Интересно, как он её вывел. :o

Кстати, я немного не то написал, но там всё же можно выйти к производящим функциям, и выходят выражения ох непростые.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 13, 2012, 19:49
Цитата: antbez от февраля 13, 2012, 11:43
Зачем что-то выводить?! Такая же формула существует! Формула Фаа ди Бруно!
Прекрасно!! Большое спасибо, Антон! Вы прямо упасли меня от недель тщетного корпения над ноутбуком.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 13, 2012, 19:55
Цитата: arseniiv от февраля 13, 2012, 15:43
Интересно, как он её вывел. :o
Я пробовал сгруппировать слагаемые по степеням производных от вложенной функции [обозначил u(N) L = g(N-1) L(x)], а в формуле ди Бруно это сделано по порядкам производной от "внешней", влагающей функции [у меня α(M) = f(M-1)(g)] - что, в общем, надёжнее: ведь не всякое слагаемое содержит первые, но всякое содержит вторые из них.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 13, 2012, 20:08
Для порядка, даю цитату из Википедии:
Цитата: Википедия: Формула Фаа ди Бруно
Формула Фаа ди Бруно была названа в честь итальянского математика и священника Франческо Фаа-ди-Бруно, благодаря которому она стала известна (примерно, в 1855 году), хотя в действительности первооткрывателем этой формулы является Луи Франсуа Антони Арбогаст, который более чем за 50 лет до Фаа ди Бруно сделал первые публикации[1] на эту тему.

Оба исследователя получили эту формулу, исследуя n-ую производную композиции двух функций.

Возможно, наиболее известна формула Фаа ди Бруно в следующем виде:

    [tex]{d^n \over dx^n} f(g(x))=\sum \frac{n!}{m_1!\,1!^{m_1}\,m_2!\,2!^{m_2}\,\cdots\,m_n!\,n!^{m_n}}\cdot f^{(m_1+\cdots+m_n)}(g(x))\cdot \prod_{j=1}^n\left(g^{(j)}(x)\right)^{m_j}[/tex],

где сумма по всем n-кортежам неотрицательных целых чисел (m1, ..., mn) удовлетворяет ограничению

    [tex]1\cdot m_1+2\cdot m_2+3\cdot m_3+\cdots+n\cdot m_n=n[/tex].

Иногда, чтобы лучше запомнить, формулу записывают таким образом, однако это снижает очевидность комбинаторной интерпретации:

    [tex]{d^n \over dx^n} f(g(x)) =\sum \frac{n!}{m_1!\,m_2!\,\cdots\,m_n!}\cdot f^{(m_1+\cdots+m_n)}(g(x))\cdot \prod_{j=1}^n\left(\frac{g^{(j)}(x)}{j!}\right)^{m_j}[/tex].

Используя это же выражение с теми же значениями m1 + m2 + ... + mn = k и заметив, что m j должен быть 0 при j > n − k + 1 можно прийти к несколько более простой формуле выраженной через полиномы Белла Bn,k(x1,...,xn−k+1):

    [tex]{d^n \over dx^n} f(g(x)) = \sum_{k=1}^n f^{(k)}(g(x))\cdot B_{n,k}\left(g'(x),g''(x),\dots,g^{(n-k+1)}(x)\right)[/tex]
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 13, 2012, 20:20
Вот! За триста лет в элементарном анализе сделано всё что можно.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 13, 2012, 20:31
Но формула-то есть.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 13, 2012, 20:50
Цитата: antbez от февраля 13, 2012, 11:43
Зачем что-то выводить?! Такая же формула существует! Формула Фаа ди Бруно!
Так ведь это само по себе интересно - изобретать велосипед! - Особенно, когда лежишь с красным горлом. И если бы я уже знал об этой формуле, то не стал бы программировать свой простенький анализатор формул; а теперь его можно будет усовершенствовать и затем "пристегнуть" к дальнейшему делу.
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от февраля 13, 2012, 20:59
Пусть ваше (под)сознание как-нибудь приготовит ещё одну задачу! Быть может, там будет что-то ещё интересное, но не такое сложное. Люблю рыться в буквах.
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 13, 2012, 21:08
Цитата: Марбол от февраля 13, 2012, 20:31
Но формула-то есть.

Мой изначальный тезис: формула существует ⇔ она уже известна.

Однако какие она может иметь приложения? :-\
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от февраля 13, 2012, 22:13
Цитата: Квас от февраля 13, 2012, 21:08
Однако какие она может иметь приложения? :-\
:negozhe:

Конечно, никакие, если так оценить до [tex]x^2[/tex]. Дальше лень.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 14, 2012, 06:07
Цитата: Квас от февраля 13, 2012, 21:08
Мой изначальный тезис: формула существует ⇔ она уже известна.
:negozhe:
Нет-нет, Ваш начальный тезис был: "Формулы нет в природе".  :-[ Но в этом ли дело!..  :???
:UU:
А применить её я хочу, именно, к вычислению Ν-ной производной от суперпозиции двух функций.
Название: Производные от суперпозиции функций.
Отправлено: Квас от февраля 14, 2012, 08:55
Цитата: Марбол от февраля 14, 2012, 06:07
Нет-нет, Ваш начальный тезис был: "Формулы нет в природе".

Да, действительно.

Впрочем, она выглядит настолько же полезной, как, например, формула Кардано: то есть абсолютно бесполезной, хотя и радующей своим существованием.

Цитата: Марбол от февраля 14, 2012, 06:07
А применить её я хочу, именно, к вычислению Ν-ной производной от суперпозиции двух функций.

Ну расскажите, если получится. Мне интересно, каким алгоритмом вы будете перебирать кортежи.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 14, 2012, 20:21
Это вопрос!
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от февраля 15, 2012, 08:16
Можно отфильтровать из перебора всех кортежей.

Можно найти функцию, делающую из одного кортежа следующий.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 15, 2012, 09:02
Здравствуйте!

В Википедии, в статье о полиномах Белла, я "нашёл" следующие сведения:

ЦитироватьДля последовательностей [tex]x_n[/tex], [tex]y_n[/tex], [tex]n[/tex] = 1, 2, ..., определён вид свёртки:

    [tex](x \diamondsuit y)_n = \sum_{j=1}^{n-1} {n \choose j} x_j y_{n-j}[/tex].

Заметим, что пределы суммирования 1 и n − 1, не 0 и n .

Положим, что [tex]x_n^{k\diamondsuit}[/tex] есть n-ый член последовательности

    [tex]\displaystyle\underbrace{x\diamondsuit\cdots\diamondsuit x}_{k\ \mathrm{factors}}.\,[/tex]

Тогда

    [tex]B_{n,k}(x_1,\dots,x_{n-k+1}) = {x_{n}^{k\diamondsuit} \over k!}.\,[/tex]

Например, вычислим [tex]B_{4,3}(x_1,x_2)[/tex]. Мы имеем

    [tex]x = ( x_1 \ , \ x_2 \ , \ x_3 \ , \ x_4 \ , \dots )[/tex]

    [tex]x \diamondsuit x = ( 0,\ 2 x_1^2 \ ,\ 6 x_1 x_2 \ , \ 8 x_1 x_3 + 6 x_2^2 \ , \dots )[/tex]

    [tex]x \diamondsuit x \diamondsuit x = ( 0 \ ,\ 0 \ , \ 6 x_1^3 \ , \ 36 x_1^2 x_2 \ , \dots )[/tex]

и таким образом,

    [tex]B_{4,3}(x_1,x_2) = \frac{ ( x \diamondsuit x \diamondsuit x)_4 }{3!} = 6 x_1^2 x_2[/tex].
Можно заметить, что
[tex](x \diamondsuit y) = (y \diamondsuit x)[/tex]
[tex](x \diamondsuit x) = x^{2\diamondsuit}[/tex]
[tex]((x \diamondsuit y) \diamondsuit z) = (z \diamondsuit (x \diamondsuit y))[/tex]
[tex]((x \diamondsuit x) \diamondsuit x) = (x \diamondsuit (x \diamondsuit x)) = x \diamondsuit x \diamondsuit x = x^{3\diamondsuit} = (x^{2\diamondsuit} \diamondsuit x)[/tex]
Поэтому для нахождения [tex]x^{k\diamondsuit}[/tex] достаточно уметь вычислить [tex]x^{2\diamondsuit}[/tex], а затем k-1-кратно применять это умение к [tex]x[/tex] в случаях k > 2. Так я получу полиномы Белла.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 15, 2012, 19:10
Если обобщить всю информацию, то получается следующая формула:

[tex]{d^n \over dx^n} f(g(x)) = \sum_{k=1}^n {f^{(k)}(g(x)) (\diamondsuit_{j=1}^{k} G)_n\over k!}[/tex]

где

[tex]G = (g^{(1)}(x),  \dots , g^{(n)}(x))[/tex]

[tex]\diamondsuit_{j=1}^{1} G = G[/tex]

[tex]\diamondsuit_{j=1}^{2} G = G \diamondsuit G[/tex]

[tex]\diamondsuit_{j=1}^{N} G = G^{N\diamondsuit} = ((G^{N\diamondsuit})_1, \dots, (G^{N\diamondsuit})_N)[/tex]

[tex]\diamondsuit_{j=1}^{N+1} G = (\diamondsuit_{j=1}^{N} G) \diamondsuit G[/tex]

[tex](\diamondsuit_{j=1}^{2} G)_n = (G \diamondsuit G)_n = \sum_{i=1}^{n-1} {n \choose i} g^{(i)} g^{(n-i)}[/tex]
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 15, 2012, 21:05
Интересно, сколько времени займёт такой расчёт. Условно я считаю, что и сложение и умножение двух чисел занимают единичный отрезок времени. Я обозначу это условное время так: T(x+y) = T(x-y) = 1, T(x*y) = T(x/y) = 1 при T(x) = 0, T(y) = 0.
Тогда время вычисления производной заданного порядка равно:
[tex]T({d^n f(g(x)) \over dx^n})=T(\sum_{k=1}^n{f^{(k)} \over k!} G_{n}^{k\diamondsuit}) = T(\sum_{k=1}^n) \cdot[T(G_{n}^{k\diamondsuit})+T(x \cdot y) + T(k!)+T({x \over y})][/tex]
В частности, по составляющим,
[tex]T(\sum_{k=1}^n) = n[/tex]
[tex]T(k!) = k-2[/tex]
[tex]T(x \cdot y) + T({x \over y}) = 1+1 =2[/tex]

Вычисление свёртки степени [tex]k[/tex] равносильно вычислению свертки степени 2, подряд [tex]k-2[/tex] раз, с последующим однократным вычислением n-го члена свёртки степени 2:

[tex]T(G_n^{k\diamondsuit}) = T((G_n^{k-1\diamondsuit}\diamondsuit G)_n)=T(G^{2\diamondsuit}) \cdot (k-2)+T((x \diamondsuit y)_n)[/tex]

В частности,

[tex]T(G_n^{2\diamondsuit}) = T(\sum_{j=1}^{n-1} {n \choose j} g^{(i)} g^{(n-i)})[/tex]

[tex]T({n \choose i} g^{(i)} g^{(n-i)}) = T({n \choose i}) +T(g^{(i)} g^{(n-i)}) + T(x \cdot y) = T({n \choose i})+2[/tex]

[tex]T({n \choose i}) = T({n! \over i!}) + T((n-i)!) +T({x \over y}) = (n-i-1) +(n-i-2) +1=2n-2i-2[/tex]

[tex]T({n \choose i} g^{(i)} g^{(n-i)}) = 2n-2i=2(n-i)[/tex]

Поэтому, в целом,

[tex]T(G_n^{2\diamondsuit}) = \sum_{j=1}^{n-1} 2(n-i) = 2 \sum_{j=1}^{n-1} (n-i) =2(1+ 2 +\dots +n-1)=2{(n-1)(n-1+1) \over 2}=n(n-1)[/tex]

Для вычисления всей последовательности [tex]G^{2\diamondsuit}[/tex] нужно времени

[tex]T(G^{2\diamondsuit})=\sum_{k=1}^n n(n-1),[/tex] примерно  [tex]{n^3\over 3}[/tex]

... Допишу потом.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 18, 2012, 10:18
Здравствуйте!

Допустим, имеем аналитическую функцию h(x). Она может быть выражена через две другие аналитические функции f(x) и g(x) в виде их суммы: h(x) = f(x) + g(x), - произведения: h(x) = f(x)g(x) - или суперпозиции: h(x) = f(g(x)). Допустим, что обе эти функции имеют производные всех порядков и что мы знаем значения этих производных в заданной точке x0. Тогда мы можем выразить производную h(n)(x0) = dnh(x)/dxn|x0 данной функции через комбинации производных f(i)(x0) = dif/dxi|x0 и g(j)(x0) = djg/dxj|x0, по соответствующим выражениям. Здесь i, j = 0, 1, 2, ..., n. В свою очередь, функции f(x) и g(x) также могут быть разложены на другие аналитические функции. При этом имеет смысл указать набор элементарных функций, задать для них формулы производных всех порядков и через них выражать все остальные, интересующие нас функции. Что я и сделал.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от февраля 19, 2012, 08:38
Здравствуйте!

Цитата: Марбол от февраля 18, 2012, 10:18
комбинации производных f(i)(x0) = dif/dxi|x0 и g(j)(x0) = djg/dxj|x0
Правильно:
комбинации производных f(i)(g(x0)) = dif/dgi|x0 и g(j)(x0) = djg/dxj|x0
Название: Производные от суперпозиции функций.
Отправлено: Марбол от марта 19, 2012, 19:55
Здравствуйте!

В одном немаловажном случае, когда заданная функция имеет вид

[tex]h(x)=f(x)^{g(x)},[/tex]

неприложимы три указанных представления: в виде суммы, произведения или суперпозиции двух функций [tex]f(x)[/tex] и [tex]g(x)[/tex]. В таком случае, данная функция должна быть преобразована к виду

[tex]p(q(x))=e^{q(x)},[/tex]

где

[tex]q(x)=g(x)\cdot ln f(x).[/tex]
Название: Производные от суперпозиции функций.
Отправлено: Марбол от марта 19, 2012, 20:01
Цитата: Марбол от февраля 15, 2012, 21:05
Интересно, сколько времени займёт такой расчёт.

По моим выкладкам дальше получилось, что время вычисления производной [tex]n[/tex]-го порядка от суперпозиции двух функций занимает время, пропорциональное [tex]n^5[/tex], но на практике это ограничение для моих нужд не играет роли.
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от марта 22, 2012, 15:05
Цитата: Марбол от марта 19, 2012, 19:55
неприложимы три указанных представления: в виде суммы, произведения или суперпозиции двух функций [tex]f(x)[/tex] и [tex]g(x)[/tex]
Лучше, мне думается, использовать суперпозицию трёх функций: этих и (x, y) ↦ xy. Или частные производные вы пока не хотели бы включать?
Название: Производные от суперпозиции функций.
Отправлено: Марбол от апреля 19, 2012, 21:28
Здравствуйте!

Цитата: arseniiv от марта 22, 2012, 15:05
Или частные производные вы пока не хотели бы включать?
Частные производные, конечно, потом понадобятся, но пока у меня недостает времени на продолжение и даже применение этого метода.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от августа 30, 2012, 06:56
Здравствуйте!

Я наконец это доделал и применяю к своим вычислениям. Но оказывается, для случая функции многих переменных эта задача уже решена, и притом создан алгоритм расчета на компьютере, оптимальный по времени расчета.
Название: Производные от суперпозиции функций.
Отправлено: arseniiv от августа 30, 2012, 13:09
Ого.
Название: Производные от суперпозиции функций.
Отправлено: Марбол от сентября 1, 2012, 22:02
Здравствуйте!

Я тоже так подумал.