On the synthesis of a reactive module
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Genetic programming: on the programming of computers by means of natural selection
Genetic programming: on the programming of computers by means of natural selection
Genetic programming II: automatic discovery of reusable programs
Genetic programming II: automatic discovery of reusable programs
An axiomatic basis for computer programming
Communications of the ACM
Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence
Simple on-the-fly automatic verification of linear temporal logic
Proceedings of the Fifteenth IFIP WG6.1 International Symposium on Protocol Specification, Testing and Verification XV
Deriving a Scalable Algorithm for Mutual Exclusion
DISC '98 Proceedings of the 12th International Symposium on Distributed Computing
Characterizing Correctness Properties of Parallel Programs Using Fixpoints
Proceedings of the 7th Colloquium on Automata, Languages and Programming
Specification and verification of concurrent systems in CESAR
Proceedings of the 5th Colloquium on International Symposium on Programming
Economical solutions for the critical section problem in a distributed system (Extended Abstract)
STOC '77 Proceedings of the ninth annual ACM symposium on Theory of computing
Memoryful Branching-Time Logic
LICS '06 Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science
Synchronization Algorithms and Concurrent Programming
Synchronization Algorithms and Concurrent Programming
Strongly typed genetic programming
Evolutionary Computation
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Genetic programming with fitness based on model checking
EuroGP'07 Proceedings of the 10th European conference on Genetic programming
Model checking-based genetic programming with an application to mutual exclusion
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
Model Checking Driven Heuristic Search for Correct Programs
Model Checking and Artificial Intelligence
Semantic similarity based crossover in GP: the case for real-valued function regression
EA'09 Proceedings of the 9th international conference on Artificial evolution
The role of syntactic and semantic locality of crossover in genetic programming
PPSN'10 Proceedings of the 11th international conference on Parallel problem solving from nature: Part II
MCGP: a software synthesis tool based on model checking and genetic programming
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
Synthesizing solutions to the leader election problem using model checking and genetic programming
HVC'09 Proceedings of the 5th international Haifa verification conference on Hardware and software: verification and testing
Synthesizing geometry constructions
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Semantically-based crossover in genetic programming: application to real-valued symbolic regression
Genetic Programming and Evolvable Machines
Code mutation in verification and automatic code correction
TACAS'10 Proceedings of the 16th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Improving the generalisation ability of genetic programming with semantic similarity based crossover
EuroGP'10 Proceedings of the 13th European conference on Genetic Programming
Recent challenges and ideas in temporal synthesis
SOFSEM'12 Proceedings of the 38th international conference on Current Trends in Theory and Practice of Computer Science
A new framework for scalable genetic programming
Proceedings of the 14th annual conference companion on Genetic and evolutionary computation
Search-based software engineering: Trends, techniques and applications
ACM Computing Surveys (CSUR)
Searching for pareto-optimal randomised algorithms
SSBSE'12 Proceedings of the 4th international conference on Search Based Software Engineering
An interpolation based crossover operator for genetic programming
Proceedings of the 15th annual conference companion on Genetic and evolutionary computation
Hi-index | 0.00 |
Recently, genetic programming and model checking were combined for synthesizing algorithms that satisfy a given specification [7,6]. In particular, we demonstrated this approach by developing a tool that was able to rediscover the classical mutual exclusion algorithms [7] with two or three global bits. In this paper we extend the capabilities of the model checking-based genetic programming and the tool built to experiment with this approach. In particular, we add qualitative requirements involving locality of variables and checks, which are typical of realistic mutual exclusion algorithms. The genetic process mimics the actual development of mutual exclusion algorithms, by starting with an existing correct solution, which does not satisfy some performance requirements, and converging into a solution that satisfies these requirements. We demonstrate this by presenting some nontrivial new mutual exclusion algorithms, discovered with our tool.