The drinking philosophers problem
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Fairness
Reasoning about networks with many identical finite-state processes
PODC '86 Proceedings of the fifth annual ACM symposium on Principles of distributed computing
Script: a communication abstraction mechanism and its verification
Science of Computer Programming
Automatic Verification of Sequential Circuits Using Temporal Logic
IEEE Transactions on Computers
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Methodology for Developing Distributed Programs
IEEE Transactions on Software Engineering
Avoiding the state explosion problem in temporal logic model checking
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
Deadlock detection in distributed databases
ACM Computing Surveys (CSUR)
Distributed cooperation with action systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Characterizing finite Kripke structures in propositional temporal logic
Theoretical Computer Science - International Joint Conference on Theory and Practice of Software Development, P
Parallel program design: a foundation
Parallel program design: a foundation
Improved algorithms for distributed resource allocation
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Communication and concurrency
A generalization of Dijkstra's calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient temporal reasoning (extended abstract)
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
On the synthesis of a reactive module
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Process Synchronization: Design and Performance Evaluation of Distributed Algorithms
IEEE Transactions on Software Engineering
Proceedings of the Fourth Annual Symposium on Logic in computer science
A decidable temporal logic to reason about many processes
PODC '90 Proceedings of the ninth annual ACM symposium on Principles of distributed computing
Handbook of theoretical computer science (vol. B)
Sequential circuit verification using symbolic model checking
DAC '90 Proceedings of the 27th ACM/IEEE Design Automation Conference
Database transaction models for advanced applications
Database transaction models for advanced applications
Reasoning about concurrent programs with simplified temporal logics
Reasoning about concurrent programs with simplified temporal logics
Quantitative temporal reasoning
Real-Time Systems
Reasoning about systems with many processes
Journal of the ACM (JACM)
Automatic verification of sequential circuit designs
Mechanized reasoning and hardware design
Formal methods for the synthesis of concurrent programs from temporal logic specifications
Formal methods for the synthesis of concurrent programs from temporal logic specifications
Interacting processes: a multiparty approach to coordinated distributed programming
Interacting processes: a multiparty approach to coordinated distributed programming
Synthesis of Communicating Processes from Temporal Logic Specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
An axiomatic basis for computer programming
Communications of the ACM
Selected writings on computing: a personal perspective
Selected writings on computing: a personal perspective
A Discipline of Programming
Specifying and Enforcing Intertask Dependencies
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
On the Synthesis of an Asynchronous Reactive Module
ICALP '89 Proceedings of the 16th International Colloquium on Automata, Languages and Programming
Exploiting Symmetry In Temporal Logic Model Checking
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Realizability and Synthesis of Reactive Modules
CAV '94 Proceedings of the 6th International Conference on Computer Aided Verification
Decentralization of process nets with centralized control
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Performance of the ISIS Distributed Computing Toolkit
Performance of the ISIS Distributed Computing Toolkit
Branching Time Logic Strikes Back
Branching Time Logic Strikes Back
Synthesis of communicating processes from temporal logic specifications
Synthesis of communicating processes from temporal logic specifications
Synthesis of fault-tolerant concurrent programs
PODC '98 Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing
Efficient formal methods for the synthesis of concurrent programs
ACM SIGSOFT Software Engineering Notes
Synthesis of concurrent programs for an atomic read/write model of computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Synthesis of Large Concurrent Programs via Pairwise Composition
CONCUR '99 Proceedings of the 10th International Conference on Concurrency Theory
Synthesis of fault-tolerant concurrent programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Minimisation and minimal realisation in Span(Graph)
Mathematical Structures in Computer Science
Synthesis of the synchronization of general pipeline systems
Acta Cybernetica
An automatic abstraction technique for verifying featured, parameterised systems
Theoretical Computer Science
A Polynomial-Time Checkable Sufficient Condition for Deadlock-Freedom of Component-Based Systems
SOFSEM '07 Proceedings of the 33rd conference on Current Trends in Theory and Practice of Computer Science
Control of Parameterized Discrete Event Systems
Discrete Event Dynamic Systems
Automatic Verification of Fault-Tolerant Register Emulations
Electronic Notes in Theoretical Computer Science (ENTCS)
Verifying parameterized taDOM+ lock managers
SOFSEM'08 Proceedings of the 34th conference on Current trends in theory and practice of computer science
Feasibility of Stepwise Design of Multitolerant Programs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Efficiently verifiable conditions for deadlock-freedom of large concurrent programs
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Mechanical verification of automatic synthesis of fault-tolerant programs
LOPSTR'04 Proceedings of the 14th international conference on Logic Based Program Synthesis and Transformation
CBSE'06 Proceedings of the 9th international conference on Component-Based Software Engineering
A Lightweight Method for Automated Design of Convergence in Network Protocols
ACM Transactions on Autonomous and Adaptive Systems (TAAS) - Special Section: Extended Version of SASO 2011 Best Paper
Deadlock-freedom in component systems with architectural constraints
Formal Methods in System Design
Action-based discovery of satisfying subsets: A distributed method for model correction
Information and Software Technology
Synthesizing Concurrent Programs Using Answer Set Programming
Fundamenta Informaticae - Concurrency Specification and Programming CS&P
Hi-index | 0.00 |
Methods for synthesizing concurrent programs from temporal logicspecifications based on the use of a decision procedure for testingtemporal satisfiability have been proposed by Emerson and Clarkeand by Manna and Wolper. 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 acorrect solution. A serious drawback of these methods in practice,however, is that they suffer from the state explosion problem. Tosynthesize a concurrent system consisting of K sequential processes, each having N states in its local transition diagram, requiresconstruction of the global product-machine having about NKglobal states in general. This exponential growth in K makes it infeasible to synthesize systems composed of more than 2 or 3processes. In this article, we show how to synthesize concurrentsystems consisting of many (i.e., a finite but arbitrarily largenumber 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.