De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

REKENEN, REDENEREN, COMPLEXITEIT

Verwante presentaties


Presentatie over: "REKENEN, REDENEREN, COMPLEXITEIT"— Transcript van de presentatie:

1 REKENEN, REDENEREN, COMPLEXITEIT
UvA open college, 22 october Hoe Wiskunde Werkt Johan van Benthem Institute for Logic, Language and Computation ILLC

2 Rekenen en Berekenbaarheid
Wiskundige analyse van 'berekening' rond 1930 met Turing machines Spectaculaire toepassing negatief: sommige problemen niet berekenbaar, zoals het Stopprobleem voor programma's Wiskunde van wél berekenbare problemen: complexiteitstheorie, sinds ongeveer 1970, fijnstructuur van nodige rekentijd en -ruimte. Vandaag: toepassen op logica en redeneren.

3 Redeneren is rekenen Rekenen is redeneren
Logische machines, sinds Middeleeuwen Leibniz, Boole: logica als rekenen met taal, bijv. algebra van proposities Gödel: rekenen op taal gecodeerd als getallen, net als in moderne computers Rekenen is redeneren Rekenprocessen ook bewijsprocessen, 'equationele logica’, 'logisch programmeren'

4 Propositielogica, waarheidstabellen, geldigheid
A ¬A A&B A Ú B A B AÚ B ¬A B !

5 Consistentie Geldigheid van een gevolgtrekking:
elke valuatie die de premissen waar maakt, maakt ook de conclusie waar. Propositie  consistent: er is een valuatie die  waar maakt. C volgt uit P  P¬C is niet consistent. Ook met waarheidstabel uit te rekenen. (MÚ A) ® J, ¬M ® A, A ® ¬J (¬(MÚ A) Ú J) & (MÚ A) & (¬AÚ ¬J) 8 lijnen: alleen waarde 1 voor M 1 A 0 J 1

6 Kwantorlogica, modelcontrole
Gegeven eindige structuur M, formule  : Is  waar in M? Ook dit is systematisch na te rekenen: Bijv. voldoet graaf aan "x $y Rxy ? Heeft een groep een 'beroemdheid'? (iedereen kent hem, kent zelf niemand; zie details het huiswerk van deze week) Model checking algoritmen in computers

7 Kwantorlogica: geldigheid en consistentie
Moeilijker te bepalen, want geen eindige tabel. Twee soorten oneindigheid spelen een rol: Oneindig veel eindige structuren, Oneindig grote structuren. Bijv. gegeven is Lineaire Orde: tussen elke twee punten loopt een pijl. Volgt conclusie Communicator: er is iemand die met ieder ander in ≤2 stappen can communiceren? Wel op eindige structuren, maar oneindig tegenvoorbeeld op gehele getallen met ≤!

8 Modelvergelijking Andere genres vraag komen ook voor:
Gegeven twee eindige structuren M, N, Maken ze dezelfde beweringen waar, ofwel, Is er een isomorfisme, ofwel: Heeft speler G een winnende strategie? Ook deze vraag is mechanisch na te rekenen: bijv. algoritmen voor oplossen van spelen.

9 Bereikbaarheid Gegeven eindige gerichte graaf G van punten en pijlen, en punten s, t (begin, eind). Is er een pad van pijlen van s naar t? Het archetypische zoekprobleem! Algoritme: Kleur s rood. R wordt de verzameling der 'actieve' rode knopen. Begin: R = {s}. Herhaal: Pak rode knoop weg uit R, kleur al zijn nog niet rode opvolgers in de graaf rood, en stop ze in R.

10 Analyse van het algoritme
Als er geen ongekleurde opvolgers meer zijn van de geselecteerde knoop, dan krimpt R. Stop zodra R leeg is. Check dan of t rood is. Zo ja: t bereikbaar uit s, zo nee, dan niet. A Dit algoritme is correct: de antwoorden kloppen altijd. B Het eindigt na hoogstens kwadratische tijd in de invoervariabele: de grootte van G. aantal rondes * tijdsduur van een ronde .

11 Handelsreiziger Is er een rondreis door een gegeven graaf die alle knopen precies één keer bezoekt? Echt moeilijker dan het vorige probleem. Brute kracht oplossing: opsommen van alle routes, en kijken of er een rondreis bij zit. Model voor praktische planningsproblemen.

12 Spelen en rekenproblemen
Graafspel Speler I kiest een pijl, we gaan dan naar het eindpunt daarvan. Speler II kiest vanuit het nieuwe punt een pijl, enzovoorts, om en om. Als speler II in haar beurt geen pijl meer kan kiezen vanuit het huidige punt, dan verliest zij. 'Makkelijk' op te lossen. 'Moeilijke’ variant: Aardrijkskunde Hetzelfde spel; maar wie terugkeert op een reeds bezocht punt verliest.

13 Graden van groei Complexiteit gemeten in tijd of ruimtestappen
P NP Pspace Exptime … Onbeslisbaar Groeitempo's lineair ≤ a*x + b rekenstappen kwadratisch ≤ a*x2 + b cubisch ≤ a*x3 + b Lineair bijv. vervangen symbool in rijtje, kwadratisch: sorteren, cubisch: ontleden. Klasse P van problemen met een algoritme met polynomiaal afgrensbare rekentijd. Doenlijk. Typisch geval: Bereikbaarheid.

14 Graden van groei, vervolgd
Exponentiële tijd, groeit met a*2x Explosief, als bij de Club van Rome! Minder sterk groeiend: Polynomiale ruimte gemeten in aantal beschreven geheugenvakjes. Typische complexiteit oplossen van spelen, zoals Aardrijkskunde (Graafspel is in P!).

15 De complexiteitsklasse NP
Nog simpeler: Handelsreiziger is in NP: 'niet-deterministisch polynomiale tijd', JA-antwoord bestaat in opschrijven van een 'certifikaat' in polynomiale tijd in de invoergrootte, gevolgd door verifikatie van het certifikaat, eveneens in polynomiale tijd. Heeft hoogstens polynomiale ruimte nodig, en exponentiële tijd, maar kan vaak efficiënter.

16 Propositielogica, evaluatie
Evaluatie van formules is in P. Neemt zelfs slechts lineaire tijd: ((¬AÚ B) & ¬¬C) 0 (¬AÚ B) 1 ¬¬C ¬A B 1 ¬C 1 A C 0 c*|f| stappen, |f| lengte van formule Kunst van het tellen van 'stappen'… Stelling Elk probleem in P is reduceerbaar tot propositielogische evaluatie!

17 Propositielogica, consistentie
Consistentie is in NP Belangrijk resultaat uit de complexiteitstheorie Stelling van Cook Elk rekenprobleem in NP te reduceren tot propositionele consistentievraag. Logica bevat dus elke vorm van rekenen! Computational logic op computers: rekenen, planning spoorwegen, taalontleding, in logica Maar: waren tableaus dan niet sneller…?

18 Complexiteit in kwantorlogica
Modelcontrole is in Pspace: tijdsduur lijkt exponentieel in modelgroootte en aantal kwantoren, maar kan verbeterd. Consistentie is onbeslisbaar: er is geen reken-methode voor (Stelling van Church-Turing) Modelvergelijking is in NP: via 'bestaan van isomorfisme'. Vergelijkingsspelen simpeler dan spelen in het algemeen (waren Pspace).

19 Complexiteitstheorie: P = NP?
Is propositielogische consistentie testen echt moeilijker dan evaluatie? Is P = NP? Open sinds begin jaren 70, prijs Cray Institute. Als gelijk, dan stort complexiteitshiërarchie in!

20 Cognitieve aspecten Zijn Turing machines een goed model
voor menselijk rekenen en denken? Klassieke computationeel-logische paradigma in cognitiewetenschap en AI Uitgedaagd door neurocognitief paradigma over hersenwerking: massive parallellism, neural networks, geen expliciete regels Complexiteitstheorie blijft toepasbaar: bijv. parallel computing doet geen 'wonderen'


Download ppt "REKENEN, REDENEREN, COMPLEXITEIT"

Verwante presentaties


Ads door Google