BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//talks.cam.ac.uk//v3//EN
BEGIN:VTIMEZONE
TZID:Europe/London
BEGIN:DAYLIGHT
TZOFFSETFROM:+0000
TZOFFSETTO:+0100
TZNAME:BST
DTSTART:19700329T010000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0100
TZOFFSETTO:+0000
TZNAME:GMT
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CATEGORIES:Computer Laboratory Automated Reasoning Group Lunc
hes
SUMMARY:Logic programming beyond Prolog - Maarten van Emde
n ( University of Victoria\, Canada)
DTSTART;TZID=Europe/London:20141009T140000
DTEND;TZID=Europe/London:20141009T150000
UID:TALK53861AThttp://talks.cam.ac.uk
URL:http://talks.cam.ac.uk/talk/index/53861
DESCRIPTION:A program in pure Prolog is an executable specific
ation. For example\, Quicksort in Prolog is a logi
cal formula\, yet shows creditable performance on
long lists. But such executable specifications are
a compromise: the logic is compromised by algorit
hmic considerations\, yet only indirectly executab
le via an abstract machine.\n\nThis talk introduce
s relational programming\, a method that solves th
e difficulty with Prolog programming by a separati
on of concerns. It requires writing three texts: (
1) Axioms\, a logical formula that specifies the p
roblem and is not compromised by algorithmic consi
derations\, (2) Theorem\, a logical formula that e
xpresses the algorithm\, and (3) Code\, a transcri
ption of Theorem to C++. Correctness of Code relie
s on the logical justification of Theorem by Axiom
s and on a faithful transcription of Theorem to C+
+.\n\nSorting is an example where relational progr
amming has the advantage of a higher degree of abs
tractness: the data to be sorted can be any C++ da
ta type that satisfies the axioms of linear order\
, while the Prolog version is limited to the Herbr
and universe. Another advantage of relational prog
rams is that they can be shown to have a model-the
oretic and fixpoint semantics equivalent to each o
ther and analogous to those of pure Prolog program
s.
LOCATION:Seminar Room\, Microsoft Research\, Station Road\,
Cambridge
CONTACT:Alan Mycroft
END:VEVENT
END:VCALENDAR