The Secure, Reliable, and Intelligent Systems Lab (SRI) is a research group in the Department of Computer Science at ETH Zurich and part of the ETH ICE center. We work at the broad intersection of machine learning and formal reasoning with applications to safe artificial intelligence, probabilistic and quantum programming, AI-driven coding, security and others. Our work led to three ETH spin-offs: DeepCode.ai, ChainSecurity, and LatticeFlow.
Safe and Interpretable Artificial Intelligence
In this project we explore new methods and systems which can reason about AI safety, including deep learning. Concretely, we have introduced new approaches and tools for certifying and training robust and interpretable deep neural networks.
Machine Learning for Programming
This project combines programming languages and machine learning for building statistical programming engines — systems built on top of machine learning models of large codebases. These are new kinds of engines which can provide statistically likely solutions to problems that are difficult or impossible to solve with traditional techniques.
Probabilistic Programming and Applications
This project consists of research on building efficient probabilistic solvers and applying existing probabilistic solvers to different practical application domains, such as security and computer networks.
ast Numerical Abstract Domains
In this project we develop optimized implementations of popular numerical abstract domains such as Polyhedra, Octagon and Zonotopess for static analysis of programs and neural networks. We design improved algorithms, online decomposition as well as performance optimizations from linear algebra such as vectorization, locality of reference, scalar replacement etc. to significantly improve the performance of numerical domains.
ELINA: ETH Library for Numerical AnalysisELINA contains optimized implementations of popular numerical abstract domains such as Polyhedra, Octagon and Zones
In this project we develop new techniques to develop, analyze, and reason about quantum programs.
Computer networks are hard to manage. In this project, we develop novel systems for reasoning about computer networks and automatically synthesizing their configurations.
Net2TextNet2Text assists network operators in reasoning about their network-wide forwarding state by directly answering to questions expressed in natural language
NetCompleteNetComplete automatically autocompletes configurations for routers running multiple interacting protocols, including policy-based protocols (BGP) and shortest-path protocols (OSPF), and it also supports static routes
SyNETSyNet automatically synthesizes configurations for routers running multiple interacting protocols, including policy-based protocols (BGP) and shortest-path protocols (OSPF), and it also supports static routes
BayonetBayonet is a language and a system for reasoning about probabilistic networks
In this project we develop accurate computational approaches to biological problems.
AStarix: Fast and Optimal Sequence-to-Graph AlignmentAStarix is a sequence-to-graph semi-global aligner based on A* shortest path algorithm. It supports general graphs and finds alignments that are optimal according to edit-distance with non-negative weights.
In this project we build novel solutions for securing blockchain projects, including automated audit platforms for certifying the correctness of smart contracts
ChainSecurityChainSecurity brings advanced security tools and solutions for blockchains