ins- написа:Да се намерят всички функции [tex]f:Q→R[/tex] такива, че [tex]f(−8) = 0[/tex] и [tex]f(x+y) = f(x)+ f(y)+3xy(x+y+6)−8[/tex] за всички [tex]x,y ∈ Q[/tex].
Да решим тази задача по един лесен начин!
Ако y=-8
$f(x-8) = f(x)-24x(x-2)−8$
или
$f(x) = f(x-8) +24x(x-2)+8$
И сега понеже знаем колко е f при -8, то можем да намерим рекурсивно всички стойности на функцията в точките 0,8,16,24...
- Код: Избери целия код
import numpy as np
X = [-8]
F = [0]
for x in range(0,100,8):
X.append(x)
F.append(F[-1]+24*x*(x-2)+8)
print(X)
print(F)
[-8, 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96]
[0, 8, 1168, 6552, 19232, 42280, 78768, 131768, 204352, 299592, 420560, 570328, 751968, 968552]
Excelente!
Да видим дали няма полином който да образува тези точки:
- Код: Избери целия код
for s in range(1,6):
print((s, np.polyfit(X,F,s,full=True)[:2]))
(1, (array([ 8468.2, -122948.8]), array([2.46308379e+11])))
(2, (array([ 141. , -3939.8, 3387.2]), array([9.17671772e+09])))
(3, (array([1., 9., 9., 8.]), array([1.39797748e-20])))(4, (array([-3.75424187e-18, 1.00000000e+00, 9.00000000e+00, 9.00000000e+00, 8.00000000e+00]), array([5.30135005e-21])))
(5, (array([-7.99993978e-20, -3.31530523e-17, 1.00000000e+00, 9.00000000e+00, 9.00000000e+00, 8.00000000e+00]), array([5.25687456e-21])))
Muy excelente! Нещo се случи при полином от 3-та степен, грешката стана почти 0, a след тях коефицентите пред по-големите степени станаха 0, значи това е търсената функция:
$f(x)=1x^3 + 9x^2 + 9x + 8$