On the synthesis of a reactive module
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the Fourth Annual Symposium on Logic in computer science
Handbook of theoretical computer science (vol. B)
Formal Methods in System Design - Special issue on symmetry in automatic verification
ACM Transactions on Database Systems (TODS)
Synthesis of concurrent systems with many similar processes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Model checking
Synthesis of Communicating Processes from Temporal Logic Specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Synthesis of concurrent programs for an atomic read/write model of computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Discipline of Programming
Knowledge Representation, Reasoning, and Declarative Problem Solving
Knowledge Representation, Reasoning, and Declarative Problem Solving
Characterizations of the Stable Semantics by Partial Evaluation
LPNMR '95 Proceedings of the Third International Conference on Logic Programming and Nonmonotonic Reasoning
Constraint Logic Programming for Local and Symbolic Model-Checking
CL '00 Proceedings of the First International Conference on Computational Logic
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
The DLV system for knowledge representation and reasoning
ACM Transactions on Computational Logic (TOCL)
Head-elementary-set-free logic programs
LPNMR'07 Proceedings of the 9th international conference on Logic programming and nonmonotonic reasoning
Logic programming for knowledge representation
ICLP'07 Proceedings of the 23rd international conference on Logic programming
A 25-year perspective on logic programming
Synthesis from temporal specifications using preferred answer set programming
ICTCS'05 Proceedings of the 9th Italian conference on Theoretical Computer Science
Hi-index | 0.00 |
We address the problem of the automatic synthesis of concurrent programs within a framework based on Answer Set Programming ASP. Every concurrent program to be synthesized is specified by providing both the behavioural and the structural properties it should satisfy. Behavioural properties, such as safety and liveness properties, are specified by using formulas of the Computation Tree Logic, which are encoded as a logic program. Structural properties, such as the symmetry of processes, are also encoded as a logic program. Then, the program which is the union of these two encoding programs, is given as input to an ASP system which returns as output a set of answer sets. Finally, each answer set is decoded into a synthesized program that, by construction, satisfies the desired behavioural and structural properties.