Teaching LP: A Perspective Gopal Gupta Department of Computer Science University of Texas at Dallas.

Slides:



Advertisements
Similar presentations
Types and Programming Languages Lecture 13 Simon Gay Department of Computing Science University of Glasgow 2006/07.
Advertisements

ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Cs774 (Prasad)L12CLP1 Constraint Logic Programming
Artificial Intelligence 0. Course Overview Course V231 Department of Computing Imperial College, London © Simon Colton.
1 Undergraduate Curriculum Revision Department of Computer Science February 10, 2010.
CS240A: Databases and Knowledge Bases Introduction Carlo Zaniolo Department of Computer Science University of California, Los Angeles WINTER 2002.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
CS 331 / CMPE 334 – Intro to AI CS 531 / CMPE AI Course Outline.
Research on Intelligent Information Systems Himanshu Gupta Michael Kifer Annie Liu C.R. Ramakrishnan I.V. Ramakrishnan Amanda Stent David Warren Anita.
From Discrete Mathematics to AI applications: A progression path for an undergraduate program in math Abdul Huq Middle East College of Information Technology,
CS 5000: Lecture 37 Vladimir Kulyukin Department of Computer Science Utah State University.
Introduction to Student Learning Outcomes in the Major
Carnegie Mellon University Computer Science Foundations for Ph.D. Students The Carnegie Mellon Perspective Computer Science Foundations for Ph.D. Students.
CS 10051: Introduction to Computer Science What is the course about?
Overview of Tri-mentoring at UBC Computer Science Department A three-tier mentoring program, matching industry and faculty mentors with senior students,
Formal Aspects of Computer Science – Week 12 RECAP Lee McCluskey, room 2/07
Dr Eleni Mangina – COURSE: LOGIC PROGRAMMING (during a joint degree with Fudan University in Software Engineering) DEPT. OF COMPUTER SCIENCE UCD LOGIC.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Ch.12 [P]: Individuals and Relations Datalog.
Enhanced Integration of Math, Physics & Engineering RIEE-NJCC Meeting, September 27, Enhanced Integration of Mathematics and Physics into the Engineering.
PREPARING STUDENTS TO TEACH PSYCHOLOGY IN RUSSIA Victor Karandashev, Leningrad State University, Russia and Grand Valley State University, USA.
SERVER Betül ŞAHİN What is this? Betül ŞAHİN
CS240A: Databases and Knowledge Bases Introduction Carlo Zaniolo Department of Computer Science University of California, Los Angeles.
Improving Education in ICTD: Thoughts from CCC Workshop Participants CCC Workshop on Computer Science and Global Development August 1, 2009.
Notes for Chapter 12 Logic Programming The AI War Basic Concepts of Logic Programming Prolog Review questions.
Simplicity First: Use of Tools in Undergraduate CS and IS Teaching By David Naugler and Ken Surendran Southeast Missouri State University Computer Science.
Whitacre College of Engineering Panel Interdisciplinary Cybersecurity Education Texas Tech University NSF-SFS Workshop on Educational Initiatives in Cybersecurity.
Copyright, 1996 © Dale Carnegie & Associates, Inc. CONSUMER FINANCE STUDY PROGRAM INTRODUCTIONS INDIANA DEPARTMENT OF FINANCIAL INSTITUTIONS CONSUMER EDUCATION.
Questions Many New Students Have Richard Frost Professor of Computer Science.
CS 403: Programming Languages Lecture 19 Fall 2003 Department of Computer Science University of Alabama Joel Jones.
CS3518 Languages and Computability Kees van Deemter Lectures Monday14:00New King’s 14 Tuesday11:00KC T2 Tutorials/Practicals Tuesday13:00-15:00.
Expert System Development Tools Sean Lydon Daniel Nelson Emily Schwarz.
30/09/04 AIPP Lecture 3: Recursion, Structures, and Lists1 Recursion, Structures, and Lists Artificial Intelligence Programming in Prolog Lecturer: Tim.
Discrete Structures for Computing
Control Algorithms 1 Chapter 6 Control Algorithms 1 Chapter 6 Pattern Search.
Computing & Information Sciences Kansas State University Wednesday, 20 Sep 2006CIS 490 / 730: Artificial Intelligence Lecture 12 of 42 Wednesday, 20 September.
Let’s Make Databases Cool! Zachary Ives University of Pennsylvania CIDR January 6, 2005.
ARTIFICIAL INTELLIGENCE DR. ABRAHAM AI a field of computer science that is concerned with mechanizing things people do that require intelligent.
Departments in Business Business Name 1 Business Name 2.
Artificial Intelligence: Introduction Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
Telecommunications Engineering The University of Texas at Dallas The Erik Jonsson School of Engineering and Computer Science Jonsson School Industrial.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 13 of 41 Monday, 20 September.
Logic Programming CSC 358/ Outline Pattern matching Unification Logic programming.
The AI War LISP and Prolog Basic Concepts of Logic Programming
Automated Reasoning Early AI explored how to automated several reasoning tasks – these were solved by what we might call weak problem solving methods as.
Computing & Information Sciences Kansas State University Monday, 25 Sep 2006CIS 490 / 730: Artificial Intelligence Lecture 14 of 42 Monday, 25 September.
Semantics-based Interoperability Gopal Gupta The University of Texas at Dallas.
Carnegie Mellon University Computer Science Foundations for Ph.D. Students The Carnegie Mellon Perspective Computer Science Foundations for Ph.D. Students.
OPTIMIZING DSP SCHEDULING VIA ADDRESS ASSIGNMENT WITH ARRAY AND LOOP TRANSFORMATION Chun Xue, Zili Shao, Ying Chen, Edwin H.-M. Sha Department of Computer.
1 Trends in Computer Science Education ABU, Zaria, July 17, 2006 Trends in Computer Science Education Sahalu Junaidu, PhD Information and Computer Science.
Incorporating Parallel & Distributed Computing Across a Liberal Arts Computer Science Curriculum Tia Newhall, Andrew Danner, Kevin Webb Swarthmore College.
DEDUCTION PRINCIPLES AND STRATEGIES FOR SEMANTIC WEB Chain resolution and its fuzzyfication Dr. Hashim Habiballa University of Ostrava.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 7 Time Complexity Some slides are in courtesy.
WORKING GROUP 8 DAY 2. Within The Department Start with grad students, new faculty, and the easy to convert Send to workshops, develop workshops, lesson.
For Monday Exam 1 is Monday Takehome due Prolog Handout 3 due.
Undergraduate Education in Computer Science Crafting a Vision Aditya Mathur October 24,2007.
1 Assessment of Undergraduate Programs Neeraj Mittal Department of Computer Science The University of Texas at Dallas (UTD) January 22, 2016.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Leveraging Student Educational Diversity: Graduate/ Undergraduate Student Mentoring in Proposal Development Projects Elizabeth L. Hedberg-Dirk Department.
Introduction to Artificial Intelligence Heshaam Faili University of Tehran.
CS240A: Databases and Knowledge Bases Introduction Carlo Zaniolo Department of Computer Science University of California, Los Angeles.
Artificial Intelligence
A Case for Predicate Answer Set Programming
CS240A: Databases and Knowledge Bases Introduction
2009: Topics Covered in COSC 6368
Topics Covered in COSC 6368 More general topics:
2004: Topics Covered in COSC 6368
Department of Mathematics
Logic Programming Part 3: Control Flow
Workshop Set-Up: The aim is that at each table we have a variety of disciplines / subjects represented by (ideally) four participants. Ensure a mixture.
Presentation transcript:

Teaching LP: A Perspective Gopal Gupta Department of Computer Science University of Texas at Dallas

Motivation LP: an important paradigm LP: an important paradigm LP: the grand unifying theory of CS LP: the grand unifying theory of CS LP: leads to better understanding of CS LP: leads to better understanding of CS Hence, teaching LP of utmost importance Hence, teaching LP of utmost importance Background: Taught LP courses for 12 years (both graduate/undergraduate) Background: Taught LP courses for 12 years (both graduate/undergraduate) Involved in a project on teaching programming to 1st year students via Prolog (panels in ICLP’92 &’93). Involved in a project on teaching programming to 1st year students via Prolog (panels in ICLP’92 &’93).

Pedagogical Objectives Understand main ideas of LP Understand main ideas of LP Develop an appreciation for the power and uniqueness of LP Develop an appreciation for the power and uniqueness of LP How LP relates to various areas of CS (databases, s/w engg., AI,..) How LP relates to various areas of CS (databases, s/w engg., AI,..) Develop an appreciation for LP’s relation to Constraint Prog/Op. Res. Develop an appreciation for LP’s relation to Constraint Prog/Op. Res. Appreciate LP’s role in reducing the complexity of programming Appreciate LP’s role in reducing the complexity of programming

Teaching of LP in US LP as a paradigm is well recognized in US. LP as a paradigm is well recognized in US. Most US Univ. cover it in a 4 th yr Prog. Lang. course (taught as one of the four paradigms but in a very cursory fashion). Most US Univ. cover it in a 4 th yr Prog. Lang. course (taught as one of the four paradigms but in a very cursory fashion). Many Universities have a dedicated graduate level course in LP. Many Universities have a dedicated graduate level course in LP. At UT Dallas: 120 UG students are exposed to LP every year; about 40 grad students take the dedicated course. At UT Dallas: 120 UG students are exposed to LP every year; about 40 grad students take the dedicated course.

Curriculum at UT Dallas Course Goal: Get main ideas of LP across: Course Goal: Get main ideas of LP across: The basis of LP in theorem proving; computation is deduction The basis of LP in theorem proving; computation is deduction Basic understanding of Prolog’s execution model: unification, search w/ backtracking Basic understanding of Prolog’s execution model: unification, search w/ backtracking Programming with recursion Programming with recursion Relational nature of Prolog programs: invertibility of predicates Relational nature of Prolog programs: invertibility of predicates Applications; Generalization to Constraints Applications; Generalization to Constraints

Ideal Curriculum As part of a Prog. Lang. class: As part of a Prog. Lang. class: - Database programming (datalog) - Database programming (datalog) - Backtracking search - Backtracking search - Recursion/List Proc. - Recursion/List Proc. As a complete course on LP As a complete course on LP - All topics in previous slides - All topics in previous slides

Personal Remarks Need to motivate people to study LP Need to motivate people to study LP Lack of awareness of LP’s power; wrongly perceived as a failed language Lack of awareness of LP’s power; wrongly perceived as a failed language However, once such people take an LP class, they appreciate its power However, once such people take an LP class, they appreciate its power Most students are motivated by “cool” applications; we need to advertise cool applications of LP more. Most students are motivated by “cool” applications; we need to advertise cool applications of LP more. At UTD, application of LP in solving some local problems is a single contributing factor in attracting students to LP classes in large numbers. At UTD, application of LP in solving some local problems is a single contributing factor in attracting students to LP classes in large numbers.