Cache Oblivious Range Searching (2006-2007)
This project aims to fully explore the problems of 2 and 3 sided range searching in the cache oblivious model, looking for optimal online and offline data structures.
The project also aims to explore the possible application of extremal combinatorics to cache oblivious lower bounds, as an analog to the use of extremal set theory in I/O efficient (cache aware) lower bounds.
Convex Analysis (2003-2005)
This project focussed on the development of algorithms for symbolically performing typical convex analysis operations. It was the focus of my MSc research, and is currently on hold. I will, however, entertain suggestions for improvements to the code, or additional features if you would find them useful. I'd love to hear who's using this code!
All of the following was developed with Maple 7 and Maple 8, so there may be some issues in later versions!
Update November 2005 Some of the numerical code is known to be broken under Maple 9.5 and 10. However, the SCAT package still works. I will release a new version when I get around to it! A comprehensive usage guide for the following packages can be found here.
A worksheet duplicating all of the examples in Chapter 4 of my MSc thesis may be found here.
Symbolic Convex Analysis Toolkit: A package for symbolic Fenchel conjugation (and more!) in Maple. Source code may be found here.
Computational Convex Analysis Toolkit: A package for numeric Fenchel conjugation (and more!) in Maple. Source code may be found here.