Picat (picat-lang.org) is a new logic-based multi-paradigm programming language that integrates logic programming, functional programming, dynamic programming with tabling, and scripting. The support of explicit unification, explicit non-determinism, tabling, and constraints makes Picat more suitable than functional (such as Haskell and F#) and scripting languages (such as Python and Ruby) for symbolic computations. Picat provides facilities for solving combinatorial search problems, including solver modules that are based on CP (constraint programming), SAT (propositional satisfiability), and MIP (mixed integer programming), and a module for planning that is implemented by the use of tabling. This talk will give an overview of the Picat language and the underlying techniques used in the Picat system.
Neng-Fa Zhou is a professor of Computer and Information Science at Brooklyn College and Graduate Center of the City University of New York. He received a BS degree in Computer Science from Nanjing University, China, in 1984, and MS and PhD degrees in Computer Science and Engineering from Kyushu University, Japan, in 1988 and 1991, respectively. Before joining CUNY, he was an associate professor at Kyushu Institute of Technology from 1991-1999. He had visiting positions at Yale University (1997), University of Alberta (1998), Tokyo Institute of Technology (2002), and Monash Univeristy/the University of Melbourne (2005).
Neng-Fa Zhou has been an active researcher in programming language systems for more than 25 years. He has authored over forty papers on programming languages, constraint-solving, graphics, and machine learning systems published in journals (TPLP, ACM TOPLAS, JLP, JFLP, and SPE) and major conferences. His papers on the compilation of logic programs, constraint solving, and tabling have received many citations. He is the principal designer and implementer of the B-Prolog and Picat systems, which are widely used in both academia and industry. The Picat system, in particular, has attracted tremendous attention in the logic programming community and beyond. He has won prizes in several competitions, including CSP, ASP, and MiniZinc Challenge. He has served on the program committees of several leading conferences, recently, including ICLP, AAAI, IJCAI, and ECAI, and was an invited speaker at ICLP'14. He co-authored with Hakan Kjellerstrand and Jonathan Fruhman a book titled Constraint Solving and Planning with Picat, which was published by Springer in 2015.