Elementy Teorii Obliczeń
|
|
- Krystian Pawlik
- 9 lat temu
- Przeglądów:
Transkrypt
1 Wykład 2 Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 10 stycznia 2009
2 Maszyna Turinga uwagi wstępne Maszyna Turinga (1936 r.) to jedno z najpiękniejszych i najbardziej intrygujacych odkryć 20 wieku. Odkrycie to stworzyło podstawy dla rozwoju informatyki teoretycznej. Maszyna Turinga jest prostym ale użytecznym modelem obliczeń (modelem komputerów) wystarczajaco ogólnym, aby reprezentować dowolny program komputerowy. Z powodu prostego opisu i działania maszyna Turinga poddaje się matematycznym rozważaniom, które doprowadziły do lepszego zrozumienia istoty obliczeń oraz komputerów. Jednym z najważniejszych odkryć teorii obliczeń jest fakt mówiacy, że istnieja problemy obliczeniowe, które nie moga zostać rozwiazane na żadnym komputerze, niezależnie od ilości dostępnej pamięci i czasu.
3 Maszyna Turinga komponenty Potencjalnie nieskończona taśma, na której umieszcza się dane wejściowe, wyniki pośrednie oraz wyniki końcowe. Taśma podzielona jest na komórki. W każdej z komórek znajduje się w danym momencie jeden z symboli skończonego alfabetu. Głowica czytajaco-pisz aca, która w danym momencie znajduje się nad jedna komórka taśmy zwana komórka aktywna. W każdym kroku głowica czyta symbol z aktywnej komórki i albo pozostawia go bez zmiany albo zapisuje w komórce aktywnej inny symbol. Każdy krok kończy się zmiana stanu oraz przesunięciem głowicy w lewo lub w prawo.
4 Maszyna Turinga komponenty Jednostka sterujaca w postaci diagramu przejść pomiędzy stanami. W zależności od bieżacego stanu oraz symbolu znajdujacego się w aktywnej komórce maszyna Turinga zapisuje na taśmie jednoznacznie określony symbol oraz przechodzi do jednoznacznie określonego stanu. Każda tranzycja wiaże dwa stany (nazwijmy je t oraz s) i jest etykietowana para symboli (nazwijmy je A oraz X). Oznacza to, że jeżeli maszyna Turinga znajduje się w stanie t a w aktywnej komórce znajduje się symbol A, to w wyniku wykonania tej tranzycji maszyna wpisuje do aktywnej komórki symbol X i przechodzi do stanu t. Każdy stan etykietowany jest jednym z pięciu oznaczeń: L (left), R (right), Y (yes), N (no) lub H (halt). Po wykonania przejścia do stanu t maszyna Turinga w zależności od etykiet tego stanu albo przesuwa głowicę (w lewo lub w prawo) albo zatrzymuje się.
5 Przykładowa maszyna Turinga Example (Zamiana liczby z postaci unarnej na binarna)
6 Działanie maszyny Turinga Maszyna Turinga rozpoczyna pracę w wyróżnionym stanie nazywanym stanem poczatkowym; głowica maszyny Turinga znajduje się nad wyróżniona komórka nazywana komórka poczatkow a. Dla każdej pary (stan, symbol) istnieje co najwyżej jedna tranzycja zwiazana z ta para; jeżeli takiej tranzycji nie ma, to maszyna Turinga nie zmienia stanu i nie zmienia symbolu w aktywnej komórce. Każdy krok działania maszyny Turinga przebiega jak następuje: czyta symbol z aktywnej komórki szuka tranzycji zwiazanej z bieżacym stanem i z przeczytanym symbolem zmienia symbol w bieżacej komórce zmienia stan zgodnie z tranzycja przesuwa głowicę w lewo lub w prawo lub zatrzymuje się
7 Działanie maszyny Turinga Kroki maszyny Turinga powtarzane sa dopóty, dopóki nie znajdzie się ona w stanie etykietowanym przez: H (zatrzymanie), Y (akceptacja) lub N (odrzucenie). Jest możliwe, że maszyna Turinga nigdy się nie zatrzyma. Założenie o potencjalnie nieskończonej taśmie oznacza, że maszyna Turinga jest modelem obliczeń a nie komputerów. Example (Symulator maszyny Turinga) Program turing.jar
8 Uniwersalność Na potrzeby teorii obliczeń możemy zdefiniować algorytm jako maszynę Turinga. W tym sensie maszyny Turinga odpowiadają programom komputerowym. Uniwersalna Maszyna Turinga (UTM) to specyficzna maszyna Turinga potrafiaca symulować działanie dowolnej innej maszyny Turinga (także samej siebie!). UTM pozwala odpowiadać na pytania dotyczace innych TM (także samej siebie!). Pierwsza UTM opisał Alan Turing. Istnienie UTM oznacza, że istnieje TM, która potrafi wykonać dowolny algorytm. Kluczowa idea polega na sposobie zakodowania dowolnej TM przy pomocy słowa nad skończonym alfabetem.
9 Kodowanie maszyny Turinga na przykładzie Kodowanie stanów: 0L, 1R, 2R, 3Y, 4R, 5N Kodowanie tranzycji: 01##, 201x, 400x, 120x, 13##, 141x, 25##, 45##
10 Kodowanie maszyny Turinga Aby otrzymać kodowanie konkretnej maszyny Turinga konkatenujemy słowa kodujace stany oraz słowa kodujace tranzycje w słowo nad alfabetem {0, 1, 2, 3, 4, 5, x,#}: 0L1R2R3Y 4R5N01##201x...45## i zapisujemy je na taśmie UMT. Po tym słowie umieszczamy słowo nad alfabetem {0, 1} będace słowem wejściowym dla zakodowanej TM oddzielajac je nowym symbolem. Do tego słowa można również dołaczyć stan poczatkowy oraz poczatkow a pozycję głowicy. UTM jako wejście otrzymuje kodowanie konkretnej TM oraz poczatkow a zawartość taśmy tej TM.
11 Uwagi na temat istniejacych UTM Pierwsza UTM opisał Alan Turing w swojej pracy z 1937 roku: On Computable Numbers, with an Application to the Entscheidungsproblem. W 1962 roku M. Minsky odkrył siedmiostanowa UTM nad czteroznakowym alfabetem. Z niej można otrzymać UTM nad dwuznakowym alfabetem, ale wymaga to 43 stanów. Inne UTM zostały odkryte w 1996 roku przez Rogozhina. Oznaczane sa parami liczb (m, n), gdzie m to liczba stanów a n to ilość znaków alfabetu. Sa to maszyny: (24, 2), (10, 3), (7, 4), (5, 5), (4, 6), (3, 10) oraz (2, 18). W 2002 roku Wolfram odkrył UTM typu (2, 5). Uważano, że cztery TM typu (2, 4) oraz czternaście maszyn typu (2, 3) (wszystkie odkryte przez Wolframa) sa prawdopodobnie UTM, ale potrafiono tego udowodnić.
12 Najmniejsza Uniwersalna Maszyna Turinga 24 października 2007 roku 20-letni brytyjczyk Alex Smith, student uniwersytetu w Birmingham, zgłosił dowód twierdzenia mówiacego, że zaproponowana przez Wolframa dwustanowa maszyna Turinga używajaca tylko trzech symboli jest uniwersalna maszyna Turinga. Za to odkrycie Alex Smith otrzymał wcześniej wyznaczona nagrodę w wysokości dolarów. Rozważana maszyna ma w numeracji Wolframa numer Istnieje ( ) (2 3) = 13 6 = dwustanowych maszyn Turinga używajacych trzech symboli (w tym symbolu pustego).
13 Najmniejsza Uniwersalna Maszyna Turinga
14 Hipoteza Churcha-Turinga W 1936 roku Alonzo Church i Alan Turing zaproponowali niezależnie od siebie różne modele obliczeń: Church wymyslił rachunek lambda a Turing abstrakcyjna maszynę nazwana później na jego cześć maszyna Turinga. Chociaż oba formalizmy bardzo się różnia Turing udowodnił wkrótce, że sa one równoważne. W 1943 roku Stephen Kleene sformułował następujacy wniosek zwany hipoteza (również teza) Churcha-Turinga: Każdy problem, który może być intuicyjnie uznany za obliczalny, jest rozwiazywalny przez maszynę Turinga. Sformułowanie intuicyjnie uznany za obliczalny uniemożliwia przeprowadzenie matematycznego dowodu tej hipotezy.
15 Rozszerzenia maszyn Turinga Poniższe rozszerzone modele maszyn Turinga maja taka sama moc obliczeniowa jak oryginalna maszyna Turinga: Maszyny Turinga z wieloma niezależnymi głowicami. Maszyny Turinga z wieloma taśmami. Maszyny Turinga z taśma dwuwymiarową. Niedeterministyczne maszyny Turinga. Probabilistyczne maszyny Turinga. Równoważność powyższych modeli stanowi argument przemawiajacy za prawdziwościa hipotezy Churcha-Turinga
16 Maszyny Turinga z ograniczeniami Poniższe ograniczone modele maszyn Turinga maja taka sama moc obliczeniowa jak oryginalna maszyna Turinga: Maszyny Turinga z jednostronnie ograniczona taśma. Maszyny Turinga nad alfabetem binarnym. Dwustanowe maszyny Turinga. Maszyny Turinga, które nigdy nie nadpisuja zapisanych symboli. Maszyny Turinga, dla których poprzedni stan może być zawsze jednoznacznie wyznaczony przez stan bieżacy oraz przez zawartość taśmy. Równoważność powyższych modeli stanowi kolejny argument przemawiajacy za prawdziwościa hipotezy Churcha-Turinga
17 Inne modele obliczeń równoważne z TM Systemy formalne Posta (Emil Post 1920) reguły zamiany słów zaprojektowane do dowodzenia twierdzeń ze zbioru aksjomatów. Funkcje ogólnie rekurencyjne (Kurt Gödel 1934). Funkcje częściowo rekurencyjne (Alonzo Church 1932, Stephen Kleene 1935). Algorytmy Markova (1960) reguły zamiany słów w ustalonej kolejności. Gramatyki nieograniczone (Noam Chomsky 1950) Logika klauzul Horna (Horn 1951) system dowodzenia twierdzeń stanowiacy podstawę dla języka programowania Prolog. Języki programowania: C, C++, Java, Python, Ruby, Perl, Lisp,...
MODELOWANIE RZECZYWISTOŚCI
MODELOWANIE RZECZYWISTOŚCI Daniel Wójcik Instytut Biologii Doświadczalnej PAN d.wojcik@nencki.gov.pl tel. 022 5892 424 http://www.neuroinf.pl/members/danek/swps/ Podręcznik Iwo Białynicki-Birula Iwona
Hierarchia Chomsky ego Maszyna Turinga
Hierarchia Chomsky ego Maszyna Turinga Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną gdzie: G = V skończony zbiór
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 10: Maszyny Turinga Sławomir Lasota Uniwersytet Warszawski 29 kwietnia 2015 Plan Maszyny Turinga (Niedeterministyczna) maszyna Turinga M = (A, Q, q 0, F, T, B, δ) A
Obliczenia inspirowane Naturą
Obliczenia inspirowane Naturą Wykład 01 Modele obliczeń Jarosław Miszczak IITiS PAN Gliwice 05/10/2016 1 / 33 1 2 3 4 5 6 2 / 33 Co to znaczy obliczać? Co to znaczy obliczać? Deterministyczna maszyna Turinga
Maszyna Turinga języki
Maszyna Turinga języki Teoria automatów i języków formalnych Dr inż. Janusz Majewski Katedra Informatyki Maszyna Turinga (1) b b b A B C B D A B C b b Q Zależnie od symbolu obserwowanego przez głowicę
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Automat ze stosem Automat ze stosem to szóstka
MASZYNA TURINGA UPRASZCZANIE DANYCH
MASZYNA TURINGA Maszyna Turinga jest prostym urządzeniem algorytmicznym, uderzająco prymitywnym w porównaniu z dzisiejszymi komputerami i językami programowania, a jednak na tyle silnym, że pozwala na
Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu
Problem Hilberta: 9 Czy istnieje ogólna mechaniczna procedura, która w zasadzie pozwoliłaby nam po kolei rozwiązać wszystkie matematyczne problemy (należące do odpowiednio zdefiniowanej klasy)? 2 Przykłady
Struktura danych. Sposób uporządkowania informacji w komputerze.
Struktura danych Sposób uporządkowania informacji w komputerze. Algorytm Skończony, uporządkowany ciąg jasno zdefiniowanych czynności, koniecznych do wykonania pewnego zadania. Al-Khwarizmi perski matematyk
Języki formalne i automaty Ćwiczenia 9
Języki formalne i automaty Ćwiczenia 9 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Maszyna Mealy'ego... 2 Maszyna Moore'a... 2 Automat ze stosem... 3 Konwersja gramatyki bezkontekstowej
PROBLEMY NIEROZSTRZYGALNE
PROBLEMY NIEROZSTRZYGALNE Zestaw 1: T Przykład - problem domina T Czy podanym zestawem kafelków można pokryć dowolny płaski obszar zachowując odpowiedniość kolorów na styku kafelków? (dysponujemy nieograniczoną
O ALGORYTMACH I MASZYNACH TURINGA
O ALGORYTMACH I MASZYNACH TURINGA ALGORYTM (objaśnienie ogólne) Algorytm Pojęcie o rodowodzie matematycznym, oznaczające współcześnie precyzyjny schemat mechanicznej lub maszynowej realizacji zadań określonego
Turing i jego maszyny
Turing Magdalena Lewandowska Politechnika Śląska, wydział MS, semestr VI 20 kwietnia 2016 1 Kim był Alan Turing? Biografia 2 3 Mrówka Langtona Bomba Turinga 4 Biografia Kim był Alan Turing? Biografia Alan
Alan M. TURING. Matematyk u progu współczesnej informatyki
Alan M. TURING n=0 1 n! Matematyk u progu współczesnej informatyki Wykład 5. Alan Turing u progu współczesnej informatyki O co pytał Alan TURING? Czym jest algorytm? Czy wszystkie problemy da się rozwiązać
Maszyna Turinga, ang. Turing Machine (TM)
Maszyna Turinga, ang. Turing Machine (TM) Alan Turing wybitny angielski matematyk, logik i kryptolog, jeden z najważniejszych twórców informatyki teoretycznej, któremu zawdzięczamy pojęcie maszyny Turinga
Obliczanie. dr hab. inż. Joanna Józefowska, prof. PP 1
Obliczanie 1 Obliczanie Co to jest obliczanie? Czy wszystko można obliczyć? Czy to, co intuicyjnie uznajemy za obliczalne można obliczyć za pomocą mechanicznej procedury? 2 Czym jest obliczanie? Dawid
Efektywność Procedur Obliczeniowych. wykład 5
Efektywność Procedur Obliczeniowych wykład 5 Modele procesu obliczeń (8) Jedno-, wielotaśmowa MT oraz maszyna RAM są równoważne w przypadku, jeśli dany problem jest rozwiązywany przez jeden model w czasie
Podstawy Informatyki Maszyna Turinga
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Czym jest Programowanie maszyny Turinga Teza Churcha-Turinga 2 3 4 Czym jest Programowanie maszyny Turinga Teza Churcha-Turinga,
Maszyna Turinga (Algorytmy Część III)
Maszyna Turinga (Algorytmy Część III) wer. 9 z drobnymi modyfikacjami! Wojciech Myszka 2018-12-18 08:22:34 +0100 Upraszczanie danych Komputery są coraz szybsze i sprawniejsze. Na potrzeby rozważań naukowych
Matematyczna wieża Babel. 4. Ograniczone maszyny Turinga o językach kontekstowych materiały do ćwiczeń
Matematyczna wieża Babel. 4. Ograniczone maszyny Turinga o językach kontekstowych materiały do ćwiczeń Projekt Matematyka dla ciekawych świata spisał: Michał Korch 4 kwietnia 2019 1 Dodajmy kontekst! Rozważaliśmy
Obliczenia inspirowane Naturą
Obliczenia inspirowane Naturą Wykład 01 Od maszyn Turinga do automatów komórkowych Jarosław Miszczak IITiS PAN Gliwice 03/03/2016 1 / 16 1 2 3 Krótka historia Znaczenie 2 / 16 Czego dowiedzieliśmy się
Teoretyczne podstawy informatyki
n r fi i= 1 n r fi i= 1 r n ( x) = f ( x) + K+ f ( x) Def r 1 r n ( x) = f ( x) K f ( x) Def r 1 1 Wykład cz. 2 dyżur: poniedziałek 9.30-10.30 p. 436 środa 13.30-14.30 p. 436 e-mail: joanna.jozefowska@cs.put
Przykład: Σ = {0, 1} Σ - zbiór wszystkich skończonych ciagów binarnych. L 1 = {0, 00, 000,...,1, 11, 111,... } L 2 = {01, 1010, 001, 11}
Języki Ustalmy pewien skończony zbiór symboli Σ zwany alfabetem. Zbiór Σ zawiera wszystkie skończone ciagi symboli z Σ. Podzbiór L Σ nazywamy językiem a x L nazywamy słowem. Specjalne słowo puste oznaczamy
Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia
Informacja w perspektywie obliczeniowej Informacje, liczby i obliczenia Cztery punkty odniesienia (dla pojęcia informacji) ŚWIAT ontologia fizyka UMYSŁ psychologia epistemologia JĘZYK lingwistyka nauki
Złożoność obliczeniowa. wykład 1
Złożoność obliczeniowa wykład 1 Dwa wykłady: wtorek / środa różnice niewielkie Sprawy organizacyjne wtorek: trochę szybciej, parę dodatkowych rzeczy dedykowana grupa ćw. M. Pilipczuka - ale śmiało mogą
Teoretyczne podstawy informatyki
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:
Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott
Struktury danych i złożoność obliczeniowa Wykład 5 Prof. dr hab. inż. Jan Magott DMT rozwiązuje problem decyzyjny π przy kodowaniu e w co najwyżej wielomianowym czasie, jeśli dla wszystkich łańcuchów wejściowych
Maszyny Turinga. Jerzy Pogonowski. Funkcje rekurencyjne. Zakład Logiki Stosowanej UAM
Maszyny Turinga Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl Funkcje rekurencyjne Jerzy Pogonowski (MEG) Maszyny Turinga Funkcje rekurencyjne 1 / 29 Wprowadzenie
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 11: Obliczalność i nieobliczalność Sławomir Lasota Uniwersytet Warszawski 6 maja 2015 Plan 1 Problemy częściowo rozstrzygalne 2 Problemy rozstrzygalne 3 Funkcje (częściowo)
Automat ze stosem. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki
Automat ze stosem Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Automat ze stosem (1) dno stosu Stos wierzchołek stosu Wejście # B B A B A B A B a b b a b a b $ q i Automat ze
Języki formalne i automaty Ćwiczenia 7
Języki formalne i automaty Ćwiczenia 7 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Automaty... 2 Cechy automatów... 4 Łączenie automatów... 4 Konwersja automatu do wyrażenia
KONKURS MATEMATYCZNY KOMA 2018
ELIMINACJE SZKOLNE RACHUNEK LAMBDA NOTATKI Z WYKŁADU - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Złożoność obliczeniowa zadania, zestaw 2
Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze
iks plus trzy dzielone na dwa iks razy iks plus pięć
ELIMINACJE SZKOLNE RACHUNEK LAMBDA NOTATKI Z WYKŁADU - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Informatyka. Michał Rad
Informatyka Michał Rad 13.10.2016 Co i po co będziemy robić Plan wykładów: Wstęp, historia Systemy liczbowe Co to jest system operacyjny i po co to jest Sprawy związane z tworzeniem i własnością oprogramowania
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 12: Gramatyki i inne modele równoważne maszynom Turinga. Wstęp do złożoności obliczeniowej Sławomir Lasota Uniwersytet Warszawski 20 maja 2015 Plan 1 Gramatyki 2 Języki
Dowód pierwszego twierdzenia Gödela o. Kołmogorowa
Dowód pierwszego twierdzenia Gödela o niezupełności arytmetyki oparty o złożoność Kołmogorowa Grzegorz Gutowski SMP II rok opiekun: dr inż. Jerzy Martyna II UJ 1 1 Wstęp Pierwsze twierdzenie o niezupełności
Algorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Logika i teoria mnogości Wykład 14
Teoria rekursji Teoria rekursji to dział logiki matematycznej zapoczątkowany w latach trzydziestych XX w. Inicjatorzy tej dziedziny to: Alan Turing i Stephen Kleene. Teoria rekursji bada obiekty (np. funkcje,
Teoria obliczeń czyli czego komputery zrobić nie mogą
Teoria obliczeń czyli czego komputery zrobić nie mogą Marek Zaionc Uniwersytet Jagielloński Materiały do wykładu: P. Odifreddi, Classical Recursion Theory, North Holland 1989. J.H. Hopcroft, J.D. Ullman
KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204
Opracował: prof. dr hab. inż. Jan Kazimierczak KATEDA INFOMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 204 Temat: Hardware'owa implementacja automatu skończonego pełniącego
Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++
Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu
InŜynieria oprogramowania. Język UML
InŜynieria oprogramowania Język UML 1 Jak podaje Słownik języka polskiego PWN, paradygmat to «przyjęty sposób widzenia rzeczywistości w danej dziedzinie, doktrynie itp.» lub «zespół form fleksyjnych (deklinacyjnych
2. Wymagania wstępne w zakresie wiedzy, umiejętności oraz kompetencji społecznych (jeśli obowiązują):
OPISU MODUŁU KSZTAŁCENIA (SYLABUS) I. Informacje ogólne 1) Nazwa modułu : MATEMATYCZNE PODSTAWY KOGNITYWISTYKI 2) Kod modułu : 08-KODL-MPK 3) Rodzaj modułu : OBOWIĄZKOWY 4) Kierunek studiów: KOGNITYWISTYKA
Odmiany maszyny Turinga. dr hab. inż. Joanna Józefowska, prof. PP 1
Odmiany maszyny Turinga 1 Uniwersalna maszyna Turinga Uniwersalna maszyna U nad alfabetem A k jest to maszyna definiująca funkcje: f U, n+1 = {((w(i 1, I 2,..., I n )),y) w - opis maszyny T za pomocą słowa,
O ISTOTNYCH OGRANICZENIACH METODY
O ISTOTNYCH OGRANICZENIACH METODY ALGORYTMICZNEJ Dwa pojęcia algorytmu (w informatyce) W sensie wąskim Algorytmem nazywa się każdy ogólny schemat procedury możliwej do wykonania przez uniwersalną maszynę
Wprowadzenie do maszyny Turinga
Wprowadzenie do maszyny Turinga Deterministyczna Maszyna Turinga (DTM) jest pewną klasą abstrakcyjnych modeli obliczeń. W tej instrukcji omówimy konkretną maszynę Turinga, którą będziemy zajmować się podczas
Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott
Struktury danych i złozoność obliczeniowa Prof. dr hab. inż. Jan Magott Formy zajęć: Wykład 1 godz., Ćwiczenia 1 godz., Projekt 2 godz.. Adres strony z materiałami do wykładu: http://www.zio.iiar.pwr.wroc.pl/sdizo.html
JAKIEGO RODZAJU NAUKĄ JEST
JAKIEGO RODZAJU NAUKĄ JEST INFORMATYKA? Computer Science czy Informatyka? Computer Science czy Informatyka? RACZEJ COMPUTER SCIENCE bo: dziedzina ta zaistniała na dobre wraz z wynalezieniem komputerów
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Gramatyki bezkontekstowe I Gramatyką bezkontekstową
M T E O T D O ZI Z E E A LG L O G R O Y R TM
O ALGORYTMACH I METODZIE ALGORYTMICZNEJ Czym jest algorytm? Czym jest algorytm? przepis schemat zestaw reguł [ ] program ALGORYTM (objaśnienie ogólne) Algorytm Pojęcie o rodowodzie matematycznym, oznaczające
Struktury danych i złożoność obliczeniowa Wykład 6. Prof. dr hab. inż. Jan Magott
Struktury danych i złożoność obliczeniowa Wykład 6. Prof. dr hab. inż. Jan Magott Problemy łatwe i trudne Problemy łatwe to problemy rozwiązywalne w czasie wielomianowym. Problemy trudne to takie, których
Imię, nazwisko, nr indeksu
Imię, nazwisko, nr indeksu (kod) (9 punktów) Wybierz 9 z poniższych pytań i wybierz odpowiedź tak/nie (bez uzasadnienia). Za prawidłowe odpowiedzi dajemy +1 punkt, za złe -1 punkt. Punkty policzymy za
Logika dla socjologów Część 3: Elementy teorii zbiorów i relacji
Logika dla socjologów Część 3: Elementy teorii zbiorów i relacji Rafał Gruszczyński Katedra Logiki Uniwersytet Mikołaja Kopernika 2011/2012 Spis treści 1 Zbiory 2 Pary uporządkowane 3 Relacje Zbiory dystrybutywne
Języki formalne i automaty Ćwiczenia 4
Języki formalne i automaty Ćwiczenia 4 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Sposób tworzenia deterministycznego automatu skończonego... 4 Intuicyjne rozumienie konstrukcji
Hierarchia Chomsky ego
Hierarchia Chomsky ego Gramatyki nieograniczone Def. Gramatyką nieograniczoną (albo typu 0) nazywamy uporządkowaną czwórkę G= gdzie: % Σ - skończony alfabet symboli końcowych (alfabet, nad którym
Programowanie komputerów
Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych
Dialog z przyroda musi byc prowadzony w jezyku matematyki, w przeciwnym razie przyroda nie odpowiada na nasze pytania.
Wydział Fizyki Uniwersytetu Warszawskiego a. Tw. Gödla kontra Matrix b. Moim zdaniem Rys. źródło: Internet W jaki sposób policzyć ilość operacji logicznych w mózgu? Mózg a komputer "When will computer
Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.
Plan Procedura decyzyjna Reguły α i β - algorytm Plan Procedura decyzyjna Reguły α i β - algorytm Logika obliczeniowa Instytut Informatyki 1 Procedura decyzyjna Logiczna konsekwencja Teoria aksjomatyzowalna
Modele Obliczeń. Wykład 1 - Wprowadzenie. Marcin Szczuka. Instytut Matematyki, Uniwersytet Warszawski
Modele Obliczeń Wykład 1 - Wprowadzenie Marcin Szczuka Instytut Matematyki, Uniwersytet Warszawski Wykład fakultatywny w semestrze zimowym 2014/2015 Marcin Szczuka (MIMUW) Modele Obliczeń 2014/2015 1 /
Podstawy Informatyki dla Nauczyciela
Podstawy Informatyki dla Nauczyciela Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 2 Bożena Woźna-Szcześniak (AJD) Podstawy Informatyki dla Nauczyciela Wykład 2 1 / 1 Informacja
Jaki język zrozumie automat?
Jaki język zrozumie automat? Wojciech Dzik Instytut Matematyki Uniwersytet Śląski Katowice wojciech.dzik@us.edu.pl 7. Forum Matematyków Polskich, 12-17 września 2016, Olsztyn Prosty Automat do kawy Przemawiamy
LOGIKA Klasyczny Rachunek Zdań
LOGIKA Klasyczny Rachunek Zdań Robert Trypuz trypuz@kul.pl 5 listopada 2013 Robert Trypuz (trypuz@kul.pl) Klasyczny Rachunek Zdań 5 listopada 2013 1 / 24 PLAN WYKŁADU 1 Alfabet i formuła KRZ 2 Zrozumieć
ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW
ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW NIEDETERMINISTYCZNE MASZYNY TURINGA Bartosz Zieliński Katedra Fizyki Teoretycznej i Informatyki Zima 2011-2012 NIEDETERMINISTYCZNE MASZYNY TURINGA DEFINICJA: NIEDETERMINISTYCZNA
Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych
Opracował: dr inż. Zbigniew Buchalski KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów
Definicje. Algorytm to:
Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi
Problemy studentów na I roku
Poczatek studiów Problemy studentów na I roku Jacek Cichoń Wydział Podstawowych Problemów Techniki Politechniki Wrocławskiej VIII Konferencja Regionalna: 5 grudnia 2011 Poczatek studiów Program I roku
O LICZBACH NIEOBLICZALNYCH I ICH ZWIĄZKACH Z INFORMATYKĄ
O LICZBACH NIEOBLICZALNYCH I ICH ZWIĄZKACH Z INFORMATYKĄ Jakie obiekty matematyczne nazywa się nieobliczalnymi? Jakie obiekty matematyczne nazywa się nieobliczalnymi? Najczęściej: a) liczby b) funkcje
Uwaga 1. Zbiory skończone są równoliczne wtedy i tylko wtedy, gdy mają tyle samo elementów.
Logika i teoria mnogości Wykład 11 i 12 1 Moce zbiorów Równoliczność zbiorów Def. 1. Zbiory X i Y są równoliczne (X ~ Y), jeśli istnieje bijekcja f : X Y. O funkcji f mówimy wtedy, że ustala równoliczność
JAO - Wprowadzenie do Gramatyk bezkontekstowych
JAO - Wprowadzenie do Gramatyk bezkontekstowych Definicja gramatyki bezkontekstowej Podstawowymi narzędziami abstrakcyjnymi do opisu języków formalnych są gramatyki i automaty. Gramatyka bezkontekstowa
2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego
2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną G = gdzie: N zbiór symboli nieterminalnych, T zbiór symboli terminalnych, P zbiór
Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).
Wprowadzenie do inżynierii przetwarzania informacji. Ćwiczenie 1. Systemy liczbowe Cel dydaktyczny: Poznanie zasad reprezentacji liczb w systemach pozycyjnych o różnych podstawach. Kodowanie liczb dziesiętnych
Zadanie 1. (6 punktów) Słowo w nazwiemy anagramem słowa v jeśli w można otrzymać z v poprzez zamianę kolejności liter. Niech
Zadanie 1. (6 punktów) Słowo w nazwiemy anagramem słowa v jeśli w można otrzymać z v poprzez zamianę kolejności liter. Niech anagram(l) = {w : w jest anagaramem v dla pewnego v L}. (a) Czy jeśli L jest
Poprawność semantyczna
Poprawność składniowa Poprawność semantyczna Poprawność algorytmu Wypisywanie zdań z języka poprawnych składniowo Poprawne wartościowanie zdań języka, np. w języku programowania skutki wystąpienia wyróżnionych
ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW
ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW MASZYNY O DOSTEPIE SWOBODNYM (RAM) Bartosz Zieliński Katedra Fizyki Teoretycznej i Informatyki Zima 2011-2012 INSTRUKCJE MASZYNY RAM Instrukcja Argument Znaczenie READ
1 Automaty niedeterministyczne
Szymon Toruńczyk 1 Automaty niedeterministyczne Automat niedeterministyczny A jest wyznaczony przez następujące składniki: Alfabet skończony A Zbiór stanów Q Zbiór stanów początkowych Q I Zbiór stanów
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Informacje podstawowe 1. Konsultacje: pokój
Teoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 6a: Model danych oparty na zbiorach http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2010/tpi-2010 Prof. dr hab. Elżbieta Richter-Wąs 1 Model danych oparty na zbiorach
Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski
Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do
Wstęp do Informatyki
Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 4 1 / 1 DZIELENIE LICZB BINARNYCH Dzielenie
Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak
Indukcja Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Charakteryzacja zbioru liczb naturalnych Arytmetyka liczb naturalnych Jedną z najważniejszych teorii matematycznych jest arytmetyka
Informatyczna Wieża Babel, czyli o różnych językach programowania. Informatyczna Wieża Babel, czyli o różnych językach programowania
Informatyczna Wieża Babel, czyli o różnych językach programowania Informatyczna Wieża Babel, czyli o różnych językach programowania Wstęp Aplikacje i programy, jakich dziś używamy, ukryte dla nas pod postacią
PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk PROLOG www.agh.edu.pl Pewnego dnia przyszedł na świat komputer Komputery
Tajna wiadomość. Scenariusz lekcji
1 scenariusz 1 CELE OGÓLNE poznanie metod szyfrowania wiadomości zrozumienie algorytmu szyfru Cezara Tajna wiadomość Scenariusz lekcji CELE SZCZEGÓŁOWE Uczeń: Zapamiętanie wiadomości (A): wymienia podstawowe
Wyrażenie nawiasowe. Wyrażenie puste jest poprawnym wyrażeniem nawiasowym.
Wyrażenie nawiasowe Wyrażeniem nawiasowym nazywamy dowolny skończony ciąg nawiasów. Każdemu nawiasowi otwierającemu odpowiada dokładnie jeden nawias zamykający. Poprawne wyrażenie nawiasowe definiujemy
Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika
Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Napisanie programu komputerowego: Zasada rozwiązania zadania Stworzenie sekwencji kroków algorytmu Przykłady algorytmów z życia codziennego (2/1 6)
Def. Kod jednoznacznie definiowalny Def. Kod przedrostkowy Def. Kod optymalny. Przykłady kodów. Kody optymalne
Załóżmy, że mamy źródło S, które generuje symbole ze zbioru S={x, x 2,..., x N } z prawdopodobieństwem P={p, p 2,..., p N }, symbolom tym odpowiadają kody P={c, c 2,..., c N }. fektywność danego sposobu
O rekurencji i nie tylko
O rekurencji i nie tylko dr Krzysztof Bryś Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska 10 grudnia 2011 Intuicyjnie: rekurencja sprowadzenie rozwiązania danego problemu do rozwiązania
Abstrakcyjny model maszyny przetwarzającej dane To pomysł jak zapisać komputer jako działające urządzenie i tu pojawia się pomysł na maszynę Turinga.
ARCHITEKTURA I DZIAŁANIE KOMPUTERA Abstrakcyjny model maszyny przetwarzającej dane To pomysł jak zapisać komputer jako działające urządzenie i tu pojawia się pomysł na maszynę Turinga. Maszyna Turinga
Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Języki formalne i automaty Ćwiczenia 1
Języki formalne i automaty Ćwiczenia Autor: Marcin Orchel Spis treści Spis treści... Wstęp teoretyczny... 2 Wprowadzenie do teorii języków formalnych... 2 Gramatyki... 5 Rodzaje gramatyk... 7 Zadania...
Materiały: kartki papieru (5 x 5 kolorów), piłeczki pingpongowe (5 x 5 kolorów), worek (nieprzeźroczysty).
Pudełkowy komputer Materiały: kartki papieru (5 x 5 kolorów), piłeczki pingpongowe (5 x 5 kolorów), worek (nieprzeźroczysty). Budowa komputera: każdy uczeń składa proste pudełko metodą orgiami Zobacz:
Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język
Techniki multimedialne
Techniki multimedialne Digitalizacja podstawą rozwoju systemów multimedialnych. Digitalizacja czyli obróbka cyfrowa oznacza przetwarzanie wszystkich typów informacji - słów, dźwięków, ilustracji, wideo
Przetwarzanie i transmisja danych multimedialnych. Wykład 5 Kodowanie słownikowe. Przemysław Sękalski.
Przetwarzanie i transmisja danych multimedialnych Wykład 5 Kodowanie słownikowe Przemysław Sękalski sekalski@dmcs.pl Politechnika Łódzka Katedra Mikroelektroniki i Technik Informatycznych DMCS Przemysław
Algorytmy ewolucyjne NAZEWNICTWO
Algorytmy ewolucyjne http://zajecia.jakubw.pl/nai NAZEWNICTWO Algorytmy ewolucyjne nazwa ogólna, obejmująca metody szczegółowe, jak np.: algorytmy genetyczne programowanie genetyczne strategie ewolucyjne
Równoliczność zbiorów
Logika i Teoria Mnogości Wykład 11 12 Teoria mocy 1 Równoliczność zbiorów Def. 1. Zbiory X i Y nazywamy równolicznymi, jeśli istnieje bijekcja f : X Y. O funkcji f mówimy wtedy,że ustala równoliczność
Automaty Büchi ego i równoważne modele obliczeń
Politechnika Krakowska im. Tadeusza Kościuszki Wydział Fizyki, Matematyki i Informatyki Kierunek Matematyka Paulina Barbara Rozwód Automaty Büchi ego i równoważne modele obliczeń praca magisterska studia
Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9,
1 Kody Tunstalla Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9, 14.04.2005 Inne podejście: słowa kodowe mają ustaloną długość, lecz mogą kodować ciągi liter z alfabetu wejściowego o różnej
O badaniach nad SZTUCZNĄ INTELIGENCJĄ
O badaniach nad SZTUCZNĄ INTELIGENCJĄ SZTUCZNA INTELIGENCJA dwa podstawowe znaczenia Co nazywamy sztuczną inteligencją? zaawansowane systemy informatyczne (np. uczące się), pewną dyscyplinę badawczą (dział