Teoretyczne podstawy informatyki

Podobne dokumenty
Matematyka II - Organizacja zajęć. Egzamin w sesji letniej

Teoretyczne podstawy informatyki

Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu

Programowanie deklaratywne i logika obliczeniowa

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

WYDZIAŁ NAUK EKONOMICZNYCH I INFORMATYKI Rozkład zajęć, Semestr zimowy, Kierunek INFORMATYKA PONIEDZIAŁEK

Modele Obliczeń. Wykład 1 - Wprowadzenie. Marcin Szczuka. Instytut Matematyki, Uniwersytet Warszawski

Alan M. TURING. Matematyk u progu współczesnej informatyki

Obliczanie. dr hab. inż. Joanna Józefowska, prof. PP 1

Elementy Teorii Obliczeń

Instytut Nauk Technicznych, PWSZ w Nysie Kierunek: Informatyka Specjalność: Systemy i sieci komputerowe, SSK studia niestacjonarne Dla rocznika:

Rok I, semestr I (zimowy) Liczba godzin

Instytut Nauk Technicznych, PWSZ w Nysie Kierunek: Informatyka Specjalność: Systemy internetowe, SI studia niestacjonarne Dla rocznika:

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Instytut Nauk Technicznych, PWSZ w Nysie Kierunek: Informatyka Specjalność: Systemy internetowe, SI studia stacjonarne Dla rocznika: 2018/2019

Teoria obliczeń i złożoność obliczeniowa

Maszyny Turinga. Jerzy Pogonowski. Funkcje rekurencyjne. Zakład Logiki Stosowanej UAM

Instytut Nauk Technicznych, PWSZ w Nysie Kierunek: Informatyka Specjalność: Gry komputerowe i multimedia, GKiM studia niestacjonarne Dla rocznika:

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Rok I, semestr I (zimowy) Liczba godzin

Rok I, semestr I (zimowy) Liczba godzin

Programowanie komputerów

INSTYTUT NAUK EKONOMICZNYCH I INFORMATYKI Rozkład zajęć, Semestr zimowy, Kierunek INFORMATYKA PONIEDZIAŁEK

Języki, automaty i obliczenia

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa

O ALGORYTMACH I MASZYNACH TURINGA

Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma studiów: Stacjonarne. audytoryjne. Wykład Ćwiczenia

Instytut Informatyki, PWSZ w Nysie Kierunek: Informatyka Specjalność: Systemy i sieci komputerowe, SSK studia stacjonarne Rok 2012/2013

Informacje ogólne. Językoznawstwo i nauka o informacji

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Programowanie obiektowo zorientowane. Mirosław Głowacki Wykład w języku C++

Matematyczne podstawy informatyki Mathematical Foundations of Computational Sciences. Matematyka Poziom kwalifikacji: II stopnia

Wstęp do programowania

Rekurencyjna przeliczalność

Algorytm. Krótka historia algorytmów

Kierunek: INFORMATYKA Specjalność INŻYNIERIA SYSTEMÓW INFORMATYCZNYCH

KARTA MODUŁU KSZTAŁCENIA

Kierunek: INFORMATYKA Specjalność INŻYNIERIA SYSTEMÓW INFORMATYCZNYCH

PRZEDMIOTY REALIZOWANE W RAMACH KIERUNKU INFORMATYKA I STOPNIA STUDIA STACJONARNE

PLAN NIESTACJONARNYCH STUDIÓW PIERWSZEGO STOPNIA (INŻYNIERSKICH) NA KIERUNKU INFORMATYKA

Kierunek: INFORMATYKA Specjalność INŻYNIERIA SYSTEMÓW INFORMATYCZNYCH

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

Programowanie w języku C++ Podstawowe paradygmaty programowania

RAMOWY PROGRAM STUDIÓW NA KIERUNKU INFORMATYKA STUDIA INŻYNIERSKIE SEMESTR: I

TOK STUDIÓW Kierunek: informatyka rok studiów: I studia stacjonarne pierwszego stopnia, rok akademicki 2014/2015. Forma zaliczen ia. egz. lab.

Matematyczne Podstawy Informatyki

Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy. Dokumentacja specjalności. Informatyka w systemach produkcyjnych

Obowiązkowy A. Przedmioty kształcenia ogólnego 1 Etykieta w życiu publicznym wykład 9 zaliczenie tak 1 B. Przedmioty podstawowe

Obliczenia inspirowane Naturą

HARMONOGRAM EGZAMINÓW - rok akademicki 2015/ semestr zimowy. Kierunek ENERGETYKA - studia inżynierskie środa

WYKAZ PRZEDMIOTÓW I PLAN REALIZACJI

Obliczenia inspirowane Naturą

Algorytmy. Programowanie Proceduralne 1

Obowiązkowy A. Przedmioty kształcenia ogólnego 1 Etykieta w życiu publicznym wykład 9 zaliczenie tak 1 B. Przedmioty podstawowe

Algorytmy. Programowanie Proceduralne 1

INFORMATYKA. PLAN STUDIÓW STACJONARNYCH INŻYNIERSKICH 1-go STOPNIA STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM 2019/2020.

Plan dla studiów prowadzonych w formie niestacjonarnej 2014/2015

INFORMATYKA. PLAN STUDIÓW NIESTACJONARNYCH 1-go STOPNIA STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM 2016/17. zajęć w grupach A K L S P

Wprowadzenie do teorii systemów ekspertowych

PRZEWODNIK PO PRZEDMIOCIE

Maszyna Turinga języki

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA Realizacja w roku akademickim 2016/17

Dialog z przyroda musi byc prowadzony w jezyku matematyki, w przeciwnym razie przyroda nie odpowiada na nasze pytania.

INFORMATYKA PLAN STUDIÓW NIESTACJONARNYCH (W UKŁADZIE ROCZNYM) STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Języki i metodyka programowania

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 1 WSTĘP DO INFORMATYKI

Kierunek Informatyka stosowana Studia stacjonarne Studia pierwszego stopnia

Zatwierdzono na Radzie Wydziału w dniu 11 czerwca 2015 r.

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

Wykład IV Algorytmy metody prezentacji i zapisu Rzut oka na język PASCAL

Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy. Dokumentacja specjalności. Systemy komputerowe administracji

Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy. Dokumentacja specjalności. Technologie internetowe

Kierunek: Informatyka rev rev jrn Niestacjonarny 1 / 5

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Kierunek: Inżynieria Obliczeniowa Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Kierunek: Informatyka rev rev jrn Stacjonarny 1 / 6

Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy. Dokumentacja specjalności. Grafika komputerowa

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU. Sieci i sterowniki przemysłowe

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Matematyka dyskretna Literatura Podstawowa: 1. K.A. Ross, C.R.B. Wright: Matematyka Dyskretna, PWN, 1996 (2006) 2. J. Jaworski, Z. Palka, J.

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa, Inżynieria oprogramowania, Technologie internetowe

INFORMATYKA. PLAN STUDIÓW STACJONARNYCH 1-go STOPNIA (W UKŁADZIE SEMESTRALNYM) STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM A K L S P

Fizyka komputerowa(ii)

Kierunek: Automatyka i Robotyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

KIERUNEK: KOGNITYWISTYKA

INFORMATYKA. PLAN STUDIÓW NIESTACJONARNYCH INŻYNIERSKICH 1-go STOPNIA STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM 2018/19.

Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy. Dokumentacja specjalności. Informatyka w działalności biznesowej

WYKAZ PRZEDMIOTÓW I PLAN REALIZACJI

INFORMATYKA PLAN STUDIÓW NIESTACJONARNYCH. Podstawy programowania Systemy operacyjne

Kierunek i poziom studiów: matematyka, studia I stopnia, rok I. Sylabus modułu: Wstęp do matematyki (03-MO1S-12-WMat)

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Testowanie oprogramowania

Repetytorium z matematyki 3,0 1,0 3,0 3,0. Analiza matematyczna 1 4,0 2,0 4,0 2,0. Analiza matematyczna 2 6,0 2,0 6,0 2,0

Transkrypt:

1 Wykład cz. 2 dyżur: środa 9.00-10.00 czwartek 10.00-11.00 ul. Wieniawskiego 17/19, pok.10 e-mail: joanna.jozefowska@cs.put poznan.pl materiały do wykładów: http://www.cs.put.poznan.pl/jjozefowska/ hasło: w2005 Ćwiczenia cz. 2 dr inż. Grzegorz Waligóra 2 Zaliczenie przedmiotu Zaliczenie ćwiczeń dr Grzegorz Waligóra Sprawdzian 25 stycznia 2006 Zaliczenie ćwiczeń jest warunkiem przystąpienia do egzaminu Egzamin odbędzie się w sesji, zgodnie z harmonogramem 3 1

Zakres wykładów Pojęcie obliczalności Maszyna Turinga Modele obliczeń w logice Rachunek lambda Równoważność modeli obliczeń 4 Literatura Ben Ari M., Logika matematyczna w informatyce, WNT, Warszawa 2005. Błażewicz J., Złożoność obliczeniowa problemów kombinatorycznych, WNT, Warszawa 1988. Davis M., Czym jest obliczanie?, w: Matematyka współczesna - dwanaście esejów pod redakcją Lynna Arthura Steena, WNT, Warszawa 1983. Epstein R. L., Carnielli W. A., Computability, Wadsworth, Belmont 2000. Harel D., Rzecz o istocie informatyki, wyd. 2, WNT Warszawa 2000. Ławrow I. A., Maksimowa Ł. L., Zadania z teorii mnogości, logiki matematycznej i teorii algorytmów, Wydawnictwo Naukowe PWN, Warszawa 2004. Penrose R., Nowy umysł cesarza. O komputerach, umyśle i prawach fizyki, PWN, Warszawa 1996. 5 Literatura Ben Ari M., Logika matematyczna w informatyce, WNT, Warszawa 2005. Błażewicz J., Złożoność obliczeniowa problemów kombinatorycznych, WNT, Warszawa 1988. Davis M., Czym jest obliczanie?, w: Matematyka współczesna - dwanaście esejów pod redakcją Lynna Arthura Steena, WNT, Warszawa 1983. Epstein R. L., Carnielli W. A., Computability, Wadsworth, Belmont 2000. Harel D., Rzecz o istocie informatyki, wyd. 2, WNT Warszawa 2000. Ławrow I. A., Maksimowa Ł. L., Zadania z teorii mnogości, logiki matematycznej i teorii algorytmów, Wydawnictwo Naukowe PWN, Warszawa 2004. Penrose R., Nowy umysł cesarza. O komputerach, umyśle i prawach fizyki, PWN, Warszawa 1996. 6 2

Teoria informatyki i metainformatyka begin Czy to jest program? write(pi*5*5); end. 7 OLNHVVDP)RRG LQGLDQ)RRG PLOG)RRG OLNHVVDP)RRG FKLQHVH)RRG OLNHVVDP)RRG LWDOLDQ)RRG OLNHVVDPFKLSV LQGLDQFXUU\ LQGLDQGDKO LQGLDQWDQGRRUL LQGLDQNXUPD Teoria informatyki i metainformatyka Czy to jest program? PLOGGDKO PLOGWDQGRRUL PLOGNXUPD FKLQHVHFKRZBPHLQ FKLQHVHFKRSBVXH\ FKLQHVHVZHHWBDQGBVRXU Czy to samo można napisać w Pascalu? 8 OLNHVVDP)RRG LQGLDQ)RRG PLOG)RRG OLNHVVDP)RRG FKLQHVH)RRG OLNHVVDP)RRG LWDOLDQ)RRG OLNHVVDPFKLSV LQGLDQFXUU\ LQGLDQGDKO LQGLDQWDQGRRUL LQGLDQNXUPD Teoria informatyki i metainformatyka Czy to jest program? PLOGGDKO PLOGWDQGRRUL PLOGNXUPD FKLQHVHFKRZBPHLQ FKLQHVHFKRSBVXH\ FKLQHVHVZHHWBDQGBVRXU Czy to samo można napisać w Pascalu? 9 3

Start Algorytm S a j i 1 function s(j:integer); real; var i, S: integer; begin S:=a[j]; i:=0; while i <= j do begin S:=S*x; i:=i+1 end; s:=s end. Stop NIE i < j TAK S S*x i i + 1 czy program???? 10 Teoria informatyki i metainformatyka Modele obliczeń Maszyna Turinga Rachunek lambda Rachunek predykatów Funkcje rekurencyjne Algorytmy Języki programowania ADA LISP Pascal... COBOL C++ Fortran PROLOG 11 Teoria informatyki i metainformatyka Modele obliczeń Czy wszystko można obliczyć? Czego nie można obliczyć i dlaczego? Algorytmy Języki programowania Czy wszystkie języki mogą obliczyć to samo? Czy istnieje procedura, która pozwala wykazać, że program działa poprawnie? Czy dane zdanie jest zdaniem tego języka? Skąd się wzięły języki programowania? Dlaczego nie ma jednego uniwersalnego języka programowania? 12 4

Teoria informatyki i metainformatyka Filozofia Metainformatyka Ontologia Modele obliczeń To nie jest informatyka Informatyka Programowanie Obsługa programów Algorytmy Języki programowania Programy 13 Interdyscyplinarny charakter informatyki hardware = sprzęt Elektronika Układy VLSI Automatyka Automaty skończone Architektura komputerów Maszyna von Neumana ALGORYTM software = oprogramowanie Matematyka Teoria obliczeń Maszyna Turinga 14 Kierunki badań hardware = sprzęt software = oprogramowanie systemy wbudowane (embedded systems) sterowanie inteligentnymi obiektami automatyzacja złożonych procesów złożoność obliczeniowa algorytmów sztuczna inteligencja inżynieria oprogramowania 15 5

Obliczanie Profesor Nawrocki powiedział, że nie! Czy wszystko można obliczyć? 16 Wszystko zaczęło się od paradoksów... W pewnej wsi mieszka fryzjer, który goli wszystkich i tylko tych mieszkańców wsi, którzy nie golą się sami. Czy ten fryzjer się goli? 17 Obliczanie Czy wszystko można obliczyć? Co to jest obliczanie? Czy to, co intuicyjnie uznajemy za obliczalne można obliczyć za pomocą mechanicznej procedury? 18 6

Kluczem jest pojęcie algorytmu Jednoznaczny, dobrze (krok po kroku) określony przepis mechanicznego rozwiązania dowolnego konkretnego zadania z pewnej klasy zadań. W rozwiązaniu stosuje się skończoną liczbę reguł postępowania (czyli wykonywania kroków prowadzących do rozwiązania). ax 2 + bx + c = 0 = b2-4ac x = (-b ± )/2a 19 Przykłady algorytmów Obliczanie wielomianu Sprawdzanie, czy liczba jest automorficzna Znajdowanie podzbioru o danej sumie Wyznaczanie elementów ciągu Fibonacciego Obliczanie n! 20 zdefiniowany, aby człowiek mógł go skutecznie wykonać w skończonym czasie). 21 7

zdefiniowany, aby człowiek mógł go skutecznie wykonać w skończonym czasie). 22 zdefiniowany, aby maszyna mogła go skutecznie wykonać w skończonym czasie). 23 Maszyna Turinga elementarne kroki taśma 0 0 0 1 1 1 0 0 0 Odczytanie symbolu Zapisanie symbolu Przesunięcie głowicy Głowica odczytującozapisująca 24 8

zdefiniowany, aby maszyna mogła go skutecznie wykonać w skończonym czasie). 25 Maszyna Turinga Dane wejściowe 0 0 0 1 1 1 0 0 0 26 zdefiniowany, aby maszyna mogła go skutecznie wykonać w skończonym czasie). 27 9

Maszyna Turinga Dane wyjściowe 0 0 0 1 1 0 1 0 0 28 zdefiniowany, aby maszyna mogła go skutecznie wykonać w skończonym czasie). 29 Maszyna Turinga 0 0 0 1 1 1 0 0 0 Skończony alfabet symboli Skończona liczba stanów głowicy Funkcja przejścia dla każdej pary: (przeczytany symbol, stan głowicy) 30 10

Maszyna Turinga 0 0 0 1 1 1 0 0 0 Skończona liczba stanów głowicy, np. Q = {0, 1} Skończony alfabet symboli, np. A = {0, 1} Funkcja przejścia dla każdej pary: (przeczytany symbol, stan głowicy) określa (zapisany symbol, (nowy) stan głowicy, kierunek przesunięcia głowicy) δ: Q x A Q x A x {>, <} 31 zdefiniowany, aby maszyna mogła go skutecznie wykonać w skończonym czasie). 32 Przykład Turing Machine Simulator http://ironphoenix.org/tril/tm/ 33 11

Przykład WE WY 1,_ 1,_,> 1,1 1,1,> 1,- 1,-,> 1,= 2,_,< 2,1 3,=,< 2,- H,_,< 3,1 3,1,< 3,- 4,-,< 4,_ 4,_,< 4,1 1,_,> Q = {1, 2, 3, 4, H} A = {1, -, =, _ } > przesunięcie głowicy w prawo < przesunięcie głowicy w lewo 34 Pojęcie obliczalności Maszyna Turinga, rachunek predykatów, rachunek λ,... Model obliczeń Algorytm kroki, dane: we- i wyjściowe, dobrze określony, skończony, wykonywalny... Pascal, C++, FORTRAN, LISP, PROLOG Język programowania 35 12