Ciao is a complete Prolog system subsuming ISO-Prolog with a novel modular design which allows both restricting and extending the language. Ciao extensions currently include feature terms (records), higher-order, functions, constraints, objects, persistent predicates, a good base for distributed execution (agents), and concurrency. Libraries also support WWW programming, sockets, and external interfaces (C, Java, TCL/Tk, relational databases, etc.). An Emacs-based environment, a stand-alone compiler, and a toplevel shell are also provided.
DELORES (DEfeasible LOgic REasoning System) is a forward-chaining reasoning engine for defeasible logic, a less-expressive but more efficient non-monotonic logic. In contrast with most other non-monotonic logics, defeasible logic has linear complexity, allowing DELORES to execute large theories very quickly. DELORES's algorithm extends to general defeasible theories through the use of a pre-processing transformation which eliminates all uses of defeaters and superiority relations.
Prolog+CG is an implementation of Prolog with extensions for supporting the Conceptual Graph theory of John Sowa, as well as Object-Oriented extensions. CGs are first-class data objects, and thus completely integrated into the language. Prolog+CG can be used for knowledge representation, reasoning about meaning, formal narratological analysis, and other knowledge representation tasks.
YProlog is a pocket Prolog engine written in 100% Java. It provides a number of fast and easy Java-Prolog interfacing functions that enables the Prolog database to be used like an SQL-type database. It has fast consult and retract operations, can "serialize" database contents into text, and can easily load and store tables or contents of Java objects. It is based on Jean Vaucher's XProlog.
Prolog Statistical Machine Translation is a fairly unsophisticated statistical machine translation program. It consists of a language model learner (which takes example sentences in the target language and learns a language model based on trigrams), a dictionary learner (which learns word-for-word translations), and a search program (which uses the data from the first two parts to translate a source sentence into the target language).
PED is a dialogue management system that uses a probabilistic nested belief model to choose dialogue strategies. The dialogue system designer need only supply a set of plan rules to PED as a dialogue grammar with preconditions. Using this grammar, PED constructs game trees (like the one below) to represent the outcomes of the dialogue, so that a dialogue strategy can be chosen for the current turn in the dialogue. PED automatically maintains a belief model by a belief revision process that uses the observed acts in the dialogue. The game tree is evaluated in the context of this belief model. PED is efficient because it uses probabilistic estimates of belief rather than a plain logical belief model.