Post on 05-Apr-2015
transcript
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Theorie und Praxis geometrischer Algorithmen
Sascha El-Abed
Inhalt
1. Separation Bounds: Definition, Eigenschaften, Verwendungszweck
2. Berechnung und Beispiele
3. Hauptungleichung
4. Hilfstheoreme und -lemmata
5. Beweis der Hauptungleichung
6. Abgeleitete Korollare
7. Anwendung
2
Was sind Separation Bounds...
Wir betrachten arithmetische Ausdrücke mit ganzen Zahlen und den Operationen
Sei E ein arithmetischer Ausdruck, der den Wert hat.
Ein Separation Bound sep(E) ist
• eine positive reelle Zahl
• mit der Eigenschaft
k /,*, -, ,
)(0 Esep
)(Eval
3
...und wofür braucht man sie?
Zur exakten Bestimmung des Vorzeichens von reellwertigen arithmetischen Ausdrücken, wie sie oft bei geometrischen Berechnungen(z.B. an Kreis, Ellipse, ...) auftreten, z.B.
20
2218
19
2117
3 8*35
oder die Berechnung des Euklidischen Abstands von Punkten: liegt P oder Q näher an R?
2222 )()()()( yyxxyyxx rqrqrprp
4
Berechnung & Bsp: dag
20
2218
19
2117:
F
3 8*35: E
Man wandelt einen gegebenen Ausdruck entgegen den Rechenregeln in einen dag (directed acylic graph) um:
die Operationen sind die inneren Knoten, die Zahlen sind die Senken
5
Berechnung & Bsp: dag
20
2218
19
2117:
F
3 8*35: E
Man wandelt einen gegebenen Ausdruck entgegen den Rechenregeln in einen dag (directed acylic graph) um:
die Operationen sind die inneren Knoten, die Zahlen sind die Senken
5
Berechnung & Bsp: U(E), L(E)
Man definiert nun induktiv folgende Regeln U(E), L(E)
E integer n
E1±E2
E1*E2
E1/E2
k E1
U(E) n
U(E1)*L(E2)±L(E1)*U(E2)
U(E1)*U(E2)
U(E1)*L(E2)k EU )( 1
L(E) 1
L(E1)*L(E2)
L(E1)*L(E2)
L(E1)*U(E2)k EL )( 1
und berechnet E als Quotient
indem man die Regeln von der Wurzel ausgehend auf die Knoten anwendet und erhält somit den exakten Wert von E
)(
)(
EL
EU
6
Berechnung & Bsp: u(E), l(E)
Weiterhin definiert man nun nichtnegative reelle Zahlen u(E) und l(E), die Abschätzungen zu den Werten U(E) bzw. L(E) sind.
k E1
u(E) |n|
u(E1)*l(E2)+l(E1)*u(E2)
u(E1)*u(E2)
u(E1)*l(E2)k Eu )( 1
l(E) 1
l(E1)*l(E2)
l(E1)*l(E2)
l(E1)*u(E2)k El )( 1
E integer n
E1±E2
E1*E2
E1/E2
7
Eigenschaften und weitere Definitionen
Für die Regeln U(E), L(E), u(E), l(E) gilt:
•u(U(E)) = u(E)
•u(L(E)) = l(E)
•l(E) = 1 falls E keine Division enthält
8
weitere Definitionen
Die Zahl )(Eval ist eine algebraische Zahl,d.h. es gibt ein Polynom )(XZp mit .0)( p
Folglich gibt es auch ein Minimalpolynom mit Nullstelle .
Der Grad von ist definiert als der Grad des Minimalpolynoms von .
)(deg
m
Zur Erinnerung (Vortrag von Simon):
Das Minimalpolynom zu k a ist ;axk
dieses Polynom hat aber noch weitere Nullstellen ausser k a
9
weitere Definitionen
Kommen in einem Ausdruck E r Wurzeln
k1, ..., kr, so definiert man
(ki: die Grade der Wurzeln)
r
iikED
1
)(
Es gilt: )()( EDdeg
10
Hauptungleichung
Für Ausdrücke E, die keine Division enthalten, und für deren Wert gilt, besteht folgender Zusammenhang:
0
)( )(
11)deg(
EuEu
Der rechte Teil der Ungleichung ist direkt ersichtlich. Für den Beweis des linken Teils brauchen wir noch etwas “Handwerkszeug”.
11
Hilfstheorem 1Zuerst schauen wir uns an, dass eine ganzalgebraische Zahl ist, wobei E keine Division enthält, d.h. alle .
)(Eval
,*},{ op
12
Hilfstheorem 1Zuerst schauen wir uns an, dass eine ganzalgebraische Zahl ist, wobei E keine Division enthält, d.h. alle .
)(Eval
,*},{ op
Seien die Polynome
nn
i
iiA XXaXp
1
0
)( mm
j
jjB XXbXp
1
0
)(und
mit ganzzahligen Koeffizienten ai und bj gegeben.
12
Hilfstheorem 1n
n
i
iiA XXaXp
1
0
)( mm
j
jjB XXbXp
1
0
)(gegeben: und
Da ein Polynom vom Grad n bzw. m genau n bzw. m komplexe Nullstellen hat, kann man pA und pB wie folgt umschreiben:
n
iiA XXp
1
)()(
m
jjB XXp
1
)()(
13
Hilfstheorem 1n
n
i
iiA XXaXp
1
0
)( mm
j
jjB XXbXp
1
0
)(und
Da ein Polynom vom Grad n bzw. m genau n bzw. m komplexe Nullstellen hat, kann man pA und pB wie folgt umschreiben:
n
iiA XXp
1
)()(
m
jjB XXp
1
)()(
Für ,*},{ op hat dann das Polynom
n
i
m
jjiAopB XXp
1 0
)) op (()(
ebenfalls wieder ganzzahlige Koeffizienten.(=Produkt aller Konjugierten von pA und pB)
gegeben:
13
Hilfslemma 1Lemma:
Es gibt ein Polynom )()()( XZeXXpi
iE
so dass 0)( Ep und )(Euei für alle Nullstellen ie
des Polynoms pE(X) gilt.
14
(gegeben: Ausdruck E mit Wert ξ)
Hilfslemma 1Lemma:
Es gibt ein Polynom )()()( XZeXXpi
iE
so dass 0)( Ep und )(Euei für alle Nullstellen
des Polynoms pE(X) gilt.
Beispiel:
Sei 222 2)( ,2)( 2 EuEvalEDas Minimalpolynom zu ist ))2()(2(2)( 222 XXXXm
hat nicht nur die Nullstelle , sondern auchm 2 2 2 2m erfüllt die Bedingungen von pE(X), da:
0)2()( 2 EE pp
)(22 221 Eue )(22 22
2 Eue 14
ie
(gegeben: Ausdruck E mit Wert ξ)
Beweis von Lemma 1
durch strukturelle Induktion über den arithmetischen Ausdruck E:
1.Fall: E ist eine ganzzahlige Konstante: E = a
Dann erfüllt das Polynom aXXpE )(
offensichtlich schon alle Bedingungen des Lemmas.
15
Beweis von Lemma 12.Fall: E hat die Form E = A op B, ,*},{ op
Nach Induktionsvoraussetzung existieren Polynome
n
iiA XXp
1
)()(
m
jjB XXp
1
)()(und
mit (u.a.) Wurzeln (Nullstellen) val(A) bzw. val(B).
16
Beweis von Lemma 12.Fall: E hat die Form E = A op B, ,*},{ op
Nach Induktionsvoraussetzung existieren Polynome
n
iiA XXp
1
)()(
m
jjB XXp
1
)()(und
Wir wählen ; nach Theorem 1 hat wieder ganzzahlige Koeffizienten und u.a. die Wurzel
)()( XpXp AopBE )(XpE
val(E) = val(A) op val(B).
Nach Induktionsvoraussetzung gilt: )( )( BuAu ji und
16
mit (u.a.) Wurzeln (Nullstellen) val(A) bzw. val(B).
Beweis von Lemma 12.Fall: (Fortsetzung)
Nach Induktionsvoraussetzung gilt: )( )( BuAu ji und
17
Beweis von Lemma 12.Fall: (Fortsetzung)
Nach Induktionsvoraussetzung gilt: )( )( BuAu ji und
In Theorem 1 haben wir gesehen, dass )()( XPXp AopBE
die Wurzeln hat. Dann gilt:ji op
)()()( op EuBuAuIV
jiji •für : },{ op
•für : *op )()(*)(* * EuBuAuIV
jiji
17
Beweis von Lemma 13.Fall: E hat die Form k AE
Nach Induktionsvoraussetzung existiert ein Polynom
n
iiA XXp
1
)()(
18
mit (u.a.)Wurzel (Nullstelle) val(A).
Beweis von Lemma 13.Fall: E hat die Form k AE
Nach Induktionsvoraussetzung existiert ein Polynom
n
iiA XXp
1
)()( mit (u.a.)Wurzel (Nullstelle) val(A).
Wir wählen :)()( kAE XpXp
)()()()(1
1
01
XZXXXpn
i
kk
ik
n
ii
kkA
wobei die k-te komplexe Einheitswurzel ist.k
Somit gilt für die Wurzeln(Nullstellen):
)()( EuAukIV
ki
ki
kik
18
Beweis der HauptungleichungWie wir im vorigen Lemma gesehen haben, kann man ein Polynom pE(X) mit ganzzahligen Koeffizienten konstruieren, das die Wurzel hat.
Da jedes Polynom mit Wurzel durch das Minimalpolynom geteilt werden kann, sind die Wurzeln des Minimalpolynoms auch Wurzeln von pE(X).
)(Xm
D.h. hat die Form , wobei)(Xm
)deg(
1
)()(j
i jeXXm )deg(1,..., ii
die Indizes der Wurzeln des Minimalpolynoms sind, die auch in pE(X) auftreten.
19
Beweis der Hauptungleichung(2)
Da das Minimalpolynom ist, enthält es keine Wurzeln mit Wert 0 (sonst könnte man nochmal durch (X-0) teilen).
)(Xm
Sei nun o.B.d.A. .1ie
Somit können wir nun schließen:
Desweiteren wissen wir aus Lemma 1:
20
)(Eue ji
Beweis der Hauptungleichung(2)
Da das Minimalpolynom ist, enthält es keine Wurzeln mit Wert 0 (sonst könnte man nochmal durch (X-0) teilen).
)(Xm
Sei nun o.B.d.A. .1ie
Somit können wir nun schließen:
1)deg()deg(
2
)deg(
2
)deg(
1
)(
11
*
Eu
eeej
ij
ij
i jjj
Desweiteren wissen wir aus Lemma 1: )(Eue ji
20
Abgeleitete Korollare(1)
Für Ausdrücke E, die keine Division enthalten, und für deren Wert gilt, besteht folgender Zusammenhang:
0
)( )(
11)(
EuEu ED
r
iikED
1
)(Zur Erinnerung: (ki: die Grade der Wurzeln)
Korollar 1:
)()( EDdeg 21
Beweis Korollar 1)()( EDdeg Es gilt:
1)(1)( )()( EDdeg EuEu
1)(1)( )(
1
)(
1
degED EuEu
)( )(
1
)(
11)deg(1)(
EuEuEu ED
Dies setzen wir in unsere Hauptungleichung ein:
22
Abgeleitete Korollare(2)
Für Ausdrücke E, für deren Wert gilt, besteht folgender Zusammenhang:
0
Korollar 2:
1)(
1)(
2
2 )()()()(
1
ED
EDElEu
EuEl
23
Beweis Korollar 2Wir wenden Korollar 1 auf U(E) statt auf E an:
24
))(( ))((
11))((
EUuEUu EUD
Beweis Korollar 2Wir wenden Korollar 1 auf U(E) statt auf E an:
))(( ))(( ))((
11))((
EUuEUvalEUu EUD
Da außerdem u(U(E)) = u(E) gilt, erhalten wir:
)( ))(( )(
11)(2 EuEUval
Eu ED
Wir schätzen D(U(E)) durch D2(E) nach oben ab, da sich die Zahl der Wurzel erhöhen kann.
24
Beweis Korollar 2
Dies tun wir auch für L(E) statt E und erhalten unter Verwendung von u(L(E)) = l(E) analog zu vorhin:
)( ))(( )(
11)(2 ElELval
El ED
))((
))(()(
ELval
EUvalEval Da gilt, können wir nun schließen:
25
Beweis Korollar 2(rechte Seite)
)( ))(( )(
1 43
1)(2 ElELvalEl ED
))((
))((
ELval
EUval
)( ))(( )(
1 21
1)(2 EuEUvalEu ED
26
Beweis Korollar 2(rechte Seite)
)( )(
1 43
1)(2 ElEl ED
1)(
1)(
3,2 2
2
)()(
)(
1)(
))((
))((
ED
ED
ElEu
El
Eu
ELval
EUval
)( )(
1 21
1)(2 EuEu ED
26
Beweis Korollar 2(linke Seite)
)( )(
1 43
1)(2 ElEl ED
)( )(
1 21
1)(2 EuEu ED
27
))((
))((
ELval
EUval
Beweis Korollar 2(linke Seite)
)( )(
1 43
1)(2 ElEl ED
)( )(
1 21
1)(2 EuEu ED
27
1)(1)(
4,1
22
)()(
1
)(
1*
)(
1
))((
))((
EDED EuElElEuELval
EUval
Beweis Korollar 2(linke Seite)
)( )(
1 43
1)(2 ElEl ED
)( )(
1 21
1)(2 EuEu ED
1)(
1)(
2
2 )()()()(
1
ED
EDElEu
EuEl
Insgesamt erhalten wir:
27
1)(1)(
4,1
22
)()(
1
)(
1*
)(
1
))((
))((
EDED EuElElEuELval
EUval
AnwendungWie kann man nun das Vorzeichen eines Ausdrucks bestimmen?
Sei E ein reellwertiger Ausdruck und sep(E) ein separation bound zu E.
28
AnwendungWie kann man nun das Vorzeichen eines Ausdrucks bestimmen?
Sei E ein reellwertiger Ausdruck und sep(E) ein separation bound zu E.
Wir bestimmen nun ein Intervall , das die Länge ε hat, 0 < ε < sep(E), und in dem der Wert von E liegt.
I
Nun müssen wir uns ansehen, ob die Null in liegt oder nicht.
I
28
)(0 EsepZur Erinnerung:
Anwendung(2)
Die einzige Möglichkeit, dass 0 in unserem Intervall liegen kann, ist dass E den Wert 0 hat; ansonsten enthält das Intervall nur positive oder nur negative Werte.
Das Vorzeichen unseres Ausdrucks E ist somit das Vorzeichen der Werte, die in unserem Intervall liegen.
29
Anwendung(3)
A BC
Problem: Welche Punkte liegen innerhalb des Kreises?
->Vorzeichentest wichtig (z.B. bei Abstandsberechnungen von Punkten)
30
DM
Anwendung(4)
Problem: Liegt ein Punkt der Linie l3 innerhalb des Kreises?
Aus Vortrag von Prof. K. Mehlhorn
31
The End