REKENEN, REDENEREN, COMPLEXITEIT

Slides:



Advertisements
Verwante presentaties
TELLEN IN TAAL: de vorm van rekenen en redeneren
Advertisements

Gelijkmatige toename en afname
Dyslexie Deze spreekbeurt van Eva, groep 6, gemaakt voor school, november Mijn spreekbeurt gaat over dyslexie.
Het Web als een graaf Mathematical Institute LAPP-Top C-I We kunnen het (Surface) Web zien als een gerichte graaf: •Iedere webpagina is een knoop… •Er.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica IN3 005 Deel 2 College 5 Cees Witteveen
PM zijn de Principia Mathematica. Deze vormen een formeel systeem voor de wiskunde. Ze zijn beschreven door A.N. Whitehead and B. Russell. Gödel bepaalt.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica IN3005 deel 2 College 2 Cees Witteveen
Computationele complexiteit: NP-volledigheid
Project D2: Kempenland Sander Verkerk Christian Vleugels
vwo C Samenvatting Hoofdstuk 13
Project D2: Kempenland Sander Verkerk Jeffrey van de Glind
Ik hou van Holland spel!.
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen College 5.
Fibonacci & Friends Met dank aan Gerard Tel.
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen (II) College 6.
Logisch redeneren in wiskunde C
Een workshop over katten, muizen en nadenken in de Informatica
STRUCTUUR, INVARIANTIE, EN TAAL Johan van Benthem Institute for Logic, Language.
PARADOXEN EN ONBEWIJSBAARHEID
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 5 Cees Witteveen.
Fundamentele Informatica IN3120
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 Oplossing Langste Pad Probleem Cees Witteveen
TU Delft Groep Parallelle en Gedistribueerde Systemen Fundamentele Informatica In3 005 Deel 2 College 1 Cees Witteveen Parallelle en Gedistribueerde Systemen.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica In3120 College 5 Cees Witteveen
Meer perspectief Welkom Masterclass – Speel jij een spelletje? René Bekker Bijeenkomst 2 – Nim Tijdstip: vrijdag 13 maart :00-18:00 Locatie: C6.68.
Gideon Koekoek 8 september 2009
BEWIJSPATRONEN EN LOGICA
Indeling Inleiding op PRM-planners & Medial Axis Retraction van configuraties op de Medial Axis Verbetering van retraction Verbetering van sampling Expliciete.
Functioneel Programmeren Daan Leijen. Wat gaan we doen? 3 fundamentele principes van computatie Equationeel redeneren IO-monad GUI's in Haskell (wxHaskell)
Gerard Koolstra, St. Michael College Zaandam
ProblemenRedeneren met verstekwaarden Gesloten wereld CircumscriptieLogica met verstekwaarden Autoepistemis che logica Redeneren over kennis: herbekeken.
Klik ergens op het witte deel van deze pagina om verder te gaan
T U Delft Groep Parallelle en Gedistribueerde Systemen PGS College in345 Deel 2 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit Informatie.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 3 Cees Witteveen.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 2 Cees Witteveen.
TU Delft Groep Parallelle en Gedistribueerde Systemen Fundamentele Informatica IN3120 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit EWI,
Interpreteren van data
havo B Samenvatting Hoofdstuk 1
Neurale Netwerken Genetische Algorithmen
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 6 Cees Witteveen.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag top-down decompositie Opdrachten:
Denkactiviteiten Standpunt 4
Exponentiele verbanden En wat opdrachten uit het huiswerk.
Grafentheorie Graaf Verzameling knopen al dan niet verbonden door takken, bijv:
Recursie…. De Mandelbrot Fractal De werking… De verzameling natuurlijke getallen… 0 ∞-∞
1/11 Algoritmen en Complexiteit Programmeerparadigma’s Voorbereiding Visitatie ZAP vergadering woensdag 27/2/2008.
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
Welkom! maandag 16 November 2015 Les B-2.
Rekenen en Redeneren met Oneindig Jeroen Spandaw NWD, 5 februari 2016.
Minimum Opspannende Bomen Algoritmiek. 2 Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee.
Doorzoeken van grafen Algoritmiek. Algoritmiek: Divide & Conquer2 Vandaag Methoden om door grafen te wandelen –Depth First Search –Breadth First Search.
Divide & Conquer: Verdeel en Heers vervolg Algoritmiek.
Datastructuren voor grafen Algoritmiek. 2 Grafen Model van o.a.: –Wegennetwerk –Elektrische schakeling –Structuur van een programma –Computernetwerk –…
Gerandomiseerde algoritmes
Wiskunde G3 Samenvatting H2: Parabolen
Netwerkstroming Algoritmiek.
8 Samengestelde Redeneringen identificeren
NP-volledigheid Algoritmiek.
Minimum Opspannende Bomen
5 Grondslagen van Redeneren II
Programmeren met Reeksen
16 Evalueren Introductie & Overzicht
VWO 6 Wiskunde C – les 1 Meneer Ypma.
Modelleren en Programmeren voor KI Practicumopdracht 4: SAT Solver
Significante cijfers © Johan Driesse © 2013 – Johan Driesse.
havo A Samenvatting Hoofdstuk 10
Modderdorp UNPLUGGED Bron: csunplugged.org.
Software Development fundamentals
Welkom!.
Transcript van de presentatie:

REKENEN, REDENEREN, COMPLEXITEIT UvA open college, 22 october 2003 Hoe Wiskunde Werkt Johan van Benthem http://staff.science.uva.nl/~johan/ Institute for Logic, Language and Computation ILLC

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.

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'

Propositielogica, waarheidstabellen, geldigheid A ¬A A&B 1 0 A Ú B 1 0 1 0 1 1 0 1 1 1 0 1 0 0 0 0 1 0 A B AÚ B ¬A B 1 1 1 0 1 1 0 1 0 0 0 1 1 1 1 ! 0 0 0 1 0

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

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

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 ≤!

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.

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.

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 .

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.

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.

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.

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!).

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.

Propositielogica, evaluatie Evaluatie van formules is in P. Neemt zelfs slechts lineaire tijd: ((¬AÚ B) & ¬¬C) 0 (¬AÚ B) 1 ¬¬C 0 ¬A 0 B 1 ¬C 1 A 1 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!

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…?

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).

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!

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'