Results 1  10
of
19
Forms/3: A FirstOrder Visual Language to Explore the Boundaries of the Spreadsheet Paradigm
"... Although detractors of functional programming sometimes claim that functional programming is too difficult or counterintuitive for most programmers to understand and use, evidence to the contrary can be found by looking at the popularity of spreadsheets. The spreadsheet paradigm, a firstorder subs ..."
Abstract

Cited by 119 (40 self)
 Add to MetaCart
Although detractors of functional programming sometimes claim that functional programming is too difficult or counterintuitive for most programmers to understand and use, evidence to the contrary can be found by looking at the popularity of spreadsheets. The spreadsheet paradigm, a firstorder subset of the functional programming paradigm, has found wide acceptance among both programmers and end users. Still, there are many limitations with most spreadsheet systems.
An Overview of Temporal and Modal Logic Programming
 Proc. First Int. Conf. on Temporal Logic  LNAI 827
, 1994
"... . This paper presents an overview of the development of the field of temporal and modal logic programming. We review temporal and modal logic programming languages under three headings: (1) languages based on interval logic, (2) languages based on temporal logic, and (3) languages based on (multi)mo ..."
Abstract

Cited by 65 (6 self)
 Add to MetaCart
(Show Context)
. This paper presents an overview of the development of the field of temporal and modal logic programming. We review temporal and modal logic programming languages under three headings: (1) languages based on interval logic, (2) languages based on temporal logic, and (3) languages based on (multi)modal logics. The overview includes most of the major results developed, and points out some of the similarities, and the differences, between languages and systems based on diverse temporal and modal logics. The paper concludes with a brief summary and discussion. Categories: Temporal and Modal Logic Programming. 1 Introduction In logic programming, a program is a set of Horn clauses representing our knowledge and assumptions about some problem. The semantics of logic programs as developed by van Emden and Kowalski [96] is based on the notion of the least (minimum) Herbrand model and its fixedpoint characterization. As logic programming has been applied to a growing number of problem domai...
Chronolog Admits a Complete Proof Procedure
, 1993
"... Chronolog(Z) is a logic programming language based on a lineartime temporal logic with unbounded past and future. It is suitable for applications involving the notion of dynamic change such as modelling periodical changes, nonterminating computations and temporal databases. The declarative semanti ..."
Abstract

Cited by 16 (10 self)
 Add to MetaCart
Chronolog(Z) is a logic programming language based on a lineartime temporal logic with unbounded past and future. It is suitable for applications involving the notion of dynamic change such as modelling periodical changes, nonterminating computations and temporal databases. The declarative semantics of Chronolog(Z) programs are given in terms of temporal Herbrand models and the operational semantics in terms of a resolutiontype proof procedure called TiSLDresolution. TiSLDresolution is based on the axioms and the rules of inference of the underlying temporal logic. It is shown that TiSLDresolution is sound and complete. The equivalence of the declarative and the operational semantics of Chronolog(Z) programs is also established. AMS Subject Classification: 68N17 (Logic Programming). 1 Introduction Temporal logic has been widely used as a formalism in concurrent program specification and verification [24], modelling temporal databases [25] and various forms of temporal reasoning...
On Temporal Deductive Databases
, 1993
"... This paper introduces a temporal deductive database system featuring a logic programming language and an algebraic frontend. The language, called Temporal Datalog, is an extension of Datalog based on a simple temporal logic with two temporal operators, namely first and next. Programs of Temporal Da ..."
Abstract

Cited by 14 (3 self)
 Add to MetaCart
This paper introduces a temporal deductive database system featuring a logic programming language and an algebraic frontend. The language, called Temporal Datalog, is an extension of Datalog based on a simple temporal logic with two temporal operators, namely first and next. Programs of Temporal Datalog are considered as temporal deductive databases, specifying temporal relationships among data and providing base relations to Tra expressions. The minimummodel of a given Temporal Datalog program is regarded as the temporal database the program models intensionally. The algebraic frontend, called Tra, is a pointwise extension of the relational algebra upon the set of natural numbers. When needed during the evaluation of Tra expressions, slices of temporal relations over intervals can be retrieved from a given temporal deductive database by bottomup evaluation strategies. A modular extension of Temporal Datalog is also proposed, through which temporal relations created during the eval...
MultiDimensional Logic Programming
 Special Issue: Proc. of the 6th International Conf. on Computing and Information
, 1994
"... This paper introduces an extension of logic programming based on multidimensional logics. In a multidimensional logic the values of elements vary depending on more than one dimension, such as time and space. The resulting logic programming language is suitable for modelling objects which involve i ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
This paper introduces an extension of logic programming based on multidimensional logics. In a multidimensional logic the values of elements vary depending on more than one dimension, such as time and space. The resulting logic programming language is suitable for modelling objects which involve implicit and/or explicit temporal and spatial dependencies. The execution of programs of the language is based on a resolutiontype proof procedure called MSLDresolution. MSLDresolution is based on the axioms and rules of inference of the underlying multidimensional logic. Several example programs are given, including Conway's game of life. A spreadsheet interface to multidimensional logic programming is also outlined; it can be used as a powerful display tool with the advantage of nondeterminism inherent in logic programming. 1 Introduction Nonclassical logics such as temporal and modal logic have been successfully used as a formalism in many areas, including program specification and v...
Dealing with Multiple Granularity of Time in Temporal Logic Programming
 JOURNAL OF SYMBOLIC COMPUTATION
, 1996
"... Chronolog(MC) is an extension of logic programming based on a clocked temporal logic (CTL), a lineartime temporal logic with multiple granularity of time. A Chronolog(MC) program consists of a clock definition, a clock assignment and a program body, and each predicate symbol appearing in the pro ..."
Abstract

Cited by 10 (7 self)
 Add to MetaCart
Chronolog(MC) is an extension of logic programming based on a clocked temporal logic (CTL), a lineartime temporal logic with multiple granularity of time. A Chronolog(MC) program consists of a clock definition, a clock assignment and a program body, and each predicate symbol appearing in the program body is associated with a local clock through the clock definition and assignment. This paper investigates the logical basis of the language, presents a clocked temporal resolution where timematching is essential, and in particular proposes three algorithms for timematching. The paper also discusses the declarative semantics for Chronolog(MC) programs in terms of clocked temporal Herbrand models. It is shown that Chronolog(MC) programs also satisfy the minimum model semantics. The language can be used to model a wide range of simulation systems and other relevant tasks where the notion of dynamic change is central.
Chronolog(Z): Lineartime logic programming
 Proc. of the fifth International Conference on Computing and Information
, 1993
"... This paper introduces Chronolog(Z), a logic programming language based on a discrete lineartime temporal logic with unbounded past and future. Chronolog(Z) is suitable for applications involving the notion of dynamic change such as modeling nonterminating computations, the simulation of sequential ..."
Abstract

Cited by 9 (3 self)
 Add to MetaCart
(Show Context)
This paper introduces Chronolog(Z), a logic programming language based on a discrete lineartime temporal logic with unbounded past and future. Chronolog(Z) is suitable for applications involving the notion of dynamic change such as modeling nonterminating computations, the simulation of sequential circuits, and temporal databases. The execution of the programs of the language is based on a resolutiontype proof procedure called TiSLDresolution. A modular extension of Chronolog(Z) is proposed which can be used to model objects with internal memory. 1 Introduction Temporal logic has been successfully used as a formalism in concurrent program specification and verification, modeling temporal databases, and various forms of temporal reasoning. In temporal logic [15], the meanings of formulas vary depending on an implicit time parameter and elements from different moments in time can be combined through the use of temporal operators, not by explicit references to time. More recently, a n...
Temporal and Modal Logic Programming Languages
 In A. Kent and J.G. Williams (Eds.), Encyclopedia of Microcomputers
, 2001
"... Temporal and modal logics have been used in many applications in Arti cial Intelligence and Computer Science for the manipulation of information with timedependent or, in general, contextdependent properties. Knowledge representation and reasoning, temporal planning, simulation, temporal veri catio ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
Temporal and modal logics have been used in many applications in Arti cial Intelligence and Computer Science for the manipulation of information with timedependent or, in general, contextdependent properties. Knowledge representation and reasoning, temporal planning, simulation, temporal veri cation, and description of agent systems, are among the applications for which temporal and modal logics have been proven useful. Programming languages based on Temporal or Modal Logics, provide powerful executable formalisms for implementing such applications. In this article we introduce the basic notions behind temporal and modal logic programming languages. We brie y present representative temporal and modal logic programming languages and give examples of their use.
Extending Temporal Logic Programming with Choice Predicates Nondeterminism
 Journal of Logic and Computation
, 1994
"... In temporal logic programming, a stream can be specified by a singlevalued, timevarying predicate which, at any given moment in time, represents the corresponding element in the stream. However, due to inherent nondeterminism in logic programming, timevarying predicates do not necessarily repres ..."
Abstract

Cited by 6 (3 self)
 Add to MetaCart
(Show Context)
In temporal logic programming, a stream can be specified by a singlevalued, timevarying predicate which, at any given moment in time, represents the corresponding element in the stream. However, due to inherent nondeterminism in logic programming, timevarying predicates do not necessarily represent singlevalued relations at any given moment in time. Choice predicates are also timevarying predicates, but, in principle, they act like a dataflow node with multiple input lines which nondeterministically selects one of its inputs as output. Therefore they are guaranteed to be singlevalued at all moments in time, and they can be regarded as representing "nondeterministic" streams. Users do not define choice predicates, they are supplied automatically for all predicates defined in temporal logic programs. Inputs to choice predicates are supplied by the corresponding predicates. When the connection between choice predicates and the corresponding predicates is established, we obtain no...
MultiDimensional Logic Programming: Theoretical Foundations
 Theoretical Computer Science
, 1997
"... This paper introduces an extension of logic programming based on multidimensional logics, called MLP. In a multidimensional logic the values of elements vary depending on more than one dimension, such as time and space. The resulting logic programming language is suitable for modelling objects whi ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
(Show Context)
This paper introduces an extension of logic programming based on multidimensional logics, called MLP. In a multidimensional logic the values of elements vary depending on more than one dimension, such as time and space. The resulting logic programming language is suitable for modelling objects which involve implicit and/or explicit temporal and spatial dependencies. The execution of programs of the language is based on a resolutiontype proof procedure called MSLDresolution (for Multidimensional SLDresolution). MSLDresolution is based on the axioms and rules of inference of the underlying multidimensional logic. The paper also establishes the declarative semantics of multidimensional logic programs, based on an extension of Herbrand models. In particular, it is shown that MLP programs satisfy the minimum model semantics. A novel multidimensional interface to MLP is also outlined; it can be used as a powerful development tool with the advantage nondeterminism inherent in logic p...