This module is designed to acquaint the students with the basics of lisp programming and prolog concepts.
Introduction to LISP:The Past, Present, and Future of Common Lisp. Convergence of Hardware and Software ,The Common Lisp Model of Computation. Operating a CL Development Environment :Installing a CL Environment, Running CL in a Shell Window . Starting CL from a Terminal Window , Stopping CL from a Terminal Window, Running CL inside a Text Editor, Integrated Development Environment , Debugging in CL,Common debugger commands , Interpreted vs Compiled Code , Developing Programs and Applications in CL, A Layered Approach ,Compiling and Loading your Project
Overview of CL and its Syntax , Evaluation of Arguments to a Function, Lisp Syntax Simplicity ,Turning Off Evaluation , Fundamental CL Data Types, Functions , Global and Local Variables , The List as a Data Structure , Accessing the Elements of a List,The conditional If ,Length of a List , Member of a List, Getting Part of a List,Appending Lists, Adding Elements to a List, Removing Elements from a List Sorting Lists, Control of Execution .If, When , Logical Operators, Case, Iteration.
Introduction to PROLOG, Foundations of prolog, Preliminaries ,Logic Formulas, Semantics of Formulas , Models and Logical Consequence , Logical Inference, Substitutions, Definite Logic Programs, Definite Clauses , Definite Programs and Goals, The Least Herbrand Model , Construction of Least Herbrand Models, SLD-Resolution , Informal Introduction, Unification , SLD-Resolution , Soundness of SLD-resolution Completeness of SLD-resolution,Proof Trees.
Programming in Logic: Logic and Databases ,Relational Databases ,Deductive Databases, Relational Algebra vs. Logic Programs, Logic as a Query-language, Special Relations Databases with Compound Terms, Programming with Recursive Data Structures : Recursive Data Structures Lists, Difference lists.
Amalgamating Object- and Meta-language: What is aMeta-language, Ground Representation, NongroundRepresentation.The Built-in Predicate clause/2 ,The Built-in Predicates assert,The Built-in Predicate retract/1 ,Logic and Expert Systems Expert Systems,Collecting Proofs,Query-the-user, Fixing the Car (Extended Example), Logic and Grammars: Context-free Grammars,LogicGrammars, Context-dependent Languages, Definite Clause Grammars (DCGs),Cmpilation of DCGs into Prolog .