Process algebra approach to distributed quantum computation and secure quantum communication. This project will develop effective methods for reasoning about the behaviours of distributed quantum computing and communicating systems. The developed methods will provide effective techniques for verifying security of quantum cryptographic protocols.
Symbolic synthesis of knowledge-based program implementations. Systems with concurrent streams of activity are ubiquitous in computer hardware and software designs, but are conceptually complex, and fraught with faults and inefficiency. The project aims to address these difficulties by automating aspects of system design, to relieve the designer of the need to reason about complex patterns of information flow.
Data Structures for Multi-Core. The project intends to improve data structures to reduce the bottleneck effect caused by multiple processor cores. The hardware used for a typical server platform has increasing numbers of processor cores. This growing number of cores creates a bottleneck effect when accessing the data that are structured in the shared memory of these servers. These contended data structures limit the server performance and new algorithms are necessary. The project proposes to rel ....Data Structures for Multi-Core. The project intends to improve data structures to reduce the bottleneck effect caused by multiple processor cores. The hardware used for a typical server platform has increasing numbers of processor cores. This growing number of cores creates a bottleneck effect when accessing the data that are structured in the shared memory of these servers. These contended data structures limit the server performance and new algorithms are necessary. The project proposes to relax traditional consistency criteria to provide high concurrency and to leverage optimistic executions that proceed concurrently but may roll back depending on the conflicts with other concurrent executions they encounter. The concurrent data structures would allow application performance to scale with higher numbers of hardware cores.Read moreRead less
Finding concurrency bugs in multithreaded software. This project aims to develop sound and practical techniques for detecting and eliminating concurrency bugs for object-oriented languages like Java, enabled by a new model for concurrent effects. The expected outcome is a novel technology that will significantly improve the safety, productivity and efficiency of large-scale concurrent programming.