Pewne algorytmy symboliczne

Język wykładowy Polski
Semestr Letni
Status Poddana pod głosowanie
Opiekun Paweł Woźny
Liczba godzin 30 (wyk.) 30 (ćw-prac.)
Rodzaj Informatyczny 1
ECTS 6
Polecany dla I roku Nie
Egzamin Tak
Tagi AZ (algorytmika i złożoność obliczeniowa)

Opis przedmiotu:

Pakiety obliczeń symbolicznych są niezwykle popularne od wielu lat. Możliwości jakie dają te najbardziej znane, czyli Maple, Mathematica czy dostępny on-line Wolfram Alpha, są naprawdę imponujące. Programy te pozwalają m.in. na symboliczne sumowanie, różniczkowanie, całkowanie, obliczanie granic, rozwiązywanie równań różniczkowych, całkowych i rekurencyjnych. Nie są im obce też metody symbolicznego rozwiązywania problemów z zakresu algebry, geometrii, statystyki, matematyki dyskretnej, algorytmiki i wielu innych, mniej lub bardziej znanych, działów matematyki. Można przy ich pomocy dokonywać obliczeń naukowych i inżynieryjnych (także numerycznych i to z dowolną dokładnością), a ich wyniki efektownie wizualizować. Osoby interesujące się matematyką lub informatyką już po krótkiej *zabawie* takimi programami muszą zadać sobie pytanie: _No dobrze, ale jak to wszystko działa?_ Jak można się spodziewać, sprawa nie jest prosta. Algorytmy stosowane w pakietach obliczeń symbolicznych są skomplikowane i bazują na zaawansowanych teoriach matematycznych, a ich implementacja jest trudna. Są jednak i takie, które leżą w naszym *zasięgu*: ich idee można wyjaśnić bez odwoływania się do skomplikowanej matematyki. Celem wykładu jest przystępne przedstawienie pewnych algorytmów symbolicznych stosowanych w takich systemach algebry komputerowej jak Maple czy Mathematica. Swoją uwagę skupimy głównie na metodach związanych z tzw. _sumowaniem symbolicznym_ i _symbolicznym dowodzeniem tożsamości_. Przekazana wiedza może być szczególnie przydatna osobom interesującym się m.in. algorytmiką, matematyką dyskretną, kombinatoryką czy zależnościami rekurencyjnymi. Wszystko zacznie się jednak od krótkiego kursu Maple'a, który będzie podstawowym narzędziem tego wykładu. **Wymagania** * analiza matematyczna, * algebra, * umiejętność programowania w dowolnym języku. **Program** 1. Krótki kurs Maple'a. 2. Funkcja Gamma i jej własności. 3. Podstawowe wiadomości o związkach rekurencyjnych. 4. Tożsamości hipergeometryczne. 5. Metoda Siostry Celine. 6. Algorytm Gospera. 7. Algorytm Zeilbergera. 8. Metoda WZ. 9. Algorytm Petkovšeka. 10. Pewne uogólnienia omówionych metod. **Literatura** * W. Koepf, _Hypergeometric summation. An algorithmic approach to summation and special function identities_ , Vieweg Verlag, 1998. * M. Petkovšek, H. S. Wilf, D. Zeilberger, _A=B_ , A. K. Peters, Wellesley, 1996 (książka dostępna pod adresem <https://www.math.upenn.edu/~wilf/AeqB.html>). P.S. Tak, to prawda. Ten wykład nie ma nic wspólnego z _numerkami_.