Presentation is loading. Please wait.

Presentation is loading. Please wait.

Symbolic AI www.cems.uwe.ac.uk/~ryang/prolog/top.html weeks of even numbers Lecture Monday 13:00-14:00 (2Q50) Lab Sessions (five groups, all in 2Q52) Monday.

Similar presentations


Presentation on theme: "Symbolic AI www.cems.uwe.ac.uk/~ryang/prolog/top.html weeks of even numbers Lecture Monday 13:00-14:00 (2Q50) Lab Sessions (five groups, all in 2Q52) Monday."— Presentation transcript:

1 Symbolic AI www.cems.uwe.ac.uk/~ryang/prolog/top.html weeks of even numbers Lecture Monday 13:00-14:00 (2Q50) Lab Sessions (five groups, all in 2Q52) Monday 14:00, 15:00 Tuesday 11:00, 15:00, 16:00

2 Assessment Method Coursework 40% (Coding in Prolog) Examination 60% (4-5 questions in AI 1 question in Prolog) How to Pass the coursework Don’t miss lectures, and always finish practical work on time.

3 A Preliminary Plan for this Term Lecture 1: Introduction, Logic Formulas, Logical Inferences Lecture 2: Syntax and Semantics of Prolog Lecture 3: Unification, Proof Tree Lecture 4: Lists, Recursions Lecture 5: More on Lists, Some Prolog Built-ins Lecture 6: A Case Study Lecture 7: Modifying Programs Dynamically/Controlling Backtracking Lecture 8: Natural Language processing Lecture 9: Input and Output Closed World Assumption Lecture 11: Comparing with Others Languages Lecture 12: Revision (out of date, be aware of changing)

4 Books Prolog Programming by Paul BrnaProlog ProgrammingPaul Brna (a free copy available for everyone) Logic Programming and Prolog by Ulf Nilsson and Jan MatuszynskiLogic Programming and Prolog Prolog – Programming for AI by Ivan Bratko

5 Programming Languages Imperative  Procedure oriented C, Fortran  Object oriented C++, Java Declarative  Functional langauge Haskell  Logic language Prolog (PROgramming in LOGic)

6 Background - Logic Logic: a tool for reasoning Logical formulas: a formal way to describe things Logical Operators: ‘and’, ‘or’, ‘not’, ‘imply’

7 Logical Formulas Examples Mary loves Tom => Every mother loves her children => loves(mary, tom) VX VY(loves(X,Y) <- mother_of(X,Y))

8 Logical Formulas (more examples) using: boy_names(Name, Year, Pos) The most popular boy’s name in 1800 is John. The second popular boy’s name in 1800 is Thomas. A popular boy’s name within a year means that the name is listed in the top 50 list. ( :- means <- ) boy_names( john, 1800, 1). boy_names( thomas, 1800, 2). pop_boy_names(X,Year) :- boy_names(X,Year,P), P =< 50.

9 A Famous `Equation` Algorithm = Logic + control (by Rob Kowalski ) Example: What is the length of a list? Find who is Fred’s grandparents

10 Imperative Languages Prolog programmer has to express control sequence explicitly control is built into the system data and program have different structure data and program have same structure program can't change itself as it runs program can be changed as it runs variable= a memory store / destructive assignment variable= logical variable single assignment


Download ppt "Symbolic AI www.cems.uwe.ac.uk/~ryang/prolog/top.html weeks of even numbers Lecture Monday 13:00-14:00 (2Q50) Lab Sessions (five groups, all in 2Q52) Monday."

Similar presentations


Ads by Google