aksjomat funk
Transkrypt
aksjomat funk
Wykład 10, str. 1 O teoriach — powtórka JĘZYK (składnia) interpretacja (semantyka) RZECZYWISTOŚĆ (dziedzina i operacje) Ale czasem jedną teorią opisuje się wiele różnych rzeczywistości; np. teoria grup stosuje się do wielu różnych grup. Wykład 10, str. 2 O teoriach — powtórka RZECZYWISTOŚĆ 1 i JĘZYK (składnia) r p. e t n 1 interp. 2 i nt erp . RZECZYWISTOŚĆ 2 3 RZECZYWISTOŚĆ 3 Zamiast „rzeczywistość i interpretacja” mówimy model. Wykład 10, str. 3 O teoriach — powtórka Teorie • rzędu 0 — rachunek zdań (propositional calculus) • rzędu 1 — rachunek kwantyfikatorów (predicate calculus) • ...... Teorie pierwszego rzędu: Składnia: • Fun — symbole funkcyjne, arność : Fun → N; • Rel — symbole relacyjne, arność : Rel → N; • Conn — spójniki; • Var — zmienne; • Term — termy (wyrażenia), zbudowane ze zmiennych i symboli funkcyjnych; • Form — formuły, zbudowane z termów, symboli relacyjnych i spójników. Wykład 10, str. 4 O teoriach — powtórka Interpretacja języka L w modelu A: • interpretacja symboli funkcyjnych: ϕ [[s]] : A × .{z . . × A} → A | arność(s) • interpretacja symboli relacyjnych: ϕ [[r]] : A × .{z . . × A} → {0, 1} | arność(r) • wartościowania: Val def = Var → A • interpretacja termów ϕ̄ : Term → (Val → A) • interpretacja formuł ϕ̄ : Form → (Val → {0, 1}) DEFINICJA: konsekwencja semantyczna — def M f1 , . . . , fn |= f ⇐⇒ dla dowolnej intepretacji ϕ i dowolnego wartościowania v ∈ Val zachodzi ϕ̄ [[f1 ]] v · . . . · ϕ̄ [[fn ]] v ¬ ϕ̄ [[f ]] v . Wykład 10, str. 5 O teoriach — powtórka Aksjomatyka teorii składa się z • aksjomatów — podstawowych formuł, które chcemy uważać za prawdziwe, oraz • reguł wywodu — zasad wyprowadzania twierdzeń, czyli dołączania nowych reguł prawdziwych. Aksjomaty teorii predykatów (schematy): A1 : p ⇒ (q ⇒ p) A2 : (p ⇒ (q ⇒ r)) ⇒ ((p ⇒ q) ⇒ (p ⇒ r)) A3 : ((p ⇒ false) ⇒ false) ⇒ p A4 : (∀x (p ⇒ q)) ⇒ (p ⇒ ∀x q) o ile x nie jest wolny w t A5 : (∀x f (x)) ⇒ f (t) dla dowolnego termu t Reguły wywodu teorii predykatów: (schematy): modus ponens p p⇒q q generalizacja p ∀x p Wykład 10, str. 6 Wnioskowania i twierdzenia DEFINICJA: wnioskowanie — M ze zbioru przesłanek F = {f1 , f2 , . . . , fn } to skończony ciąg formuł D = d1 , d2 , . . . , dk taki, że każde di jest • albo aksjomatem, • albo jedną z przesłanek fj (dla j ∈ F ), • albo daje się wyprowadzić przez regułę wywodu z poprzedzających formuł d1 , d2 , . . . , di−1 ; przy tym reguły generalizacji wolno stosować tylko do takich zmiennych, które nie są wolne w żadnej przesłance. Przykład: wywód — d1 : p ⇒ (p ⇒ p) d2 : p ⇒ ((p ⇒ p) ⇒ p) d : (p ⇒ ((p ⇒ p) ⇒ p)) ⇒ M3 ((p ⇒ (p ⇒ p)) ⇒ (p ⇒ p)) d4 : (p ⇒ (p ⇒ p)) ⇒ (p ⇒ p) d5 : p ⇒ p z A1 z A1 z A2 z (MP), d2 , d3 z (MP), d1 , d4 Wykład 10, str. 7 Wnioskowania i twierdzenia Przykład: wywód — d1 : ((p ⇒ false) ⇒ false) ⇒ p d2 : (((p ⇒ false) ⇒ false) ⇒ p) ⇒ (false ⇒ (((p ⇒ false) ⇒ false) ⇒ p)) d3 : false ⇒ (((p ⇒ false) ⇒ false) ⇒ p) d4 : (false ⇒ (((p ⇒ false) ⇒ false) ⇒ p)) ⇒ ((false ⇒ ((p ⇒ false) ⇒ false)) ⇒ (false ⇒ p)) Md5 : (false ⇒ ((p ⇒ false) ⇒ false)) ⇒ (false ⇒ p) d6 : false ⇒ ((p ⇒ false) ⇒ false) d7 : false ⇒ p d8 : (false ⇒ p) ⇒ (q ⇒ (false ⇒ p)) d9 : q ⇒ (false ⇒ p) d10 : (q ⇒ (false ⇒ p)) ⇒ ((q ⇒ false) ⇒ (q ⇒ p)) d11 : (q ⇒ false) ⇒ (q ⇒ p) z A3 z A1 z (MP), d1 , d2 z z z z z z z z A2 (MP), A1 (MP), A1 (MP), A2 (MP), d3 , d4 d6 , d5 d7 , d8 d9 , d10 Wykład 10, str. 8 Wnioskowania i twierdzenia Przykład: wywód — d1 : ((∀x ((p ⇒ false) ⇒ false)) ⇒ false) ⇒ false d2 : (((∀x ((p ⇒ false) ⇒ false)) ⇒ false) ⇒ false) ⇒ (∀x ((p ⇒ false) ⇒ false)) d3 : ∀x ((p ⇒ false) ⇒ false) Md4 : (∀x ((p ⇒ false) ⇒ false)) ⇒ ((p ⇒ false) ⇒ false) d5 : (p ⇒ false) ⇒ false d6 : ((p ⇒ false) ⇒ false) ⇒ p d7 : p d 8 : ∀x p Oznaczenia: def ¬p ⇐⇒ p ⇒ false def p ∨ q ⇐⇒ ¬p ⇒ q def p ∧ q ⇐⇒ ¬(¬p ∨ ¬q) def ∃x ⇐⇒ ¬∀x ¬p DEFINICJA: twierdzenie — napis postaci f1 , . . . , fn |− f oznaczający: istnieje wnioskowanie ze zbioru przesłanek {f1 , . . . , fn } zawierające f przesłanka (z sufitu) z z z z z z z A3 (MP), d1 , d2 A5 (MP), d3 , d4 A3 (MP), d5 , d6 (GEN), d7 Udowodniliśmy więc twierdzenia: |− p ⇒ p |− ¬q ⇒ (q ⇒ p) ¬(∃x (¬p)) |− ∀x p Wykład 10, str. 9 Teoria a rzeczywistość Teoria = język + aksjomaty i reguły wnioskowania. Fakt: (aksjomatyka jest „zdrowa”) M Każde twierdzenie (czyli: cokolwiek da się wywnioskować z podanych aksjomatów) jest prawdziwe w każdym modelu; to znaczy jeśli f1 , . . . , fn |− f to f1 , . . . , fn |= f Dowód(szkic): Trzeba pokazać, że • aksjomaty są tautologiami (zdaniami zawsze prawdziwymi), • reguły wywodu zastosowane do tautologii dają w wyniku tautologie. Dowód jest żmudny, ale niezbyt trudny. Wykład 10, str. 10 Teoria a rzeczywistość Fakt: (aksjomatyka jest „pełna”) M Każde stwierdzenie prawdziwe w każdym modelu, jest twierdzeniem (czyli: posiada dowód); to znaczy: jeśli f1 , . . . , fn |= f to f1 , . . . , fn |− f Dowód jest znacznie trudniejszy. „Zdrowość” jest minimalnym warunkiem, nakładanym na aksjomatyki każdej teorii. Jeśli aksjomatyka nie jest „zdrowa”, to pozwala wyprowadzać nieprawdziwe twierdzenia, więc jest bezwartościowa. „Pełność” aksjomatyki jest cechą pożądaną, ale nie niezbędną. Jeśli aksjomatyka nie jest „pełna” (ale jest „zdrowa”), to twierdzenia wyprowadzone w niej będą prawdziwe, ale będą istnieć prawdy niewyprowadzalne. Podana aksjomatyka rachunku predykatów jest „zdrowa” i „pełna”. Wykład 10, str. 11 Teoria a rzeczywistość Teoria = język + aksjomaty i reguły wnioskowania. • „Niesprzeczność” mówi o samej teorii: def teoria jest sprzeczna ⇐⇒ istnieje taka formuła f ∈ Form że i |− f i |− ¬f czyli da się w niej dowieść i zdanie i jego zaprzeczenie. • „Zdrowość” mówi o związku teorii z modelami: def teoria jest zdrowa ⇐⇒ |− f implikuje |= f czyli każde jej twierdzenie jest prawdziwe. Wykład 10, str. 12 Teoria a rzeczywistość Teoria = język + aksjomaty i reguły wnioskowania. • „Zupełność” mówi o samej teorii: def teoria jest zupełna ⇐⇒ dla każdej formuły f ∈ Form bez zmiennych wolnych albo |− f albo |− ¬f czyli da się dowieść albo zdanie albo jego zaprzeczenie. • „Pełność” mówi o związku teorii z modelami: def teoria jest pełna ⇐⇒ |= f implikuje |− f czyli cokolwiek jest prawdą, da się udowodnić. Wykład 10, str. 13 Teoria a rzeczywistość TWIERDZENIE: (Gödla) M Nie istnieje niesprzeczna zupełna aksjomatyzacja arytmetyki, czyli teoria, której modelem byłyby liczby naturalne N ze zwykłym dodawaniem i zwykłym mnożeniem. TWIERDZENIE: (odpowiednik informatyczny) M Nie istnieje superprogram, który dla dowolnego programu P i danych D potrafiłby • wczytać tekst programu P , • wczytać dane D, • zatrzymać się i podać poprawną odpowiedź na pytanie, czy P zatrzyma się na danych D. Wykład 10, str. 14 Negatywne wyniki w informatyce Nierozstrzygalność własności stopu: Nie da się napisać superprogramu, który widząc jakiś program i dane, zawsze prorokowałby prawidłowo, czy ten program na tych danych się zatrzyma, czy też będzie działał w nieskończoność. .. ........................... ..... ........... ........ .... ... . . .. ... .. . .. ... ... ... ......................... .. ... ... ... ................................................... .............................. .... ... ... ... ... .... ........ ......... . . . ...... ............... .......... ..... .. ..... .............. .............. ..................................... . . ! . . . . Ę . . ....................................................................... I . . . . . . . . . S . . . . ... I . . . . . . . . . . . . . .............. . . . . . . . . . L . . . T .... ... .... ..................................................................... . ... ZAPĘ . . . . . . . . .... .... .... ..... ........................... ..................... . .. ..... ... ... Wykład 10, str. 15 Negatywne wyniki w informatyce Nierozstrzygalność własności stopu: Nie da się napisać superprogramu, który widząc jakiś program i dane, zawsze prorokowałby prawidłowo, czy ten program na tych danych się zatrzyma, czy też będzie działał w nieskończoność. N P✲ M ✲ P✲ ✲ P✲ P S .. . ......... ................. ............. ................ ... ............................. . . ................................................. .... ... ......... ......... ... ... ... ... .. .. .. .. ... ... .. . .. . ... . . . . ... ..... ..... .. ..... ..... ......................................................................... .......................................... .......................................... .......................................... P zapętla się na P ✲ P zatrzymuje się na P ✛ jeśli P zapętla się na P , to N zatrzymuje się na P jeśli P zatrzymuje się na P , to N zapętla się na P jeśli N zapętla się na N , to N zatrzymuje się na N jeśli N zatrzymuje się na N , to N zapętla się na N SPRZECZNOŚĆ Wykład 10, str. 16 Negatywne wyniki w informatyce, c.d. Nierozstrzygalność własności stopu: Nie da się napisać superprogramu, który widząc jakiś program i dane zawsze prorokowałby prawidłowo, czy ten program na tych danych się zatrzyma, czy też będzie działał w nieskończoność. Nierozstrzygalność równoważności programów: Nie da się napisać superprogramu, który widząc jakieś dwa programy zawsze prorokowałby prawidłowo, czy te dwa programy zachowają się tak samo (dadzą te same wyniki lub oba się zapętlą) na każdych danych. Nierozstrzygalność poprawności programów: Nie da się napisać superprogramu, który widząc program i opis wymagań co do jego zachowania zawsze prorokowałby prawidłowo, czy zachowanie programu spełnia te wymagania. Niekonstruowalność poprawnych programów Niekonstruowalność optymalnych programów Niepoliczalność pewnych funkcji w lepszym czasie