CS 6715
FunctionalLogic Programming


Course Outline Jan.Apr. 2006 



Functionallogic
programming is a programming paradigm that integrates most of the features of
the classical declarative paradigms, namely functional and logic programming.
From functional programming it inherits named or anonymous functions, nested
expressions, efficient reduction strategies, higherorder functions, and
types. From logic programming it inherits named relations, logical variables,
partial data structures, unification, and builtin search. The operational
semantics of functionallogic languages is usually based on narrowing, a
combination of unification for parameter passing and reduction as evaluation
mechanism, which subsumes SLDresolution and rewriting. Their modeltheoretic
semantics essentially extend relational Herbrand models by functional
equations. Implementations can use interpreters, transformations into one of
the component paradigms, or compilers for an extended Warren Abstract Machine
(WAM). Applications include Semantic Web programs over metadata as well as
Web Services that provide logic inferences and/or functional transformations
over XML data. These notions are introduced in the course using the small
functionallogic language Relfun and its serialisation in Functional RuleML. 


Instructor 
NRC 

Classes 
Thursdays, 2:30  4:50 PM, with middle
break (Start: 5 Jan. 2006) HE4 (from Dean’s Office walking to Head Hall Copy Centre, turn into left corridor, finding door E4 on
your left) 

Course Web Site 
http://www.cs.unb.ca/~boley/FLP




Marking 
30% assignments (3) 20% project
documentation (ca. 10 soft pages) 20% project presentation (ca. 12 soft slides) 30% exam 



Lecture Schedule Overview 




Reference Material


Course Slides 
http://www.cs.unb.ca/~boley/FLP/cs6905FLP.ppt http://www.cs.unb.ca/~boley/FLP/cs6905FLP.pdf 

Books and Articles 
The Integration of Functions into Logic Programming: From Theory to PracticeMichael
Hanus Journal
of Logic Programming, Vol. 19,20, pp. 583628, 1994 http://www.informatik.unikiel.de/~mh/publications/papers/JLP94.html A Tight, Practical Integration of Relations and FunctionsHarold
Boley http://smiweb.stanford.edu/people/boley/lnai1712.html


Journal 
The Journal of Functional and Logic Programming (JFLP) http://danae.unimuenster.de/lehre/kuchen/JFLP/


Online Resources 
Functional Logic Programminghttp://www.informatik.unikiel.de/~mh/FLP/ Functional Logichttp://directory.google.com/Top/Computers/Programming/Languages/Logicbased/Functional_Logic/ http://dmoz.org/Computers/Programming/Languages/Logicbased/Functional_Logic/ Integrations of functional and logic programming subject areahttp://www.dcs.qmul.ac.uk/SELHPC/Articles/GeneratedHtml/functional.logic.html Curryhttp://www.informatik.unikiel.de/~mh/curry/ RelfunFunctional RuleML

Maintained by Harold Boley