\mnb150ÿ{\rtf1\ansi\deff0\deftab720{\fonttbl{\f0\fswiss MS Sans Serif;}{\f1\froman\fcharset2 Symbol;}{\f2\fswiss\fprq2 System;}{\f3\fswiss\fprq2 Arial;}{\f4\fmodern\fprq1 Courier New;}{\f5\fswiss\fprq2 Helvetica;}}
{\colortbl\red0\green0\blue0;\red128\green128\blue128;\red255\green0\blue0;\red0\green0\blue255;\red0\green128\blue0;}
\deflang1031\pard\ri4\plain\f4\fs20\cf0\b ________________________________________________________________________________
\par
\par \plain\f4\fs20\cf0 Inhalt....: Polynome in MuPAD
\par Kategorie.: Handwerkskasten
\par Mathematik: Zahlentheorie, Kryptographie, Lineare Algebra, Analysis, Numerik
\par MuPAD.....: 3.0.0
\par Datum.....: 2002-08-14
\par Autoren...: Kai Gehrs
\par Funktionen: poly, divide, Dom::Integer
\par \plain\f4\fs20\cf0\b ________________________________________________________________________________
\par \plain\f3\fs36\cf0\b
\par \plain\f3\fs40\cf0\b Elementare MuPAD-Funktionen:
\par Polynome in MuPAD \plain\f3\fs24\cf4
\par
\par Eine der elementarsten Familien von Funktionen in einer Unbestimmten ist die Familie der
\par Polynomfunktionen (oder kurz Polynome). Der Umgang mit Polynomen soll hier am Beispiel
\par des MuPAD Befehls 'poly' demonstriert werden.
\par \plain\f3\fs28\cf0
\par \plain\f3\fs28 Es gibt im wesentlichen zwei M\'f6glichkeiten, in MuPAD mit Polynomen zu rechnen.
\par
\par Die erste M\'f6glichkeit besteht darin, dass man Polynome als \plain\f3\fs28\cf2 MuPAD Expressions\plain\f3\fs28
\par (MuPAD Ausdr\'fccke) definiert. So kann z.B. das Polynom p = x^2 + 1 mittels
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}p:= x^2 + 1
\par \pard\ri4\plain\f3\fs28
\par definiert werden. Diese Vorgehensweise ist durchaus sinnvoll, wenn man sich
\par ausschlie\'dflich im Bereich der Analysis bewegt und derartige Polynomfunktionen
\par mit Mitteln der Differenzial- und Integralrechnung diskutiert. M\'f6chte man jedoch
\par Polynome eher als algebraische Struktur ("Ring der Polynome") betrachten
\par und algebraische oder zahlentheoretische Methoden wie z.B. die Berechnung des
\par gr\'f6\'dften gemeinsamen Teilers zweier Polynome anwenden, so ist es sinnvoller,
\par die Funktion \plain\f3\fs28\cf2 poly\plain\f3\fs28\cf0 zur Definition von Polynomen in MuPAD zu benutzen.
\par
\par Die Funktion \plain\f3\fs28\cf2 poly\plain\f3\fs28\cf0 erh\'e4lt stets \plain\f3\fs28\cf4 zwei oder drei Argumente\plain\f3\fs28 :
\par
\par \plain\f3\fs28\cf2 1. Argument:\plain\f3\fs28 Ein \plain\f3\fs28\cf4 polynomialer Ausdruck in einer Unbestimmten\plain\f3\fs28 , z.B. in \plain\f3\fs28\cf4 x\plain\f3\fs28
\par
\par \plain\f3\fs28\cf2 2. Argument:\plain\f3\fs28 Eine \plain\f3\fs28\cf4 einelementige Liste, die die Unbestimmte enth\'e4lt\plain\f3\fs28 , die
\par in dem polynomialen Ausdruck vorkommt, d.h. hier \plain\f3\fs28\cf4 [ x ]\plain\f3\fs28\cf0
\par
\par \plain\f3\fs28\cf2 3. Argument: \plain\f3\fs28 Als drittes, optionales Argument kann man einen \plain\f3\fs28\cf4 Koeffizienten-
\par bereich\plain\f3\fs28 angeben, aus dem die Koeffizienten des Polynoms
\par stammen sollen - wird dieser \plain\f3\fs28\cf4 nicht \plain\f3\fs28 angegeben, so wird der
\par \plain\f3\fs28\cf4 gr\'f6\'dftm\'f6gliche Koeffizientenbereich von MuPAD gew\'e4hlt\plain\f3\fs28
\par (d.h. \plain\f3\fs28\cf4 Dom::ExpressionField - der Bereich, der alle Zahlen
\par und Variablen umfa\'dft\plain\f3\fs28 ).
\par
\par Ein Aufruf der Funktion ist also in der Regel entweder von der Form
\par
\par \plain\f3\fs28\cf2 poly(\plain\f3\fs28 \plain\f3\fs28\cf4 polynomialer Ausdruck z.B. in x, [ x ]\plain\f3\fs28\cf2 )\plain\f3\fs28
\par
\par oder, falls explizit ein bestimmter Koeffizientenbereich \plain\f3\fs28\cf4 R\plain\f3\fs28 gew\'fcnscht ist, von der Form
\par
\par \plain\f3\fs28\cf2 poly( \plain\f3\fs28\cf4 polynomialer Ausdruck z.B. in x, [ x ], R\plain\f3\fs28\cf2 )\plain\f3\fs28
\par
\par Als \plain\f3\fs28\cf3 R\'fcckgabewert\plain\f3\fs28 liefert uns \plain\f3\fs28\cf2 poly\plain\f3\fs28 im ersten Fall \plain\f3\fs28\cf3 ein Polynom in\plain\f3\fs28 \plain\f3\fs28\cf4 x\plain\f3\fs28 \plain\f3\fs28\cf3 \'fcber dem
\par gr\'f6\'dftm\'f6glichen in MuPAD verf\'fcgbaren Koeffizientenbereich\plain\f3\fs28 \plain\f3\fs28\cf4 Dom::ExpressionField()\plain\f3\fs28 .
\par
\par Im zweiten Fall wird das \plain\f3\fs28\cf3 Polynom so erzeugt, dass seine Koeffizienten aus dem
\par explizit angegebenen Koeffizientenbereich\plain\f3\fs28 \plain\f3\fs28\cf4 R\plain\f3\fs28 \plain\f3\fs28\cf3 stammen\plain\f3\fs28 . F\'fcr den interessierten
\par Leser weisen wir darauf hin, dass im Handwerkskasten einige wichtige m\'f6gliche
\par Koeffizientenbereiche in dem Notebook \plain\f3\fs28\cf0 "\plain\f3\fs28\cf1 Zahlbereiche_in_MuPAD\plain\f3\fs28\cf0 "\plain\f3\fs28 vorgestellt
\par werden.
\par
\par Wir betrachten einige Beispiele:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}p:= poly(x^2 - 5*x + 6, [x])
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}q:= poly(x^3 - 2*x^2 - x + 2, [x])
\par \pard\ri4\plain\f3\fs28
\par Wir k\'f6nnen nun mit den beiden Polynomen die \'fcblichen arithmetischen
\par Operationen wie Addition und Multiplikation durchf\'fchren. Ein Vorteil besteht
\par darin, dass wir stets wieder ein Polynom erhalten:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Summe:= p + q
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Differenz:= p - q
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Produkt:= p * q
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}p * poly(1/3, [x])
\par \pard\ri4\plain\f3\fs28
\par Das einizige, womit wir vorsichtig sein m\'fcssen, ist die Division. Als algebraische
\par Struktur betrachtet, bildet die Menge der Polynome in einer Unbestimmten \'fcber
\par einem speziellen Koeffizientenbereich einen Ring, aber keinen K\'f6rper. Elemente
\par sind also (abgesehen von konstanten Polynomen, die in dem zugrundeliegenden
\par Koeffizientenbereich invertierbar sind) nicht invertierbar. Dies teilt uns MuPAD auch
\par ganz unverbl\'fcmt mit:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Quotient:= p / q
\par \pard\ri4\plain\f3\fs28
\par \'c4hnlich wie bei ganzen Zahlen k\'f6nnen wir auch "ganzzahlige Division" durchf\'fchren
\par und Reste betrachten. Die Funktion \plain\f3\fs28\cf2 divide\plain\f3\fs28 bestimmt den Quotienten zweier
\par Polynome nach dem Euklidischen Algorithmus.
\par
\par Die Funktion \plain\f3\fs28\cf2 divide\plain\f3\fs28 erh\'e4lt stets \plain\f3\fs28\cf4 zwei Argumente\plain\f3\fs28 :
\par
\par \plain\f3\fs28\cf2 1. Argument:\plain\f3\fs28 Ein Polynom \plain\f3\fs28\cf4 p in einer Unbestimmten, z.B. in x\plain\f3\fs28
\par
\par \plain\f3\fs28\cf2 2. Argument:\plain\f3\fs28 Ein Polynom \plain\f3\fs28\cf4 q in derselben Unbestimmten wie p, hier z.B. in x\plain\f3\fs28
\par
\par d.h. also ein Aufruf ist immer von der Form \plain\f3\fs28\cf2 divide\plain\f3\fs28 \plain\f3\fs28\cf2 ( \plain\f3\fs28\cf4 p, q, \plain\f3\fs28\cf2 )\plain\f3\fs28\cf0 .
\par
\par \plain\f3\fs28 Als \plain\f3\fs28\cf3 R\'fcckgabewert \plain\f3\fs28\cf0 liefert uns die Funktion eine \plain\f3\fs28\cf3 Sequenz von zwei Polynomen
\par s und r\plain\f3\fs28\cf0 . Dabei ist \plain\f3\fs28\cf3 s der Quotient\plain\f3\fs28\cf0 von \plain\f3\fs28\cf4 p \plain\f3\fs28\cf0 und \plain\f3\fs28\cf4 q\plain\f3\fs28\cf0 und \plain\f3\fs28\cf3 r der Rest bei Division von \plain\f3\fs28\cf4 p\plain\f3\fs28\cf3 durch \plain\f3\fs28\cf4 q\plain\f3\fs28\cf0 ,
\par so dass gilt:
\par
\par \plain\f3\fs28\cf4 p\plain\f3\fs28\cf0 = \plain\f3\fs28\cf3 s\plain\f3\fs28\cf0 * \plain\f3\fs28\cf4 q\plain\f3\fs28\cf0 +\plain\f3\fs28\cf3 r\plain\f3\fs28\cf0
\par
\par Die Handhabung der Funktion ist also denkbar einfach. Wir erproben sie am Beispiel
\par unserer Polynome:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}divide(p, q)
\par \pard\ri4\plain\f3\fs28
\par \plain\f3\fs28\cf0 Wir machen die Probe: Auf das erste Polynom der Sequenz (d.h. auf den Quotienten
\par unserer beiden Polynome) greifen wir wie auf die Elemente einer Liste mit dem
\par Indexoperator \plain\f3\fs28\cf2 [ ]\plain\f3\fs28\cf0 zu:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}s:= divide(p, q)[1]
\par \pard\ri4\plain\f4\fs22\cf2
\par \plain\f3\fs28\cf0 Der Rest, d.h. das Polynom r, ist gegeben durch
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}r:= divide(p, q)[2]
\par \pard\ri4\plain\f4\fs22\cf2
\par \plain\f3\fs28\cf0 Die Probe ergibt:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}p = s * q + r
\par \pard\ri4\plain\f4\fs22\cf2
\par \plain\f3\fs28\cf0 Das Ergebnis ist also korrekt. Wir vertauschen noch einmal die Rollen von p und q: \plain\f4\fs22\cf2
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}divide(q, p)
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}s:= divide(q, p)[1]
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}r:= divide(q, p)[2]
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}q = s * p + r
\par \pard\ri4\plain\f3\fs28
\par Wir f\'fchren nun die gleichen Rechnungen noch einmal durch - diesmal wollen wir
\par aber explizit Polynome mit ganzzahligen Koeffizienten betrachten. Der Bereich
\par der ganzen Zahlen ist in MuPAD durch \plain\f3\fs28\cf2 Dom::Integer\plain\f3\fs28\cf0 gegeben.
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}R:= Dom::Integer
\par \pard\ri4\plain\f3\fs28
\par Wir k\'f6nnen jetzt p und q als Polynome \'fcber R definieren und alle obigen Rechnungen
\par erneut durchf\'fchren:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}p:= poly(x^2 - 5*x + 6, [x], R)
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}q:= poly(x^3 - 2*x^2 - x + 2, [x], R)\plain\f3\fs28\cf2
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Summe:= p + q\plain\f3\fs28\cf2
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Differenz:= p - q\plain\f3\fs28\cf2
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Produkt:= p * q\plain\f3\fs28\cf2
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}divide(p, q)\plain\f3\fs28\cf2
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}divide(q, p)\plain\f3\fs28\cf2
\par \pard\ri4\plain\f3\fs28
\par Wo liegt nun der Unterschied zu den Polynomen p und q, die wir zuerst
\par betrachtet haben? Nun, wir haben eine Rechnung von oben bisher aus gutem
\par Grund nicht wiederholt: Die Multiplikation von p mit dem konstanten Polynom 1/3.
\par
\par Da 1/3 keine ganze Zahl ist, k\'f6nnen wir das konstante Polynom 1/3 \'fcber R erst
\par gar nicht definieren:
\par
\par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}poly(1/3, [x], R)
\par \pard\ri4\plain\f3\fs28
\par MuPAD h\'e4lt sich also strikt daran, dass alle Koeffizienten tats\'e4chlich ganzzahlig
\par sein m\'fcssen. Dieses Konzept ist vor allem dann wichtig, wenn man sicherstellen
\par m\'f6chte, dass man bei bestimmten Rechnungen nicht aus einem fest vorgegebenen
\par Koeffizietenbereich "herausf\'e4llt".
\par
\par Die Funktionen \plain\f3\fs28\cf2 gcd\plain\f3\fs28 und \plain\f3\fs28\cf2 gcdex\plain\f3\fs28 zur Berechnung des gr\'f6\'dften gemeinsamen
\par Teilers sowie die Funktion \plain\f3\fs28\cf2 lcm \plain\f3\fs28 zur Berechnung des kleinsten gemeinsamen
\par Vielfaches sind auch f\'fcr Polynome verwendbar. Wir verzichten hier auf eine
\par genaue Beschreibung der Funktionen - sie lassen sich ganz analog beschreiben
\par wie die in dem Notebook "\plain\f3\fs28\cf1 ggT_und_kgV\plain\f3\fs28 " angegebenen entsprechenden
\par Funktionen \plain\f3\fs28\cf2 igcd\plain\f3\fs28 , \plain\f3\fs28\cf2 igcdex\plain\f3\fs28 und \plain\f3\fs28\cf2 ilcm \plain\f3\fs28 f\'fcr ganzen Zahlen.
\par
\par \plain\f4\fs20\cf0\b _______________________________________________________________________________
\par \plain\f3\fs22\cf0
\par \plain\f3\fs22\cf4\b Anmerkungen:\plain\f3\fs22\cf4
\par \plain\f3\fs20\cf4\b 1\plain\f3\fs20\cf4 . Weitere Anregungen finden Sie in der Buchreihe \plain\f3\fs20\cf2 Mathematik 1 x anders\plain\f3\fs20\cf4 . In dieser Reihe
\par wird eine Vielzahl unterschiedlichster mathematischer Probleme mit MuPAD gel\'f6st. Die
\par B\'fccher k\'f6nnen unter \plain\f5\fs20\cf3 www.schule.mupad.de/literatur\plain\f3\fs20\cf4 kostenfrei kopiert werden.
\par \plain\f3\fs20\cf3
\par \plain\f4\fs20\cf0\b _______________________________________________________________________________
\par
\par
\par }