Talgo Py M
Talgo Py M
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
Section outline
evaluation
Solving
1 Working with polynomials T (n) = 2T (n/2) + bn + c
Coefficient based Multi-point polynomial
representation evaluation by DC
Multi-point polynomial
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
GY
ITU
IAN INST
KH
ARAGPUR
TAdd (n) ∈ O(n)
IND
19 5 1
Polynomial evaluation
Given A(x) = a0 + a1 x + a2 x 2 + . . . + an−1 x n−1 , how do we
evaluate it at a given value of x?
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
Polynomial evaluation
Given A(x) = a0 + a1 x + a2 x 2 + . . . + an−1 x n−1 , how do we
evaluate it at a given value of x?
n(n − 1)
Direct evaluation would involve multiplications and n − 1
2
additions, so may be done in O(n2 ) steps
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
Polynomial evaluation
Given A(x) = a0 + a1 x + a2 x 2 + . . . + an−1 x n−1 , how do we
evaluate it at a given value of x?
n(n − 1)
Direct evaluation would involve multiplications and n − 1
2
additions, so may be done in O(n2 ) steps
Factorisation helps to reduce the number of multiplications
A(x) = a0 + (a1 + (a2 + . . . + an−1 x) x · · · ) x [Horner’s method]
Time complexity of this scheme is:
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
Polynomial evaluation
Given A(x) = a0 + a1 x + a2 x 2 + . . . + an−1 x n−1 , how do we
evaluate it at a given value of x?
n(n − 1)
Direct evaluation would involve multiplications and n − 1
2
additions, so may be done in O(n2 ) steps
Factorisation helps to reduce the number of multiplications
A(x) = a0 + (a1 + (a2 + . . . + an−1 x) x · · · ) x [Horner’s method]
Time complexity of this scheme is: O(n), actually Θ(n)
float horner(float *A, int deg, float x) {
float sum = A[deg]; // an−1 is in A[deg]
while (deg) {
sum *= x; deg--;
sum += A[deg];
} // a0 is in A[0]
return sum; TE
OF
TECHNO
LO
GY
ITU
IAN INST
KH
ARAGPUR
IND
}
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
GY
ITU
+ bn + c n > 1, n = 2d , d ≥ 0
IAN INST
KH
ARAGPUR
2T
IND
19 5 1
2
yog, kms kOflm^
8.0 b × 8.0 × 1 + c × 1
Total: 8 × 3 × b + 7 × c + 8 × a
If n = 2d , summation is: 2d (db + a + c) − c
Asymptotic bound: T (n) ∈ Θ(n lg n) (Θ notation to be studied TE
OF
TECHNO
LO
GY
ITU
IAN INST
KH
ARAGPUR
IND
later)
19 5 1
ξ85 ξ87
ξ43 ξ86
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
ξ85 ξ87
ξ43 ξ86
2 2 2 ?
Eval AE (x) and AO (x) at: ξ80 , ξ81 , . . . , ξ87 ≡ ξ40 , ξ41 , . . . , ξ43 ?
Note, A(ξ80 ), A(ξ82 ), A(ξ84 ) and A(ξ86 ) already evaluated as A(1), TE
OF
TECHNO
LO
A(ı), A(−1) and A(−ı) (using AE (ξ40 ),AE (ξ42 ), AO (ξ40 ) and AO (ξ42 ))
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
ξ85 ξ87
ξ86 ξ43
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
ξ85 ξ87
ξ86 ξ43
GY
ITU
IAN INST
KH
ARAGPUR
AE (ξ41 ) − ξ85 AO (ξ41 )
IND
=
19 5 1
ξ85 ξ87
ξ86 ξ43
A(ξ87 )
A(ξ83 ) 2 2
2 2 = AE ( ξ87 ) + ξ87 AO ( ξ87 )
= AE ( ξ83 ) + ξ83 AO ( ξ83 )
= AE (ξ88+6 ) + ξ87 AO (ξ88+6 )
= AE (ξ86 ) + ξ83 AO (ξ86 )
= AE (ξ86 ) + ξ87 AO (ξ86 )
= AE (ξ43 ) + ξ83 AO (ξ43 )
= AE (ξ43 ) − ξ87 AO (ξ43 )
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
ξ85 ξ87
ξ86 ξ43
A(ξ87 )
A(ξ83 ) 2 2
2 2 = AE ( ξ87 ) + ξ87 AO ( ξ87 )
= AE ( ξ83 ) + ξ83 AO ( ξ83 )
= AE (ξ88+6 ) + ξ87 AO (ξ88+6 )
= AE (ξ86 ) + ξ83 AO (ξ86 )
= AE (ξ86 ) + ξ87 AO (ξ86 )
= AE (ξ43 ) + ξ83 AO (ξ43 )
= AE (ξ43 ) − ξ87 AO (ξ43 )
TECHNO
OF LO
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
TECHNO
OF LO
TE
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1
GY
ITU
IAN INST
KH
ARAGPUR
= AE (ξ2kd−1 ) − ξ2kd AO (ξ2kd−1 )
IND
19 5 1
GY
ITU
IAN INST
KH
ARAGPUR
IND
GY
ITU
IAN INST
KH
ARAGPUR
IND
19 5 1