Decision procedures and expressiveness in the temporal logic of branching time
Journal of Computer and System Sciences
A multiprocess network logic with temporal and spatial modalities
Journal of Computer and System Sciences
Reasoning about networks with many identical finite-state processes
PODC '86 Proceedings of the fifth annual ACM symposium on Principles of distributed computing
The complexity of reasoning about knowledge and time
STOC '86 Proceedings of the eighteenth annual ACM symposium on Theory of computing
Efficient temporal reasoning (extended abstract)
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
In transition from global to modular temporal reasoning about programs
Logics and models of concurrent systems
Synthesis of Communicating Processes from Temporal Logic Specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Synthesis of Communicating Processes from Temporal Logic Specifications
Logic of Programs, Workshop
Synthesis of communicating processes from temporal logic specifications
Synthesis of communicating processes from temporal logic specifications
Reasoning about infinite computation paths
SFCS '83 Proceedings of the 24th Annual Symposium on Foundations of Computer Science
Efficient temporal reasoning (extended abstract)
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A decidable temporal logic to reason about many processes
PODC '90 Proceedings of the ninth annual ACM symposium on Principles of distributed computing
Specifying and Enforcing Intertask Dependencies
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
Object Model Driven Code Generation for the Enterprise
RSP '01 Proceedings of the 12th International Workshop on Rapid System Prototyping
An algorithmic framework for synthesis of concurrent programs
ATVA'11 Proceedings of the 9th international conference on Automated technology for verification and analysis
Synthesis of reo circuits for implementation of component-connector automata specifications
COORDINATION'05 Proceedings of the 7th international conference on Coordination Models and Languages
Hi-index | 0.00 |
Methods for synthesizing concurrent programs from Temporal Logic specifications based on the use of a decision procedure for testing temporal satisfiability have been proposed by Emerson & Clarke [EC82] and Manna & Wolper [MW84]. An important advantage of these synthesis methods is that they obviate the need to manually compose a program and manually construct a proof of its correctness. One only has to formulate a precise problem specification; the synthesis method then mechanically constructs a correct solution. A serious drawback of these methods in practice, however, is that they suffer from the state explosion problem. To synthesize a concurrent system consisting of K sequential processes, each having N states in its local transition diagram, requires construction of the global product-machine having at least NK global states in general. This exponential growth in K makes it infeasible to synthesize systems composed of more than 2 or 3 processes. In this paper, we show how to synthesize concurrent systems consisting of many (i.e., a finite but arbitrarily large number K of) similar sequential processes. Our approach avoids construction of the global product-machine for K processes; instead, it constructs a two process product-machine for a single pair of generic sequential processes. The method is uniform in K, providing a simple template that can be instantiated for each process to yield a solution for any fixed K. The method is also illustrated on synchronization problems from the literature.