- Safety and security of complex hardware and software computer systems (specification, design, implementation, testing, validation, verification, maintenance, watermarking, steganography, obfuscation);
- Programming (languages, compilation, transformation, optimization, verification, contract inference, refactoring);
- Formal methods (proof, theorem proving, model-checking, typing, and static analysis);
- Theory and applications of abstract interpretation (sound methods and algorithms for approximating undecidable or highly complex computational structures).