Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia

Podobne dokumenty
O LICZBACH NIEOBLICZALNYCH I ICH ZWIĄZKACH Z INFORMATYKĄ

O ALGORYTMACH I MASZYNACH TURINGA

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

Cyfrowość i analogowość. Wstępny zarys tematyki metodologicznofilozoficznej

O ISTOTNYCH OGRANICZENIACH METODY

M T E O T D O ZI Z E E A LG L O G R O Y R TM

O REDUKCJI U-INFORMACJI

O RÓŻNYCH SPOSOBACH ROZUMIENIA ANALOGOWOŚCI W INFORMATYCE

OBLICZALNOŚĆ I NIEOBLICZALNOŚĆ

CZY INFORMATYKOM MUSI WYSTARCZYĆ NIESKOŃCZONOŚĆ POTENCJALNA?

CZYM SĄ OBLICZENIA NAT A URALNE?

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

prawda symbol WIEDZA DANE komunikat fałsz liczba INFORMACJA (nie tyko w informatyce) kod znak wiadomość ENTROPIA forma przekaz

JAKIEGO RODZAJU NAUKĄ JEST

REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

MODELOWANIE RZECZYWISTOŚCI

Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań

prawda symbol WIEDZA DANE komunikat fałsz liczba INFORMACJA kod (pojęcie interdyscyplinarne) znak NEGENTROPIA wiadomość forma przekaz

Systemy liczbowe. Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz

Podstawy Informatyki Maszyna Turinga

Kod IEEE754. IEEE754 (1985) - norma dotycząca zapisu binarnego liczb zmiennopozycyjnych (pojedynczej precyzji) Liczbę binarną o postaci

REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH

Wstęp do kognitywistyki. Wykład 3: Logiczny neuron. Rachunek sieci neuronowych

Algorytm. a programowanie -

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Technologie informacyjne - wykład 12 -

prawda symbol WIEDZA DANE komunikat fałsz liczba INFORMACJA kod (pojęcie interdyscyplinarne) znak wiadomość ENTROPIA forma przekaz

Sygnał a informacja. Nośnikiem informacji mogą być: liczby, słowa, dźwięki, obrazy, zapachy, prąd itp. czyli różnorakie sygnały.

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

Efektywność Procedur Obliczeniowych. wykład 5

Wykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Obliczenia inspirowane Naturą

Definicje. Algorytm to:

Metody numeryczne w przykładach

Teoria przetwarzania A/C i C/A.

Kodowanie liczb całkowitych w systemach komputerowych

XV FESTIWAL NAUKI 2011 WPROWADZENIE DO BIOCYBERNETYKI

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Ćwiczenie nr 1: Systemy liczbowe

Programowanie komputerów

KOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO

ŚWIATOPOGLĄD INFORMATYCZNY POJĘCIA I TEZY

Plan wynikowy z wymaganiami edukacyjnymi z matematyki w zakresie podstawowym dla klasy 1 zsz Katarzyna Szczygieł

Festiwal Myśli Abstrakcyjnej, Warszawa, Czy SZTUCZNA INTELIGENCJA potrzebuje FILOZOFII?

Techniki multimedialne

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Klasa 1 technikum. Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

Hierarchia Chomsky ego Maszyna Turinga

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

Wprowadzenie do złożoności obliczeniowej

Temat: Liczby definicje, oznaczenia, własności. A n n a R a j f u r a, M a t e m a t y k a s e m e s t r 1, W S Z i M w S o c h a c z e w i e 1

Opis efektów kształcenia dla modułu zajęć

Umysł Komputer Świat TEX output: :17 strona: 1

Informatyka. Michał Rad

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

Wstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

Maszyna Turinga języki

SCENARIUSZ LEKCJI. Autorzy scenariusza: Krzysztof Sauter (informatyka), Marzena Wierzchowska (matematyka)

PROBLEMY NIEROZSTRZYGALNE

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

LICZBY NIEOBLICZALNE A GRANICE KODOWANIA W INFORMATYCE 1

FFT i dyskretny splot. Aplikacje w DSP

Prawdopodobieństwo i statystyka

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

Kod U2 Opracował: Andrzej Nowak

Elementy Teorii Obliczeń

Podstawy metodologiczne symulacji

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Zapis liczb binarnych ze znakiem

Struktura danych. Sposób uporządkowania informacji w komputerze.

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łan Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

EGZAMIN MATURALNY W ROKU SZKOLNYM 2017/2018 INFORMATYKA

JAKIE IDEE WPŁYNĘŁY NAJSILNIEJ NA ROZWÓJ I EWOLUCJĘ INFORMATYKI?

Teoretyczne Podstawy Informatyki

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

Wstęp do informatyki- wykład 1 Systemy liczbowe

Zadanie 1. Suma silni (11 pkt)

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Z52: Algebra liniowa Zagadnienie: Zastosowania algebry liniowej Zadanie: Operatory różniczkowania, zagadnienie brzegowe.

Jednostki informacji. Bajt moŝna podzielić na dwie połówki 4-bitowe nazywane tetradami (ang. nibbles).

WYKAZ KIERUNKOWYCH EFEKTÓW KSZTAŁCENIA KIERUNEK: MATEMATYKA, SPS WIEDZA

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

Liczby zespolone. x + 2 = 0.

Matematyczne Podstawy Informatyki

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Adam Korzeniewski p Katedra Systemów Multimedialnych

Teoretyczne podstawy informatyki

Transkrypt:

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 o komunikacji KOMPUTER informatyka elektronika

Informacja, dane i liczby Informacja > Dane > Liczby Informacja to coś więcej niż dane, bo dane stanowią pewną tylko, to znaczy komputerowo dostępną, formę informacji. Dane to coś więcej niż liczby, bo jakkolwiek dane koduje się liczbowo, to są one dodatkowo związane pewnymi informatycznymi strukturami. Ale mimo wszystko: na poziomie najprostszego matematycznego opisu komputerowym danym odpowiadają jakieś liczby, a operacjom na danych jakieś obliczenia.

Co to znaczy obliczać (to compute)?

Co to znaczy obliczać (to compute)? wykonywać operacje na liczbach? (komputer = maszyna licząca) wyznaczać wartości pewnych funkcji? (program = funkcja) przetwarzać dane (kody) za pomocą określonych zestawów reguł? (dane > liczby, program > funkcja) realizować operacje zgodne z pewnym modelem obliczeń? (komputer (np.) uniwersalna maszyna Turinga) turinga)

A zatem: co to znaczy obliczać? - w sensie informatycznym - OBLICZAĆ = PRZETWARZAĆ DANE przy założeniu jednak, że w matematycznej teorii danym odpowiadają pewne liczby, a programom funkcje.

Model obliczeń cyfrowych Najbardziej powszechny (być może: jedyny możliwy) model obliczeń wyznacza pojęcie maszyny Turinga. Skończone realizacje programów dla komputerów cyfrowych są realnymi odpowiednikami obliczeń opisywanych w tym modelu. Jest to model obliczeń cyfrowych (dyskretnych) i deterministycznych.

Czym jest maszyna Turinga? Maszyna Turinga składa się z: (1) nieskończonej, podzielonej na odrębne komórki, taśmy; (2) głowicy do odczytu-zapisu danych; (3) rejestru stanów; (4) tablicy przejść między stanami. Maszyna działa na podstawie programu zawartego w tablicy (4).

Jak wygląda program maszyny Turinga? a b stany 0 (1,a,P) (0,b,L) symbole 1 (0,a,P) (1,b,L) rozkazy # (#,b,l) (#,c,p) c stan końcowy

Czym jest uniwersalna maszyna Turinga? UMT jest specjalną maszyną Turinga, której program ma za zadanie symulować działanie dowolnej, konkretnej MT. Wykazano, że UMT może wykonać dowolnie złożony program dla dowolnie zaawansowanej technicznie maszyny cyfrowej.

Istota cyfrowości Najbardziej ogólna zasada cyfrowego przetwarzania danych jest następująca: zarówno same dane, jak i schematy ich przetwarzania (programy), mają postać kodu symbolicznego, złożonego onego z rozróżnialnych, dyskretnych elementów; Ponadto: kody symboliczne/cyfrowe mają dyskretną (de facto: skończoną) interpretację liczbową (w postaci najbardziej oszczędnej są to kody zero-jedynkowe).

Inne modele (hiper)obliczeń Techniki wykraczające poza model Turinga (UMT) sytuują się w sferze tzw. hiperobliczeń, do których należą: obliczenia analogowe (ciągłe) obliczenia losowe (np. kwantowe) obliczenia infinitystyczne Mimo istnienia teoretycznych modeli hiperobliczeń, wciąż rozważa się pytania: a) o ich relację do modelu UMT, b) o ich fizyczną realizowalność.

Typy liczb a modele obliczeń Każdy model obliczeń określa dozwolony typ danych, któremu to typowi odpowiada z kolei pewien rodzaj liczb. Krótko: każdy model odwołuje się do pewnego typu liczb. obliczenia cyfrowe liczby naturalne (wielkości dyskretne) obliczenia analogowe liczby rzeczywiste (wielkości ciągłe) obliczenia kwantowe? liczby zespolone (q-bity, stany kwantowe)

Zaskakujący wynik Turinga Istnieją liczby, których nie można obliczyć. ( w modelu cyfrowym ) Istnieją problemy (ściśle zdefiniowane), których nie można rozwiązać. za. (w modelu cyfrowym )

Różne klasy liczb Na osi CZASU liczby obliczalne i nieobliczalne liczby naturalne liczby wymierne liczby niewymierne zero liczby ujemne liczby rzeczywiste liczby zespolone Na osiach LICZBOWYCH Im i liczby nieobliczalne? -1 0 3 1 2 4 Re

Liczby obliczalne i nieobliczalne Liczba obliczalna jest to taka liczba rzeczywista, dla której istnieje maszyna Turinga (inaczej: program dla maszyny cyfrowej) pozwalająca obliczyć ją z dowolną zadaną dokładnością. Liczba nieobliczalna nie ma powyższej własności: jest niewyznaczalna za pomocą maszyn Turinga. π = 4 4 3 + 4 5 4 7 ( 1) +... = 4 = 2n + 0 1 1 1 1 e = 1+ + + +... = 1! 2! 3! n= n 0 n 1 n! najszerzej znane obliczalne liczby niewymierne

Liczby nie(obliczalne) kilka określeń Liczby obliczalne (wg. Turinga) Liczby nieobliczalne (wg. Turinga) Istnieje klasyczny algorytm ich obliczania. Istnieje maszyna Turinga obliczająca je z dowolną zadaną dokładnością. Istnieje algorytm obliczania ich kolejnych cyfr. Nie istnieje klasyczny algorytm ich obliczania. Żadna maszyna Turinga nie potrafi obliczyć ich z dowolną zadaną dokładnością. Nie istnieje algorytm obliczania ich kolejnych cyfr.

Definiowanie liczb nieobliczalnych Niektóre liczby nieobliczalne można zdefiniować, nie podając jednak efektywnego schematu wyznaczania ich kolejnych cyfr. Poglądowy przykład: a) Tworzymy uporządkowaną listę maszyn Turinga MT i (z danymi wejściowymi na taśmach). b) Definiujemy liczbę zapisaną binarnie L = 0,b 1 b 2 b 3 b 4 przy czym b i = 1, gdy MT i kończy pracę b i = 0, gdy MT i działa w nieskończoność

Problemy nieobliczalne W turingowskim modelu obliczeń (cyfrowych) istnieją problemy nieobliczalne, czyli algorytmicznie nierozwiązywalne. Problemy te są: a) nieobliczalne zasadniczo gdy nie istnieje jeden uniwersalny algorytm rozwiązujący wszystkie przypadki szczególne danego problemu. b) nieobliczalne praktycznie gdy dla danego problemu nie istnieje algorytm o dostatecznie niskiej złożoności czasowej,