Overview

This seminar is an opportunity to become familiar with current research in software engineering and more generally with the methods and challenges of scientific research.

Each student will be asked to study some papers from the recent software engineering literature and review them. This is an exercise in critical review and analysis. Active participation is required (a presentation of a paper as well as participation in discussions).

The aim of this seminar is to introduce students to recent research results in the area of programming languages and software engineering. To accomplish that, students will study and present research papers in the area as well as participate in paper discussions. The papers will span topics in both theory and practice, including papers on program verification, program analysis, testing, programming language design, and development tools.

Schedule

DateTitlePresenterSlidesTA
20 Sep Introduction to the seminar Dimitar I. Dimitrov PDF
4 Oct Consistency Analysis of Data-Usage Purposes in Mobile Apps Joanna Brodbeck Jasper
4 Oct CryptOpt: Verified Compilation with Randomized Program Search for Cryptographic Primitives Luis Maltsis Dimitar
11 Oct CODEIPPROMPT: Intellectual Property Infringement Assessment of Code Language Models Athena Wang Robin
11 Oct Code Translation with Compiler Representations Yannik Collenberg Robin
18 Oct Efficient Training of Language Models to Fill in the Middle Niccolò Cavallini Jingxuan
18 Oct Large Language Models for Code: Security Hardening and Adversarial Testing Arjun Butani Jingxuan
25 Oct LEVER: Learning to Verify Language-to-Code Generation with Execution Ahmed Malanovic Luca
25 Oct Prompting Is Programming: A Query Language for Large Language Models Charles Kremer Luca
01 Nov ItyFuzz: Snapshot-Based Fuzzer for Smart Contract Elias Achermann Shaohua
01 Nov Don’t Look UB: Exposing Sanitizer-Eliding Compiler Optimizations Jara Hüsser Shaohua
8 Nov ZeeStar: Private Smart Contracts by Homomorphic Encryption and Zero-knowledge Proofs Alexander Staikov Dimitar
8 Nov λPSI: exact inference for higher-order probabilistic programs Noah Fecker Jasper
15 Nov RVSDG: An Intermediate Representation for Optimizing Compilers Nicolas Wehrli Yann
15 Nov Learning Compiler Pass Orders using Coreset and Normalized Value Prediction Dillon Martinelli Yann
22 Nov Fuzzing Loop Optimizations in Compilers for C++ and Data-Parallel Languages Louis Schnyder Theo
22 Nov All you need is superword-level parallelism: systematic control-flow vectorization with SLP Jonathan Chung Theo
29 Nov Barriers in Front-End Web Development Andrei Munteanu Sverrir
29 Nov Conversing with Copilot: Exploring Prompt Engineering for Solving CS1 Problems Using Natural Language Valerio Thrier Sverrir
06 Dec Computing summaries of string loops in C for better testing and refactoring Yevhen Royenko Thodoris
06 Dec Automated Detection of Under-Constrained Circuits in Zero-Knowledge Proofs Daniel Fadeev Thodoris
13 Dec Pinolo: Detecting Logical Bugs in Database Management Systems with Approximate Query Synthesis Anabel Minas Zuming
13 Dec Automatic Detection of Performance Bugs in Database Systems using Equivalent Queries Luis Bapst Zuming