We discuss the projection temporallogic (PTL), based on a primitiveprojection operator, prj. A framing technique is also presented, using which a synchronizationoperator, await, is defined within the underlying logic...
详细信息
We discuss the projection temporallogic (PTL), based on a primitiveprojection operator, prj. A framing technique is also presented, using which a synchronizationoperator, await, is defined within the underlying logic. A framed temporal logic programminglanguage (FTLL) is presented. To illustrate how to use both the language and framing technique, someexamples are given.
The development of types is an important but challenging issue in temporal logic programming. In this paper, we investigate how to formalize and implement types in the temporal logic programming language MSVL, which i...
详细信息
The development of types is an important but challenging issue in temporal logic programming. In this paper, we investigate how to formalize and implement types in the temporal logic programming language MSVL, which is an executable subset of projection temporallogic (PTL). Specifically, we extend MSVL with a few groups of types including basic data types, pointer types and struct types. On each type, we specify the domain of values and define some standard operations in terms of logic functions and predicates. Then, it is feasible to formalize statements of type declaration of program variables and statements of struct definitions as logic formulas. As the implementation of the theory, we extend the MSV toolkit with the support of modeling, simulation and verification of typed MSVL programs. Applications to the construction of AVL tree and ordered list show the practicality of the language.
A Projection temporallogic is discussed and some of its laws are given. After that, an executable temporal logic programming language, called Framed Tempura, is formalized. A minimal model-based approach for framing ...
详细信息
A Projection temporallogic is discussed and some of its laws are given. After that, an executable temporal logic programming language, called Framed Tempura, is formalized. A minimal model-based approach for framing in temporal logic programming is presented. Since framing destroys monotonicity, canonical models - used to define the semantics of non-framed programs - are no longer appropriate. To deal with this, a minimal model theory is developed, using which the temporal semantics of framed programs is captured. The existence of a minimal model for a given framed program is demonstrated. A synchronous communication mechanism for concurrent programs is provided by means of the framing technique and minimal model semantics. (C) 2007 Elsevier B.V. All rights reserved.
We consider stratified negation in temporal logic programming. We demonstrate that the cycle-sum test (which was initially proposed for detecting deadlocks in the context of temporal functional programming) can also b...
详细信息
We consider stratified negation in temporal logic programming. We demonstrate that the cycle-sum test (which was initially proposed for detecting deadlocks in the context of temporal functional programming) can also be used as a syntactic stratification test for temporal logic programming. Therefore, on the one hand we exhibit a class of temporallogic programs with negation which have a well-defined semantics, and on the other hand we provide further evidence that the cycle-sum test is a fundamental one in the area of temporalprogramming. (C) 2001 Elsevier Science B.V. All rights reserved.
In this paper, we propose a new resolution proof procedure for the branching-time logicprogramming language Cactus. The particular strength of the new proof procedure, called CSLD-resolution, is that it can handle, i...
详细信息
In this paper, we propose a new resolution proof procedure for the branching-time logicprogramming language Cactus. The particular strength of the new proof procedure, called CSLD-resolution, is that it can handle, in a more general way, open-ended queries, i.e. goal clauses that include atoms which do not refer to specific moments in time, without the need of enumerating all their canonical instances. We also prove soundness, completeness and independence of the computation rule for CSLD-resolution. The new proof procedure overcomes the limitations of a family of proof procedures for temporal logic programming languages, which were based on the notions of canonical program and goal clauses. Moreover, it applies directly to Chronolog programs and it can be easily extended to apply to multi-dimensional logic programs as well as to Chronolog(MC) programs.
In this article, we present a declarative propositional temporal logic programming language called TeDiLog that is a combination of the temporal and disjunctive paradigms in logicprogramming. TeDiLog is, syntacticall...
详细信息
In this article, we present a declarative propositional temporal logic programming language called TeDiLog that is a combination of the temporal and disjunctive paradigms in logicprogramming. TeDiLog is, syntactically, a sublanguage of the well-known Propositional Linear-time temporallogic (PLTL). TeDiLog allows both eventualities and always-formulas to occur in clause heads and also in clause bodies. To the best of our knowledge, TeDiLog is the first declarative temporal logic programming language that achieves this high degree of expressiveness. We establish the logical foundations of our proposal by formally defining operational and logical semantics for TeDiLog and by proving their equivalence. The operational semantics of TeDiLog relies on a restriction of the invariant-free temporal resolution procedure for PLTL that was introduced by Gaintzarain et al. in [2013]. We define a fixpoint semantics that captures the reverse (bottom-up) operational mechanism and prove its equivalence with the logical semantics. We also provide illustrative examples and comparison with other proposals.
In this paper we introduce the logicprogramming language Disjunctive Chronology which combines the programming paradigms of temporal and disjunctive logicprogramming. Disjunctive Chronolog is capable of ex pressing ...
详细信息
In this paper we introduce the logicprogramming language Disjunctive Chronology which combines the programming paradigms of temporal and disjunctive logicprogramming. Disjunctive Chronolog is capable of ex pressing dynamic behaviour as well as uncertainty, two notions that are very common in a variety of real systems. We present the minimal temporal model semantics and the fixpoint semantics for the new programming language and demonstrate their equivalence. We also show how proof procedures developed for disjunctive logic programs can be easily extended to apply to Disjunctive Chronolog programs.
Atomic blocks, a high-level language construct that allows programmers to explicitly specify the atomicity of operations without worrying about the implementations, are a promising approach that simplifies concurrent ...
详细信息
Atomic blocks, a high-level language construct that allows programmers to explicitly specify the atomicity of operations without worrying about the implementations, are a promising approach that simplifies concurrent programming. On the other hand, temporallogic is a successful model in logicprogramming and concurrency verification, but none of existing temporalprogramming models supports concurrent programming with atomic blocks yet. In this paper, we propose a temporalprogramming model (αPTL) which extends the projection temporallogic (PTL) to support concurrent programming with atomic blocks. The novel construct that formulates atomic execution of code blocks, which we call atomic interval formulas, is always interpreted over two consecutive states, with the internal states of the block being abstracted away. We show that the framing mechanism in projection temporallogic also works in the new model, which consequently supports our development of an executive language. The language supports concurrency by introducing a loose interleaving semantics which tracks only the mutual exclusion between atomic blocks. We demonstrate the usage of αPTL by modeling and verifying both the fine-grained and coarse-grained concurrency.
The complexity of the satisfiability problem for 2 Horn fragments in propositional linear-time temporallogic is investigated. The first one contains 2 temporal connectives - eventuality and always only - and the 2nd...
详细信息
The complexity of the satisfiability problem for 2 Horn fragments in propositional linear-time temporallogic is investigated. The first one contains 2 temporal connectives - eventuality and always only - and the 2nd one contains an additional next-time connective. It has been shown that the satisfiability problem for linear-time temporallogic whose temporal connectives include eventuality and always only is NP-complete and is PSPACE-complete if additional next-time connective is permitted, according to Sistla and Clarke (1985). It is shown that the complexity of the satisfiability problem remains unchanged even if the input is restricted to temporal Horn formulas. In other words, if the next-time connective is not allowed to occur in temporal Horn formulas, the problem is NP-complete; otherwise, it is PSPACE-complete.
Modeling, Simulation and Verification Language (MSVL) is a useful formalism for specification and verification of concurrent systems. To make it more practical and easier to use, we extend MSVL with external and inter...
详细信息
Modeling, Simulation and Verification Language (MSVL) is a useful formalism for specification and verification of concurrent systems. To make it more practical and easier to use, we extend MSVL with external and internal function calls. To do so, the syntax of function definitions and function calls is formalized. Then, the syntax of expressions in MSVL is extended by including function calls. Further, the evaluation rules are redefined. Moreover, the set of statements in MSVL is also extended and the semantics of function call statements is formalized. In addition, the existence of minimal models of MSVL programs involving new added statements is proved. Finally, an example is given to illustrate how to interpret function calls in practice with MSVL. (C) 2016 Elsevier B.V. All rights reserved.
暂无评论