- Theory of distributed computation, complexity theory, and the design and analysis of algorithms and data structures;
- Relationships between different models of distributed systems;
- Design and analysis of algorithms and data structures for multi-process systems, in which processes communicate via shared memory, message passing or other means;
- Complexity lower bounds and impossibility results for such systems.
Eric Ruppert was educated at the University of Toronto. He has taught computer science at York University since 2000. He has also spent time as a postdoctoral fellow at Brown University and as a visiting professor at the École Polytechnique Fédérale de Lausanne. His research interests are in the theory of distributed computing, including both algorithm design and lower bound proofs. Lately, his research has been focused on the design and analysis of shared-memory data structures that can be used to exploit the power of multi-core architectures. At York, he teaches courses on the foundations of computer science, and enjoys coaching students for the annual ACM programming contest.
- Hagit Attiya, Rachid Guerraoui and Eric Ruppert. Partial snapshot objects. In Proc. 20th ACM Symposium on Parallelism in Algorithms and Architectures, pages 336-343, 2008.
- Trevor Brown, Faith Ellen and Eric Ruppert. Pragmatic primitives for non-blocking data structures. To appear in Proc. 32nd ACM Symposium on Principles of Distributed Computing, 2013.
- Carole Delporte-Gallet, Hugues Fauconnier, Rachid Guerraoui, Anne-Marie Kermarrec, Eric Ruppert and Hung Tran-The. Byzantine agreement with homonyms. To appear in Distributed Computing, 2013.
- Faith Ellen, Panagiota Fatourou, Eric Ruppert and Franck van Breugel. Non-blocking Binary Search Trees. In Proc. 29th ACM Symposium on Principles of Distributed Computing, pages 131-140, 2010.