Paul Tarau
escription: OSX:Users:tarau:Desktop:paul.jpg
ResearchPublications - Teaching  NEW: on a sabbatical leave until Fall 2016

Personal Links:  My wife Brenda Luderman and our kids  Dylan and Siena Tarau .
­
Research Interests: Inferential Aspects of Programming Languages, Logic and Functional Programming, Natural Language Processing, Lambda Calculus, Combinatory Logic, Computational Mathematics, Circuit Synthesis,  Compilers and Abstract Machines, Agent Infrastructures.

Extended CV with full list of publications (PDF). 
Online papers: browsereferences to papers (in bibref format) 

NSF supported research project starting in Sept 2014:  Arithmetic Algorithms and Applications of Hereditarily Binary Numbers. Some recent papers and code on these new tree-based numbering systems are here. Related  presentations at PADL’15, CICM’15, PPDP’15, PPDP’2014, ICTAC’2014 and SYNASC’2014. Also starting in Sept 2014, collaborative NSF project,  see more at Cornelia Caragea’s project site . New thread on lambda calculus and combinators in logic programming. Draft paper (70p) and code here.

Recent  NSF supported research project on a  data transformation framework that allows “morphing” between data types sharing the same information content. This paper and code (also here) describes bijectionss between fundamental data types. This Mathematica notebook visualizes some of the isomorphisms and this Coq script verifies some related computations. Related talks at: SAC 2009,  CALCULEMUS 2009PPDP 2009, TFP 2010 (slides1, slides2), CALCULEMUS 2010, PPDP 2010,(slides, pics) ICTAC 2010, MSFP 2010 (slides), CiE 2011, ICTAC 2011, SAC’12, PADL’12, ICLP’12 (slides), RACS 2012 (slides), SYNASC 2012 (slides1,slides2,talk1,talk2), ICLP’2013, CICLOPS’2013. And, on a different thread – DAMP2011 (slides), a  TPLP paper and talks at ISMM 2011 (slides), Coordination 2011 (slides) and RACS 2012 (slides). Slides of my talks at ICLP and CICLOPS 2013. Draft papers at arxiv: 1, 2 and 3, on tree-based arithmetic computations with giant numbers.  Invited talk at SYNASC’2012slides and code.

 

New: recording and slides of talk at VMSS’16 and slides of talk at CLA’16.

Open Source Software:

Styla: a Prolog interpreter in Scala, also here,
Jinni Prolog: a Java-based compiler and runtime system,
BinProlog:  a C-based compiler and runtime system,
Arithmetic operations with tree-based natural and rational numbers in Scala,
Bijective Goedel Numberings in Scala,
Kernel Prolog: a Prolog interpreter in Java.

Contact Information
E-mailt a r a u@cse.unt.edu  WWW : http://www.cs.unt.edu/~tarau
Address: Department of Computer Science and Engineering, University of North Texas, 1155 Union Circle #311366 Denton, Texas 76203-5017, USA
Phone :  +1-940-565-2806, +1-940-565-2767 Fax : +1-940-565-2799

Academic position: Professor
Education: Ph.D. Univ. of Montreal, Canada 1990 (Computer Science), M.Sc. Univ. Laval, Canada 1986 (Computer Science)

Program committees:  LATA’15,ICLP’2014,TextGraphs’13, LOPSTR’13, ACM SAC’13, CICLOPS’12, GPCE’12 , TextGraphs-7 FLOPS’2012, ACM SAC’12PPDP’11, DSL’11, CICLOPS’11, ACM SAC'09, CICLOPS'08, ICLP'07, ACM SAC'06,  ICLP'04, PADL'04,  INAP'04, SONA'04, PADL'03, PADL'02, CICLOPS2002, PPDP'2000, CL2000,JFPLC'2000, ESAW'2000,MAS'99, COCL'99,IDL'99,DIPLCLP'99,WETICE'98, JICSLP'98,JFPLC'98,COCL'98, ILPS'97, JICSLP'96, JFPL'96, ICLP'95, LOPSTR'95

Workshops organized: 
CICLOPS 2009 9th International Colloquium on Implementation of Constraint and LOgic Programming Systems at ICLP'09
IDL'99 International Workshop on Implementation of Declarative Languages at PLI'99
DIPLCL'99 International Workshop on Distributed and Internet Programming with Logic and Constraint Languages at ICLP'99
ICLP'97: 2nd International Workshop on Logic Programming Tools for Internet Applications
CP'97 Workshop on Constraint Reasoning for the Internet
JICSLP'96: 1st International Workshop on Logic Programming Tools for Internet Applications
ILPS'94: Implementation of Logic Programming Languages
ICLP'93: Blackboard Based Logic Programming

Courses taught at UNT:

Spring 2015: CSCE 3030 Parallel Programming CSCE 4430 Programming Languages
Fall 2014. CSCE 5160 Parallel Processing and Algorithms CSCE 5450 Programming Languages
Spring 2014: CSCE 2100 Computing Foundations I CSCE 5450 Programming Languages
Fall 2013: CSCE 5290/4930 Natural Language Processing, CSCE 5150-2 Analysis of Algorithms,
CSCE 6933 Logic and Knowledge Processing in Computer Science   
Spring 2013 CSCE 4430 Programming Languages  CSCE 4444 Software Engineering
Fall 2012: CSCE 3210 Symbolic Processing  CSCE 6933 Computational Mathematics
Maymester 2012: Advanced Object Oriented and Functional Programming in Scala
Spring 2012: CSCE 4430 Programming Languages, CSCE 5430 Topics in Software Engineering
Fall 2011 CSCE 5420: Software Development CSCE 6933 Topics in Computational Mathematics
Spring 2011 CSCE 5170: Graph Theory CSCE 4430: Programming Languages
Fall 2010 CSCE 5450: Programming Languages CSCE 6933 Topics in Computational Mathematics
Spring 2010 CSCE 3600: Principles of System Programming CSCE 5430: Topics in Software Engineering
Fall 2009 CSCE 4430/5450: Programming Languages CSCE 5420:  Software Development
Spring 2009 CSCE 4430/5450: Programming Languages CSCE 5430: Topics in Software Engineering
Fall 2008 CSCE 4430/5450: Programming Languages CSCE 5420:  Software Development
Spring 2008 CSCE 4430/5450: Programming Languages CSCE 5430: Topics in Software Engineering
Fall 2007: CSCE 4430/5450: Programming Languages CSCE 5420: Software Development
Spring 2006: CSCE 5210: Artificial Intelligence CSCE 5450: Programming Languages
Fall  2005:  CSCE 5450: Programming Languages CSCE 4430:  Programming Languages
Spring  2005: CSCI 5410:  Artificial Intelligence CSCI  4300:   Survey of Computer Languages
Fall  2004: CSCI 4410:  Introduction to Artificial Intelligence CSCI 4250:   Survey of Computer Languages
Spring  2004: CSCI 5410: Artificial Intelligence CSCI 3400: - Data Structures
Fall  2003: CSCI 6330: Advanced Topics in Software Agents CSCI 4250: Survey of Computer Languages
Spring 2003: CSCI 5250: Programming Languages CSCI 5540: - Operating Systems
Fall 2002:  CSCI 4250 Survey of Computer Languages, CSCI 5250 Programming Languages,
Spring 2002: CSCI 5530 Topics in Software Engineering CSCI 5550 Compiler Design
Fall 2001:  CSCI 4250 Survey of Computer Languages, CSCI 5250 Programming Languages,
Spring 2001: CSCI 5530 Topics in Software Engineering CSCI 5550  Compiler Design
Fall 2000:  CSCI 4250 Survey of Computer Languages, CSCI 5250 Programming Languages,
Spring 2000: CSCI 5530 Topics in Software Engineering CSCI 6330  Advanced Internet Programming
Fall 1999:  CSCI 4250 Survey of Computer Languages, CSCI 5250 Programming Languages
Spring 1999: CSCI 5530 Topics in Software Engineering,  CSCI 6330 Intelligent Mobile Agents
Fall 1998: CSCI 4250 Survey of Computer Languages, CSCI 5250 Programming Languages.

Policy on directed studies, projects and reference letters: I will consider requests for directed studies and projects only for students working with me on a PhD or MSc thesis. Otherwise, I believe that regular classes, involving team work and presentations are likely to provide a more complete learning experience. Requests to work as a TA should be addressed directly to the department. Reference letters from me are not needed as the priority list is built independently by the department. I will provide reference letters for job or grant applications for students with which I worked directly as member of their thesis committees.