Definition
Eine biquadratische Gleichung oder polynomiale Gleichung 4. Grades (auch neu-deutsch quartische Gleichung genannt) hat die Form
mit .
Spezialformen
mit führt auf eine kubische Gleichung.
Ist und , dann lässt sich die Gleichung durch die Substitution auf eine quadratische Gleichung zurückführen. Diese Spezialform wird manchmal in Lehrbüchern fälschlicherweise als biquadratische Gleichung bezeichnet.
Geschichte
Die geschlossene Lösung der biquadratischen Gleichung fand der italienische Mathematiker Lodovico Ferrari (1522-1565). Diese Lösung veröffentlichte sein Lehrer Gerolamo Cardano 1545 in dem Werk Ars magna de Regulis Algebraicis.
Satz
Voraussetzung: Gegeben sei eine quartische Gleichung mit .
Aussage: Dann kann man ihre Lösungen wie folgt angeben:
- Algorithmus 0: Nur für und :
- Substituieren: durch : ,
- Finden: Die Lösungen zu Gleichung (99) und finden: siehe Quadratische Gleichung,
- Rück-subsitituieren: : , , , .
- Algorithmus 1 (frei nach Ferrari; entnommen aus der englischen Bruder Wikipedia Quartic equation):
-
- Falls , dann löse und berechne .
- , wobei die Quadratwurzel möglichst so zu wählen ist, dass nicht verschwindet,
-
- wählen, um alle Lösungen zu erhalten
- Quod Erat Faciendum.
- Algorithmus 2: ausgelagert zwecks Korrektur (siehe Diskussions Seite zu diesem Artikel)
Beweis
(konstruktiv)
bis zur Erstellung der deutschen Übersetzung möge die englische Version der Herleitung hinreichen: Quartic equation
Hilfssatz A
Aussage: , wobei eine Wurzel, für die gilt , gemeint ist.
- Beweis durch Annahme des Gegenteils (Widerspruchsbeweis):
- Die Annahme führt zu und somit zum Widerspruch.
- Die Annahme führt zu und somit zum Widerspruch.
- Die Annahme führt zu und weiter zu und weiter zu und somit zum Widerspruch.
- Also folgt aus dass und verschwinden.
- quod erat demonstrandum
Pseudo-Code
A, B, C, D, E, a, b, c, P, Q, R, U, y, x1, x2, x3 und x4 können komplexe Zahlen sein.
Demzufolge müssen die Funktionen „sqrt“, „exp“ und „ln“ auf ebensolchen Zahlen definiert sein.
Für B=0 und D=0
- dann
- Algorithmus aus dem Artikel Quadratische Gleichung auf anwenden
- und berechnen
- x1 = sqrt(z1);
- x2 = -sqrt(z1);
- x3 = sqrt(z2);
- x4 = -sqrt(z2);
- sonst
- a = -3*B*B/(8*A*A) + C/A;
- b = B*B*B/(8*A*A*A) - B*C/(2*A*A) + D/A;
- c = -3*B*B*B*B/(256*A*A*A*A) + C*B*B/(16*A*A*A) - B*D/(4*A*A) + E/A;
- wenn b = 0
- dann
- löse
- und berechne
- x1=u1-B/(4*A);
- x2=u2-B/(4*A);
- x3=u3-B/(4*A);
- x4=u4-B/(4*A);
- sonst
- P = -a*a/12 - c;
- Q = -a*a*a/108 + a*c/3 - b*b/8;
- R = Q/2 + sqrt(Q*Q/4+P*P*P/27);
- wenn R = 0
- dann U = 0;
- sonst U = exp(ln(R)/3);
- wenn U = 0
- dann (prüfe, ob P=0 gilt) y = -5*a/6;
- sonst y = -5*a/6 + P/(3*U) - U;
- x1 = -B/(4*A) + (sqrt(a+2*y) + sqrt(-(a+2*y) - 2*(a + b/sqrt(a+2*y) )))/2;
- x2 = -B/(4*A) + (-sqrt(a+2*y) + sqrt(-(a+2*y) - 2*(a - b/sqrt(a+2*y) )))/2;
- x3 = -B/(4*A) + (sqrt(a+2*y) - sqrt(-(a+2*y) - 2*(a + b/sqrt(a+2*y) )))/2;
- x4 = -B/(4*A) + (-sqrt(a+2*y) - sqrt(-(a+2*y) - 2*(a - b/sqrt(a+2*y) )))/2;
Es empfiehlt sich die Probe zu machen...
Beispiele
Beispiel für
> calc C-style arbitrary precision calculator (version 2.11.5t4.5) Calc is open software. For license details type: help copyright [Type "exit" to exit, or "help" for help.] > A=1 > B=10 > C=-6 > D=60 > E=36 > a=-3*B^2/A^2/8 + C/A > a -43.5 > b=B^3/8/A^3 - B*C/2/A^2 + D/A > b 215 > c=-3*B^4/256/A^4 + C*B^2/16/A^3 - B*D/4/A^2 + E/A > c -268.6875 > P = -a*a/12 - c > P 111 > Q = -a*a*a/108 + a*c/3 - b*b/8 > Q -1120 > R = Q/2 + sqrt(Q*Q/4+P*P*P/27) > R 43.53376044758258411234 > U = exp(ln(R)/3) > U 3.51783442380909981526 > y = -5*a/6 + P/(3*U) - U > y ~43.24999999999999999999 > x1 = -B/(4*A) + (sqrt(a+2*y) + sqrt(-(a+2*y) - 2*(a + b/sqrt(a+2*y) )))/2 > x1 .77871926215100032617+2.32241174444907628892i > A*x1^4+B*x1^3+C*x1^2+D*x1+E ~.00000000000000000007-~.00000000000000000073i > x2 = -B/(4*A) + (-sqrt(a+2*y) + sqrt(-(a+2*y) - 2*(a - b/sqrt(a+2*y) )))/2 > x2 ~-.54483004754633870880 > A*x2^4+B*x2^3+C*x2^2+D*x2+E ~.00000000000000000014 > x3 = -B/(4*A) + (sqrt(a+2*y) - sqrt(-(a+2*y) - 2*(a + b/sqrt(a+2*y) )))/2 > x3 .77871926215100032617-2.32241174444907628892i > A*x3^4+B*x3^3+C*x3^2+D*x3+E ~.00000000000000000007+~.00000000000000000073i > x4 = -B/(4*A) + (-sqrt(a+2*y) - sqrt(-(a+2*y) - 2*(a - b/sqrt(a+2*y) )))/2 > x4 ~-11.01260847675566194353 > A*x4^4+B*x4^3+C*x4^2+D*x4+E ~-.00000000000000000335
Beispiel für
> calc C-style arbitrary precision calculator (version 2.11.5t4.5) Calc is open software. For license details type: help copyright [Type "exit" to exit, or "help" for help.] > A=1 > B=0 > C=1 > D=sqrt(-8/27) > E=-1/12 > a=-3*B^2/A^2/8 + C/A > a 1 > b=B^3/8/A^3 - B*C/2/A^2 + D/A > b .54433105395181735515i > c=-3*B^4/256/A^4 + C*B^2/16/A^3 - B*D/4/A^2 + E/A > c ~-.08333333333333333333 > P = -a*a/12 - c > P 0 > Q = -a*a*a/108 + a*c/3 - b*b/8 > Q ~-.00000000000000000000 > R = Q/2 + sqrt(Q*Q/4+P*P*P/27) > R ~-.00000000000000000000 > # U = exp(ln(R)/3) > U=0 > U 0 > # y = -5*a/6 + P/(3*U) - U > y = -5*a/6 > y ~-.83333333333333333333 > x1 = -B/(4*A) + (sqrt(a+2*y) + sqrt(-(a+2*y) - 2*(a + b/sqrt(a+2*y) )))/2 > x1 ~1.22474487139158904909i > A*x1^4+B*x1^3+C*x1^2+D*x1+E ~-.00000000000000000000 > x2 = -B/(4*A) + (-sqrt(a+2*y) + sqrt(-(a+2*y) - 2*(a - b/sqrt(a+2*y) )))/2 > x2 -~.40824829041868291618i > A*x2^4+B*x2^3+C*x2^2+D*x2+E ~-.00000000000000000000 > x3 = -B/(4*A) + (sqrt(a+2*y) - sqrt(-(a+2*y) - 2*(a + b/sqrt(a+2*y) )))/2 > x3 -~.40824829046386301636i > A*x3^4+B*x3^3+C*x3^2+D*x3+E ~-.00000000000000000000 > x4 = -B/(4*A) + (-sqrt(a+2*y) - sqrt(-(a+2*y) - 2*(a - b/sqrt(a+2*y) )))/2 > x4 -~.40824829050904311654i > A*x4^4+B*x4^3+C*x4^2+D*x4+E ~-.00000000000000000000
Literatur
siehe Cardanische Formeln