Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CodeMash Prolog Talk 2012

kognate
January 12, 2012

CodeMash Prolog Talk 2012

This is my CodeMash 2012 talk on Prolog

kognate

January 12, 2012
Tweet

More Decks by kognate

Other Decks in Technology

Transcript

  1. will(We, Today). • Learn something about Prolog • Learn what

    an expert system is • Write some Prolog code 4 Thursday, January 12, 12
  2. will_not(We,Today). • Hold our questions till the end • Leave

    experts in Logic Programing 5 Thursday, January 12, 12
  3. listing(Agenda). • What is Prolog • Overview of Syntax and

    Semantics • Code Dialog • CodeMash Expert System 6 Thursday, January 12, 12
  4. basic_ideas. • Describe the situation • Perform a query (Ask

    a question) • Logically deduce new facts • Deductions returned as answers 8 Thursday, January 12, 12
  5. the_year_is(1972). • Prolog was born in Europe • PROgraming LOGic

    • Highest level language in general use today (probably) 9 Thursday, January 12, 12
  6. why(use(Prolog)). • Semantic Web • Rule Engines and Expert Systems

    (AI) • text processing • it’s fun! (really) 11 Thursday, January 12, 12
  7. stuff. • atom, number, real • fact • predicate •

    query • list 13 Thursday, January 12, 12
  8. operators. • +, -, =:=, ==, <= , >=, mod,

    div • recursion, recursion, recursion • Logical Correctness is hard 14 Thursday, January 12, 12
  9. terms. • simple and complex • simple(term) , complex(term(like_this)). •

    simple(Term) :- complex(term(Term)). 16 Thursday, January 12, 12
  10. variables. • Upper Case Terms • should_learn(Prolog, You) :- Prolog

    = ‘A Really Cool Language’, You = ‘audience member’. • Unification Unification Unification 17 Thursday, January 12, 12
  11. resources. - Programming in Prolog: Using the ISO Standard -

    Prolog Programming for Artificial Intelligence - The Art of Prolog, Second Edition: Advanced Programming Techniques - The Craft of Prolog (Logic Programming) by Richard A. O'Keefe - Programming in Prolog: Using the ISO Standard - Prolog Programming in Depth - Clause and Effect: Prolog Programming for the Working Programmer 21 Thursday, January 12, 12