meindl_diana@42263: \documentclass[12pt,a4paper]{article} meindl_diana@42263: \usepackage{a4} meindl_diana@42263: \usepackage[naustrian]{babel} meindl_diana@42263: \usepackage[latin1]{inputenc} meindl_diana@42263: \usepackage{calc} meindl_diana@42263: \usepackage{amsmath} meindl_diana@42263: \usepackage{epsfig} meindl_diana@42263: \usepackage{graphicx} meindl_diana@42263: \usepackage{xcolor} meindl_diana@42263: \usepackage{amsfonts} meindl_diana@42264: meindl_diana@42263: % Seitenräder einstellen und Höhe der Seitenzahlen meindl_diana@42263: \usepackage{geometry} meindl_diana@42263: \geometry{a4paper, left=2.5cm, right=2cm, top=3cm, bottom=2.8cm} meindl_diana@42263: \setlength{\footskip}{2cm} meindl_diana@42264: meindl_diana@42264: meindl_diana@42263: %Zähler definieren und Starwert setzen: meindl_diana@42263: \newcommand{\R}{\mathbb R} meindl_diana@42263: %\newcommand{\N}{\mathbb N} meindl_diana@42263: %\newcommand{\Q}{\mathbb Q} meindl_diana@42263: %\newcommand{\C}{\mathbb C} meindl_diana@42263: meindl_diana@42263: meindl_diana@42263: \newcounter{ctr} meindl_diana@42263: \setcounter{ctr}{0} meindl_diana@42263: meindl_diana@42263: \newcounter{Teubner} meindl_diana@42263: \newcounter{Klingenberg} meindl_diana@42263: \newcounter{T} meindl_diana@42263: \newcounter{Vo} meindl_diana@42263: \newcounter{Se} meindl_diana@42263: \newcounter{E} meindl_diana@42263: \newcounter{Bwl} meindl_diana@42263: \newcounter{Int} meindl_diana@42263: \newcounter{Prim} meindl_diana@42263: \newcounter{Z} meindl_diana@42263: \setcounter{Z}{0} meindl_diana@42263: \setcounter{Teubner}{1} meindl_diana@42263: \setcounter{Klingenberg}{2} meindl_diana@42263: \setcounter{T}{1} meindl_diana@42263: \setcounter{Vo}{7} meindl_diana@42263: \setcounter{Se}{2} meindl_diana@42263: \setcounter{E}{3} meindl_diana@42263: \setcounter{Bwl}{4} meindl_diana@42263: \setcounter{Int}{5} meindl_diana@42263: \setcounter{Prim}{6} meindl_diana@42263: %BSP meindl_diana@42263: \newenvironment{myBsp}{ meindl_diana@42263: \begin{list}{\textbf{\textsc{Bsp:}}}{ meindl_diana@42263: \setlength{\labelwidth}{8Pc} meindl_diana@42263: \setlength{\labelsep}{0.5Pc} meindl_diana@42263: \setlength{\rightmargin}{0Pc} meindl_diana@42263: \setlength{\leftmargin}{2Pc} meindl_diana@42263: \setlength{\parsep}{0ex plus 0.5ex} meindl_diana@42263: \setlength{\listparindent}{1em} meindl_diana@42263: \setlength{\itemsep}{1ex plus 0.5ex minus 0.2ex} meindl_diana@42263: \setlength{\topsep}{0.5Pc} meindl_diana@42263: }} meindl_diana@42263: {\end{list} meindl_diana@42263: } meindl_diana@42263: meindl_diana@42263: meindl_diana@42263: %Lemma meindl_diana@42263: \newenvironment{myLemma}{ meindl_diana@42263: \begin{list}{\textsc{\textbf{Lemma:\ \ \ }}}{ meindl_diana@42263: \setlength{\labelsep}{-0.5Pc} meindl_diana@42263: \setlength{\leftmargin}{1Pc} meindl_diana@42263: \setlength{\parsep}{0ex plus 0.5ex} meindl_diana@42263: \setlength{\listparindent}{1em} meindl_diana@42263: \setlength{\itemsep}{1ex plus 0.5ex minus 0.2ex} meindl_diana@42263: \setlength{\topsep}{0.5Pc} meindl_diana@42263: }} meindl_diana@42263: {\end{list} meindl_diana@42263: } meindl_diana@42263: %Korollar meindl_diana@42263: \newenvironment{myKorollar}{ meindl_diana@42263: \begin{list}{\textsc{\textbf{Korollar: }}}{ meindl_diana@42263: \setlength{\labelwidth}{8Pc} meindl_diana@42263: \setlength{\labelsep}{0.5Pc} meindl_diana@42263: \setlength{\rightmargin}{0Pc} meindl_diana@42263: \setlength{\leftmargin}{4Pc} meindl_diana@42263: \setlength{\parsep}{0ex plus 0.5ex} meindl_diana@42263: \setlength{\listparindent}{1em} meindl_diana@42263: \setlength{\itemsep}{1ex plus 0.5ex minus 0.2ex} meindl_diana@42263: \setlength{\topsep}{0.5Pc} meindl_diana@42263: }} meindl_diana@42263: {\end{list} meindl_diana@42263: } meindl_diana@42263: meindl_diana@42263: %Theorem meindl_diana@42263: \newenvironment{myTheorem}{ meindl_diana@42263: \begin{list}{\textsc{\textbf{Theorem: }}}{ meindl_diana@42263: \setlength{\labelwidth}{8Pc} meindl_diana@42263: \setlength{\labelsep}{0.5Pc} meindl_diana@42263: \setlength{\rightmargin}{0Pc} meindl_diana@42263: \setlength{\leftmargin}{5Pc} meindl_diana@42263: \setlength{\parsep}{0ex plus 0.5ex} meindl_diana@42263: \setlength{\listparindent}{1em} meindl_diana@42263: \setlength{\itemsep}{1ex plus 0.5ex minus 0.2ex} meindl_diana@42263: \setlength{\topsep}{0.5Pc} meindl_diana@42263: }} meindl_diana@42263: {\end{list} meindl_diana@42263: } meindl_diana@42263: meindl_diana@42263: meindl_diana@42263: %Proportion meindl_diana@42263: \newenvironment{myProp}{ meindl_diana@42263: \begin{list}{\textsc{\textbf{Proportion: }}}{ meindl_diana@42263: \setlength{\labelwidth}{8Pc} meindl_diana@42263: \setlength{\labelsep}{0.5Pc} meindl_diana@42263: \setlength{\rightmargin}{0Pc} meindl_diana@42263: \setlength{\leftmargin}{4Pc} meindl_diana@42263: \setlength{\parsep}{0ex plus 0.5ex} meindl_diana@42263: \setlength{\listparindent}{1em} meindl_diana@42263: \setlength{\itemsep}{1ex plus 0.5ex minus 0.2ex} meindl_diana@42263: \setlength{\topsep}{0.5Pc} meindl_diana@42263: }} meindl_diana@42263: {\end{list} meindl_diana@42263: } meindl_diana@42263: meindl_diana@42263: %Farben meindl_diana@42263: meindl_diana@42263: \newcommand{\red}[1]{\textcolor[rgb]{0.7,0,0}{\bf #1}} meindl_diana@42263: \newcommand{\rd}[1]{\color{red}{#1}} meindl_diana@42263: \newcommand{\white}[1]{\textcolor[rgb]{1,0,0}{\bf #1}} meindl_diana@42263: \newcommand{\w}[1]{\color{white}{#1}} meindl_diana@42263: \newcommand{\g}[1]{\color{myColor}{#1}} meindl_diana@42263: meindl_diana@42263: \usepackage{color} meindl_diana@42263: \definecolor{myColor}{rgb}{0.9,0.9,0.9}% Wir definieren im RGB-Farbraum meindl_diana@42263: meindl_diana@42263: meindl_diana@42263: \newcommand{\myDef}[1]{\parbox{\columnwidth}{\addtocounter{ctr}{1}{\w .}\\[-0.2cm]\textbf{Definition\ \Nummer:}\\#1}} meindl_diana@42263: \newcommand{\mySatz}[2]{\colorbox{myColor}{\parbox{\columnwidth}{\addtocounter{ctr}{1}{\g .}\\[-0.2cm]\textbf{Satz\ \Nummer:}\ #1\\ #2}}} meindl_diana@42263: \newcommand{\myBeweis}[1]{\textit{\textbf{Beweis:}\\ #1}} meindl_diana@42263: \newcommand{\myAlg}[2]{\parbox{\columnwidth}{\addtocounter{ctr}{1}\textbf{Algorithmus\ \Nummer:}\ \ #1\\#2}} meindl_diana@42263: \newcommand{\myProg}[1]{\fbox{\parbox{\columnwidth}{#1}}} meindl_diana@42263: meindl_diana@42263: \newcommand{\add}[1]{\addtocounter{#1}{1}} meindl_diana@42263: \newcommand{\zahl}[1]{\setcounter{#1}{Z}} meindl_diana@42263: \newcommand{\Q}[2]{\parbox{\columnwidth}{$^{[\arabic{#1}/#2]}$ }} meindl_diana@42263: meindl_diana@42263: \newcommand{\Nummer}{\thesection.\arabic{ctr}} meindl_diana@42263: meindl_diana@42265: %---------- --------------------------------------------------- Beginn ----------------------------------------------------------------------- meindl_diana@42263: meindl_diana@42263: \title{Greates common divisor \\ for multivariable Polynomials} meindl_diana@42263: \author{By\\Diana Meindl\\meindl$_-$diana@yahoo.com} meindl_diana@42263: \date{} meindl_diana@42263: meindl_diana@42263: \begin{document} meindl_diana@42263: \maketitle meindl_diana@42263: {\w .}\\[12cm] meindl_diana@42263: \begin{center} meindl_diana@42263: Presented to \\ meindl_diana@42263: A.Univ.Prof. Dipl.-Ing. Dr. Wolfgang Schreiner (RISC Insitute)\\ meindl_diana@42263: and\\ meindl_diana@42263: Dr. techn. Walther Neuper (Institut für Softwaretechnologie, TU Graz) meindl_diana@42263: \end{center} meindl_diana@42263: \newpage meindl_diana@42234: {\w .}\hspace{6.5cm}\textbf{Abstact}\\[0.5cm] meindl_diana@42263: Calculation with fractions is an importent part of Computer-Algebra-Systems (CAS). Therefor you need algorithms for canceling fractions, respectively for the greatest common divisor (GCD). meindl_diana@42234: \section{Background} meindl_diana@42263: The ISAC-project is a research and development project at the Institute for Software Technology of the Graz University of Technology. ISAC is an educational mathematics assistant, a single-stepping system for applied mathematics based on the computer theorem prover Isabelle. The novelty is given by the human-readable knowledge base including Isabelles HOL-theories and by the transparently working knowledge interpreter (a generalization of 'single stepping' algebra systems). The background to both, development and research, is given by actual needs in math education as well as by foundamental questions about 'the mechanization of thinking' as an essential aspect in mathematics and in technology. The ISAC-system under construction comprises a tutoring-system and an authoring-system. The latter provides for adaption to various needs of individual users and educational institutions and for extensions to arbitrary fields of applied mathematics. meindl_diana@42263: meindl_diana@42234: \section{Goal of the thesis} meindl_diana@42234: \subsection{Current situation} meindl_diana@42263: Zur Zeit ist keine gute Implimentierung vorhanden. Um polynomiale Brüche zu kürzen, darum besteht die Notwendigkeit eienr Implimentierung in Isabelle, auf die von Isac zugegriffen wird. meindl_diana@42234: \subsection{Problem} meindl_diana@42263: meindl_diana@42263: In Isac möchte man gerne Brüche kürzen können und dies nicht nur mit einer Variablel sondern auch mit mehrern Variablen. So the goal of this thesis ist to find, assess and evaluate the existing algorithms and methods for finding the GCD. This will be an functional programm with the posibility to include it in Isabelle. meindl_diana@42234: \subsection{Expected results} meindl_diana@42263: Polynome kürzen und addieren ( wenn sie in Normalform sind)\\ meindl_diana@42263: Für reale koeffizienten eventuell auch für imaginäre oder rationale.\\ meindl_diana@42263: richtige implimentierung in isac basierend auf Isabelle.\\ meindl_diana@42263: Funktional programmiert mit guten Beschreibungen, was gerade gemacht wird.\\ meindl_diana@42263: meindl_diana@42234: meindl_diana@42234: \section{State of the art} meindl_diana@42263: Was ist vorhanden, was kann ich aus welchen Büchern für meine Arbeit verwenden meindl_diana@42263: Es gibt verschiedene CAS die bereits einen Algrotihmus implimentiert haben, wie haben die das gemacht, und welcher ist für mich am besten. meindl_diana@42234: meindl_diana@42234: %\newpage meindl_diana@42234: \section{Thesis structure} meindl_diana@42234: the proposed table of contents of the thesis on the chapter level is as follows: meindl_diana@42234: \begin{enumerate} meindl_diana@42263: \item Introduction (2-3 pages) meindl_diana@42263: \item The \textit{ISAC}-Project (5 - 7 pages)\\ meindl_diana@42263: This chapter will describe the \textit{ISAC}-Project and the goals of the project. meindl_diana@42234: \item Univariate Polynomials (15-20 pages)\\ meindl_diana@42263: This chapter will describe different Algorithms for univariate polynomials, with different coefficients. meindl_diana@42234: \item Multivariate Polynomials (20-25 pages)\\ meindl_diana@42263: This chapter will describe different Algorithms for multivariate polynomials, with different coefficients meindl_diana@42263: \item Functional programming and SML(2-5 pages)\\ meindl_diana@42263: The basic idea of this programming languages. meindl_diana@42263: \item Implimentation in \textit{ISAC}-Project (15-20 pages) meindl_diana@42263: \item Conclusion (2-3 pages) meindl_diana@42234: \end{enumerate} meindl_diana@42234: %\newpage meindl_diana@42234: meindl_diana@42234: \section{Timeline} meindl_diana@42234: %Werd nie fertig.\\ meindl_diana@42234: \begin{center} meindl_diana@42234: \begin{tabular}{|l|l|l|} meindl_diana@42234: \hline meindl_diana@42234: \textbf{Time}&\textbf{Thesis}&\textbf{Project}\\ meindl_diana@42263: \hline meindl_diana@42263: & Functional programming & Grundlagen Funktionales Programmieren\\ meindl_diana@42263: \hline meindl_diana@42263: & Univariate Polynomials & Implimentation of the Algorithm\\ meindl_diana@42263: & & for univariate Polynomials \\ \hline meindl_diana@42263: & Multivariate Polynomials & \\ \hline meindl_diana@42263: & The Isac-Project &Implimentation of the Algorithm\\ meindl_diana@42263: & & for multivariate Polynomials \\ \hline meindl_diana@42263: & Conclusion and Introduction & Summary and Conclusions of Experiments\\ meindl_diana@42234: \hline meindl_diana@42234: \end{tabular} meindl_diana@42234: \end{center} meindl_diana@42234: meindl_diana@42234: \section{Bibliography} meindl_diana@42234: mindestens 10 meindl_diana@42234: \begin{enumerate} meindl_diana@42263: \item Franz Winkler, \textit{Polynomial Algorithms in Computer Algebra}, Springer,1996 meindl_diana@42263: \item M. Mignotte, \textit{An inequality about factors of polynomial} meindl_diana@42263: \item M. Mignotte, \textit{Some useful bounds} meindl_diana@42263: \item W. S. Brown and J. F. Traub. \textit{On euclid's algorithm and the theory of subresultans}, Journal of the ACM (JACM), 1971 meindl_diana@42263: \item Bruno Buchberger, \textit{Algorhimic mathematics: Problem types, data types, algorithm types}, Lecture notes, RISC Jku A-4040 Linz, 1982 meindl_diana@42263: \item Bird/Wadler, \textit{Einführung in die funktionale Programmierung}, Carl Hanser and Prentice-Hall International, 1992 meindl_diana@42263: \item Tateaki Sasaki and Masayuki Suzuki, \textit{Thre new algorithms for multivariate polynomial GCD}, J. Symbolic Combutation, 1992 meindl_diana@42234: \item meindl_diana@42234: \item meindl_diana@42234: \item meindl_diana@42263: \end{enumerate} meindl_diana@42263: meindl_diana@42263: \end{document}