Lucid is a formal system in which programs can be written and proofs of programs carried out. The proofs are particularly easy to follow and straightforward to produce because the statements in aâ€¦ (More)

Lucid is both a programming language and a formal system for proving properties of Lucid programs. The programming language is unconventional in many ways, although programs are readily understood asâ€¦ (More)

We describe a fragment of higher-order Horn logic which can be used as a higher-order extension of Prolog. It allows the programmer to axiomatize predicates of predicates and operations onâ€¦ (More)

In this paper we propose a novel recommender system which enhances user-based collaborative filtering by using a trust-based social network. Our main idea is to use infinitesimal numbers andâ€¦ (More)

In this paper we present a new approach to the semantics of data types, in which the types themselves are incorporated as elements of the domain of data objects. The approach allows types to haveâ€¦ (More)

This paper introduces Chronolog(Z), a logic programming language based on a discrete linear-time temporal logic with unbounded past and future. Chronolog(Z) is suitable for applications involving theâ€¦ (More)

The purpose of this paper is to demonstrate that first-order functional programs can be transformed into intensional programs of nullary variables, in a semantics preserving way. On the foundationalâ€¦ (More)

Intensional Logic Programming is a new form of logic programming based on intensional logic and possible-worlds semantics. Intensional logic allows us to use logic programming to specifyâ€¦ (More)