Theory people, what are your thoughts on this?
from an email to a faculty member:
---
Bar-David, Taubenfeld - Automatic Discovery of Mutual Exclusion Algorithms looks good.
from an email to a faculty member:
I wonder if ALADDIN would be a good place to find people to work with.
As I said, one of my main interests is creating cognitively-inspired AI, namely to automate mathematics work and programming work. Like computational scientific discovery (which automates scientific work), algorithm discovery can be approached either theoretically or empirically (and, in the best case, combination of the two).
Some of my ideas:
* For problems with well-understood solutions, one could automatically determine which algorithms / data structures to use, depending on the expected parameter values. I imagine this is already fully-baked.
* Jumping one level of automation, we could make this decision automatically, by automating average-case, worst-case analyses.
* Discovering new representations, and using "reductions" to prove that they represent the same information (an easy way to make a program more space-efficient is to use lossless compression, but this is probably not a good idea most of the time), and that they have nice accessibility properties (e.g. querying is fast, editing is fast, etc.).
* Discovering new algorithms, and "proving" (either theoretically or empirically) that they meet specifications (namely, (1) being equivalent to another algorithm and (2) being efficient).
* formalizing high-level programming concepts, like divide-and-conquer, and associated algorithm-discovery heuristics.
---
Bar-David, Taubenfeld - Automatic Discovery of Mutual Exclusion Algorithms looks good.