lunedì 23 febbraio 2015

Potenze a base negativa

Consideriamo le potenza a base negativa

(-3)^4 = (-3)(-3)(-3)(-3) 

(-3)^(1/3) = radice cubica di -3

(-3)^(2/3) = e^[ln(-3)^2/3] = e^[(2/3) ln(-3)] => numero complesso

il logaritmo di un numero negativo è ben definito ed è un numero complesso

osservazione

c'è chi interpreta (-2)^(7/5) = (-2)^7 e poi il risultato lo eleva alla 1/5 (radice quinta) ottenendo un numero reale... c'è chi interpreta (-2)^(7/5) = e^(7/5 * ln(-2)) ottenendo un numero complesso ..... Questo porta a risultati diversi, basta verificarlo con vari software Mathematica, Maxima, PAri/GP ecc. Ecco perché la potenza a base negativa non può essere ben definita

mercoledì 18 febbraio 2015

Razionalizzazione e fattorizzazione

Negli algoritmi per la fattorizzazione dove si usano le equazioni di II grado ad es x^2-sx+n=0,  s = p+q, n=pq, x=p, q una attenta implementazione con la razionalizzazione delle radici può migliorare il grado di precisione. Infatti da wikipedia http://it.wikipedia.org/wiki/Equazione_di_secondo_grado per la forma più generale dell'equazione di II grado ax^2+bx+c=0 (caso particolare di x^2-sx+n=0)
"In certe situazioni è preferibile esprimere le radici in una forma alternativa.
x =\frac{2c}{-b \pm \sqrt {b^2-4ac}}
Naturalmente, i valori delle due radici risultano uguali indipendentemente che si usi la formula "classica" o quella alternativa, che è in effetti una semplice variante algebrica della prima:
\begin{align}
\frac{-b + \sqrt {b^2-4ac\ }}{2a}& = \frac{\left ( -b + \sqrt {b^2-4ac\ } \right ) \left ( -b - \sqrt {b^2-4ac\ } \right )}{2a \left ( -b - \sqrt {b^2-4ac\ } \right )} \\
&= \frac{4ac}{2a \left ( -b - \sqrt {b^2-4ac} \right ) } \\
&=\frac{2c}{-b - \sqrt {b^2-4ac\ }}.
\end{align}
Un'attenta implementazione su un calcolatore dotato di operazioni in virgola mobile differisce da entrambe le formule per garantire la robustezza del risultato. Assumendo che il discriminante sia positivo e b diverso da 0, si può usare codice come il seguente:
\begin{align}
t :&= -\left( b + \sgn(b) \sqrt{b^2-4ac}\right) /2 \\
r_{1} :&= t/a \\
r_{2} :&= c/t
\end{align}
dove sgn(b) denota la funzione segno, che vale +1 se b è positivo e −1 se b è negativo; questo accorgimento assicura di sommare due quantità dello stesso segno, evitando l'eventuale perdita di precisione. Il calcolo della seconda radice r2s frutta il fatto che il prodotto delle radici è uguale a c/a."
(fonte Wilkpedia)