~/conference

OOPSLA 2020

date:2020-11-15..2020-11-20
location:-- online --
series:OOPSLA · 7 editions

PACMPL Issue OOPSLA 2020 seeks contributions on all aspects of programming languages and software engineering. Authors of papers published in PACMPL Issue OOPSLA 2020 will be invited to present their work in the OOPSLA track of the SPLASH virtual conference in November. Papers may target any stage of software development, including requirements, modeling, prototyping, design, implementation, generation, analysis, verification, testing, evaluation, maintenance, and reuse of software systems. Contributions may include the development of new tools (such as language front-ends, program analyse ...

titleauthorlength
Koord: A Language for Programming and Verifying Distributed Robotics ApplicationRitwika Ghosh, Chiao Hsieh, Sasa Misailovic, Sayan Mitra15m
Koord provides a high-level language that separates distributed coordination from platform-dependent control, with Controller Ports for sensing, planning and…
Talk on
TacTok: Semantics-Aware Proof SynthesisEmily First, Yuriy Brun, Arjun Guha15m
Automatic proof synthesis that combines both goal semantics and prior scripts, not just one or the other. TacTok models proof state and proof script together…
Talk on
Learning-Based Controlled Concurrency TestingSuvam Mukherjee, Pantazis Deligiannis, Arpita Biswas, Akash Lal15m
A reinforcement learning scheduler based on Q-learning is implemented inside P# to choose scheduling decisions and data non-determinism values; it optimizes…
Talk on
Macros for Domain-Specific LanguagesMichael Ballantyne, Alexis King, Matthias Felleisen17m
Presents an implementation of a two-layer expander API for Racket that lets internal DSLs get their own expander and compiler while reusing host services like…
Talk on
Gradual Verification of Recursive Heap Data StructuresJenna Wise, Jenna DiVincenzo, Johannes Bader, Cameron Wong, Jonathan Aldrich, Éric Tanter, Joshua Sunshine15m
Practical system that extends a base static verifier with gradual formulas and optimistic strengthening, inserting runtime checks when a missing spec was…
Talk on
Just-in-Time Learning for Bottom-Up Enumerative SynthesisShraddha Barke, Hila Peleg, Nadia Polikarpova16m
Builds a solver called Probe that uses just-in-time learning to update PCFG production costs from cheapest partial solutions and then runs guided bottom-up…
Talk on
Foundations of Empirical Memory Consistency TestingJake Kirkham, Tyler Sorensen, Esin Tureci, Margaret Martonosi15m
Claims a reproducible, efficient GPU litmus-testing workflow that finds weak-memory behaviors by combining a new OpenCL tool, randomized 737000 parameter sets…
Talk on
Neural Reverse Engineering of Stripped Binaries using Augmented Control Flow GraphsYaniv David, Uri Alon, Eran Yahav14m
Procedure name prediction for stripped binaries using a prototype called Nero that reconstructs CFGs, stitches paths, and builds augmented call sites with…
Talk on
Guiding Dynamic Programing via Structural Probability for Accelerating Programming by ExampleRuyi Ji, Yican Sun, Yingfei Xiong, Zhenjiang Hu17m
MaxFlash combines dynamic programming (PROSE-style witness functions and caching) with structural probability from Euphony, using a topdown prediction model to…
Talk on
Revisiting Iso-Recursive SubtypingYaoda Zhou, Jinxu Zhao13m
Proposes that iso-recursive subtyping is equivalent to checking all finite n-times unfolding inclusions, and then shows an algorithmic reduction: only 1- and…
Talk on
Adding Interactive Visual Syntax to Textual CodeLeif Andersen, Michael Ballantyne, Matthias Felleisen12m
Extends textual languages with reusable interactive-syntax extensions that embed runnable visual editors into source code; examples include a tree editor that…
Talk on
Counterexample-Guided Correlation Algorithm for Translation ValidationShubhani Gupta, Abhishek Rose, Sorav Bansal16m
An algorithm constructs product CFGs that correlate sets of source paths with assembly paths using pathset correlation to avoid exponential path blowup, and it…
Talk on
Contextual Dispatch for Function SpecializationOlivier Flückiger, Guido Chari, Ming-Ho Yee, Jan Ječmen, Jakob Hain, Jan Vitek16m
Built a JIT called Ř JIT compiler that specializes functions to dynamic call-site properties using contextual dispatch: contexts form a comparable lattice…
Talk on
Feedback-Driven Semi-supervised Synthesis of Program TransformationsXiang Gao, Shraddha Barke, Arjun Radhakrishna, Gustavo Soares, Sumit Gulwani, Alan Leung, Nachiappan Nagappan, Ashish Tiwari16m
Semi-supervised synthesis combines input-output examples with extra unlabeled inputs (cursor locations and mined candidates) and uses anti-unification modulo…
Talk on
Regex Matching with Counting-Set AutomataLenka Turoňová, Lukáš Holík, Ondřej Lengál, Olli Saarikivi, Margus Veanes, Tomáš Vojnar14m
Paper builds a counting-set automata implementation (a CA prototype in Microsoft’s automata library) that determinises regexes with counters without exploding…
Talk on
Unifying Execution of Imperative Generators and Declarative SpecificationsPengyu Nie, Marinela Parovic, Zhiqiang Zang, Sarfraz Khurshid, Aleksandar Milicevic, Milos Gligoric15m
Deuterium implements executable contracts as Java code combining an imperative generator that builds the solution backbone and a declarative spec in 2H that…
Talk on
Verifying Replicated Data Types with Typeclass Refinements in Liquid HaskellYiyun Liu, Yiyun Liu, James Parker, Patrick Redmond, Lindsey Kuper, Michael Hicks, Niki Vazou16m
Extension to Liquid Haskell adds refined typeclasses in Liquid Haskell so class laws become checkable at Core; the implementation verifies laws for 34…
Talk on
A Structural Model for Contextual Code ChangesShaked Brody, Uri Alon, Eran Yahav13m
A structural model predicts the next edit given a contextual code change by modeling edit likelihood over AST paths rather than generating full files. The…
Talk on
Actor Concurrency Bugs: A Comprehensive Study on Symptoms, Root Causes, API Usages, and DifferencesMehdi Bagherzadeh, Nicholas Fireman, Anas Shawesh, Raffi Khatchadourian18m
Dataset includes 186 real-world Akka bugs mined from 130 Stack Overflow items and 56 GitHub commits, manually validated. Bugs classify into five symptoms…
Talk on
Structure Interpretation of Text FormatsSumit Gulwani, Vu Le, Arjun Radhakrishna, Ivan Radiček, Mohammad Raza15m
An extensible program-synthesis system called Unravel framework learns sequences of parametrized parsing rules (Regex-Split, Delimiter-Split, String-Split…
Talk on
Finding Bugs in Database Systems via Query PartitioningManuel Rigger, Zhendong Su15m
Automated testing partitions a query into three cases — ϕ, NOT ϕ, and ϕ IS NULL — then recomposes them (using UNION ALL) and compares results; implemented as…
Talk on
Testing Consensus Implementations using Communication ClosureCezara Drăgoi, Constantin Enea, Burcu Kulahcioglu Ozkan, Rupak Majumdar, Filip Niksic15m
Presents a randomized tester that exploits communication closure to sample k-periodic uniform lossy synchronous executions instead of all asynchronous…
Talk on
Taming Callbacks for Smart Contract ModularityElvira Albert, Shelly Grossman, Noam Rinetzky, Clara Rodríguez-Núñez, Albert Rubio, Mooly Sagiv15m
Paper claims the first sound semantic static algorithm to ensure callbacks don’t break modular reasoning, and ships ECFChecker that decompiles EVM bytecode…
Talk on
ιDOT: A DOT Calculus with Object InitializationIfaz Kabir, Yufeng Li, Ondřej Lhoták14m
Introduces iDOT, a DOT calculus that models Scala-style fields, strict field reads, and constructors and enforces initialization so null pointer exceptions…
Talk on
World Age in Julia: Optimizing Method Dispatch in the Presence of EvalJulia Belyakova, Benjamin W Chung, Jack Gelinas, Jameson Nash, Ross Tate, Jan Vitek14m
Julia uses a world-age semantics that delays visibility of methods added by eval until between top-level calls, enabling safe inlining and avoiding…
Talk on
Resolution as Intersection Subtyping via Modus PonensKoar Marntirosian, Tom Schrijvers, Georgios Karachalias15m
Integrates resolution into coercive subtyping with intersection types by adding a modus ponens rule that, when a context type is both a function and its…
Talk on
Digging for Fold: Synthesis-Aided API Discovery for HaskellMichael B. James, Zheng Guo, Ziteng Wang, Shivani Doshi, Hila Peleg, Ranjit Jhala, Nadia Polikarpova16m
A synthesis-backed search called Hoogle Plus indexes popular Haskell libraries and synthesizes compositions that match either a provided type or inferred types…
Talk on
Do You Have Space for Dessert? A Verified Space Cost Semantics for CakeML ProgramsAlejandro Gómez-Londoño, Johannes Åman Pohjola, Hira Taqdees Syeda, Magnus O. Myreen, Yong Kiam Tan15m
Presents a concrete, verified space-cost semantics for CakeML by formalizing a dataLang cost semantics that measures heap and stack with a size_of function…
Talk on
Differentially-Private Software Frequency Profiling under Linear ConstraintsHailong Zhang, Yu Hao, Sufian Latif, Raef Bassily, Atanas Rountev14m
Reformulates local differential privacy for frequency vectors that must satisfy software-specific linear inequalities and gives a concrete noise calibration…
Talk on
A Large-Scale Longitudinal Study of Flaky TestsWing Lam, Stefan Winter, Anjiang Wei, Tao Xie, Darko Marinov, Jonathan Bell16m
Empirical study applies iDFlakies and NonDex plus Isolation and One-By-One to 68 Maven Java projects, detecting 684 flaky tests and evaluating 245 at their…
Talk on
Interactive Synthesis of Temporal Specifications from Examples and Natural LanguageIvan Gavran, Eva Darulova, Rupak Majumdar16m
LTLTalk synthesizes co-safe LTL specifications from one natural-language command plus a single demonstration by encoding structure and semantics as an SMT…
Talk on
Programming and Reasoning with Partial ObservabilityEric Atkinson, Michael Carbin15m
Presents belief programming plus Epistemic Hoare Logic and a new language BLIMP that treat program state as a set of environments and use box/diamond…
Talk on
Termination Analysis for Evolving Programs: An Incremental Approach by Reusing Certified ModulesFei He, Jitao Han16m
Presents an incremental termination checker that reuses certified modules extracted from prior runs, implemented on top of UAutomizer and tested on 276…
Talk on
Scalable and Serializable Networked Multi-actor ProgrammingBo Sang, Patrick Eugster, Gustavo Petri, Srivatsan Ravi, Pierre-Louis Roman15m
AEON is an actor language and runtime that enforces serializable multi-actor events by organizing actors in a DAG via ownership and using a dominator lock…
Talk on
CompCertELF: Verified Separate Compilation of C Programs into ELF Object FilesYuting Wang, Yuting Wang, Xiangzhe Xu, Pierre Wilke, Zhong Shao17m
CompCertELF is a Coq-verified C-to-ELF toolchain that adds a verified assembler and supports verified separate compilation by proving commutativity between…
Talk on
Random Testing for C and C++ Compilers with YARPGenVsevolod Livinskii, Dmitry Babokin, John Regehr12m
YARPGen is a C/C++ fuzzer that generates UB-free code by exact value tracking and operation swapping for arithmetic trees, applies generation policies…
Talk on
Fast Linear Programming through Transprecision Computing on Small and Sparse DataTobias Grosser, Theodoros Theodoridis, Maximilian Falkenstein, Arjun Pitchanathan, Michael Kruse, Manuel Rigger, Zhendong Su, Torsten Hoefler14m
Analyzes ~500,000 simplex tableaux from Polly PPCG and HayStack and finds >99% of coefficients <9 bits, medians of 18 columns and 84% sparsity, with rare…
Talk on
Pomsets with Preconditions: A Simple Model of Relaxed MemoryRadha Jagadeesan, Alan Jeffrey, James Riely16m
A denotational memory model called pomsets with preconditions represents executions as labeled partial orders augmented with logical preconditions, uses…
Talk on
On the Unusual Effectiveness of Type-Aware Operator Mutations for Testing SMT SolversDominik Winterer, Chengyu Zhang, Zhendong Su13m
Proposes type-aware operator mutation: randomly replace operators with others of the same SMT-LIB type, chain mutations, and cross-check Z3 vs CVC4 to spot…
Talk on
Inter-theory Dependency Analysis for SMT String SolversMinh-Thai Trinh, Duc-Hiep Chu, Joxan Jaffar15m
Introduces a concrete analysis called solved form distance that measures how many case splits are needed to break string/integer coupling, plus decision…
Talk on
Taming Type Annotations in Gradual TypingJohn Peter Campora III, Sheng Chen15m
Paper claims static analysis can find incorrect annotations that later cause runtime cast errors by combining type inference with variational types and a…
Talk on
Precise Static Modeling of Ethereum “Memory”Sifis Lagouvardos, Neville Grech, Ilias Tsatiris, Yannis Smaragdakis15m
Declarative modeling of EVM memory using datalog rules and a gigahorse decompiler recovers source-level arguments and array allocations from low-level…
Talk on
DynamiTe: Dynamic Termination and Non-termination ProofsTon Chanh Le, Timos Antonopoulos, Parisa Fathololumi, Eric Koskinen, ThanhVu Nguyen13m
DynamiTe is a Python tool that instruments loops with vtrace instrumentation and iteration counters, learns linear ranking functions from concrete terminating…
Talk on
Rethinking Safe Consistency in Distributed Object-Oriented ProgrammingMirko Köhler, Nafise Eskandani, Pascal Weisenburger, Alessandro Margara, Guido Salvaneschi15m
ConSysT is an extension to Java that models a replicated store with Ref references annotated by consistency (examples: @Ev for eventual) and supports…
Talk on
Detecting Locations in JavaScript Programs Affected by Breaking Library ChangesAnders Møller, Benjamin Barslev Nielsen, Martin Toldam Torp15m
This OOPSLA 2020 talk presents the tool TAPIR that can help JavaScript developers when their application dependencies have breaking changes. Detecting…
Talk on
Fuzzing Channel-Based Concurrency Runtimes using Types and EffectsQuentin Stiévenart, Magnus Madsen15m
An automatic generator produces terminating effects and emits small, type- and effect-correct programs to fuzz channel runtimes; effects are built by…
Talk on
Perfectly Parallel Fairness Certification of Neural NetworksCaterina Urban, Maria Christakis, Valentin Wüstholz, Fuyuan Zhang15m
A perfectly parallel static analysis certifies dependency fairness for feed‑forward ReLU networks by combining a cheap forward pre-analysis (interval abstract…
Talk on
Incremental Predicate Analysis for Regression VerificationQianshan Yu, Fei He, Bow-Yaw Wang16m
Implements an end-to-end regression-verification pipeline on CPAchecker that reuses assertion annotations across revisions: a CFA Diff based on similarity…
Talk on
StreamQL: A Query Language for Processing Streaming Time SeriesLingkun Kong, Konstantinos Mamouras15m
StreamQL presents an algebra of stream transformations (monotone As→Bs functions) that composes relational, dataflow and temporal operators so a pipeline like…
Talk on
Shiftry: RNN Inference in 2KB of RAMAayan Kumar, Vivek Seshadri, Rahul Sharma16m
Shiftry compiles RNN inference into C that runs on an Arduino Uno with only 2 KB RAM by converting floating point to fixed point, using mixed bitwidth…
Talk on
Designing Types for R, EmpiricallyAlexi Turcotte, Aviral Goel, Filip Krikava, Jan Vitek16m
A function annotation language and runtime contract checker are built and evaluated: Typetracer is a dynamic tracer on a modified R VM that infers types from…
Talk on
Knowing When to Ask: Sound Scheduling of Name Resolution in Type Checkers Derived from Declarative SArjen Rouvoet, Hendrik van Antwerpen, Casper Bach, Casper Bach Poulsen, Robbert Krebbers, Eelco Visser16m
Derives executable type checkers from Statix specifications by giving an operational semantics that schedules name resolution to avoid unstable queries…
Talk on
Learning Graph-Based Heuristics for Pointer Analysis without Handcrafting Application-Specific FeatuMinseok Jeon, Myungho Lee, Hakjoo Oh15m
Graphick automatically generates graph-based context-sensitivity and heap-abstraction heuristics by learning feature sequences over program graphs…
Talk on
FlowCFL: Generalized Type-Based Reachability Analysis: Graph Reduction and Equivalence of CFL-BasedAna Milanova15m
A new dynamic semantics tracks chains between stack variables (flow from a parameter in one context to a return in another) and turns points-to reasoning into…
Talk on
Dataflow-Based Pruning for Speeding up SuperoptimizationManasij Mukherjee, Pranav Kant, Zhengyang Liu, John Regehr14m
Applies abstract interpretation to prune Souper's enumerative synthesis by proving whole families of partially symbolic candidates infeasible using domains…
Talk on
Sound Garbage Collection for C using Pointer ProvenanceSubarno Banerjee, David Devecsery, Peter M. Chen, Peter M. Chen, Satish Narayanasamy16m
Presents a sound garbage collector for C that tracks pointer provenance at runtime rather than guessing pointers by value, using Dynamic Pointer Provenance…
Talk on
A Type-and-Effect System for Object InitializationFengyun Liu, Ondřej Lhoták, Aggelos Biboudis, Paolo G. Giarrusso, Martin Odersky16m
Type-and-effect design enforces a concretely checkable initialization discipline: cold, warm, hot types plus potentials and effects track field accesses…
Talk on
Hidden Inheritance: An Inline Caching Design for TypeScript PerformanceZhefeng Wu, Zhe Sun, Kai Gong, lingyun Chen, Lingyun Chen, Bin Liao, Yihua Jin16m
Claims a new inline-caching scheme called hidden inheritance that uses TypeScript’s static class/interface hierarchy to treat parent and descendant hidden…
Talk on
Geometry Types for Graphics ProgrammingDietrich Geisler, Irene Yoon, Aditi Kabra, Horace He, Yinnon Sanders, Adrian Sampson16m
Defines geometry types that tag vectors with coordinate scheme, geometric object, and reference frame, and implements them in a new language called Gator with…
Talk on
A Modular Cost Analysis for Probabilistic ProgramsMartin Avanzini, Georg Moser, Michael Schaper15m
Presents a modular method that derives symbolic upper bounds on expected resource cost for probabilistic imperative programs by combining the ERT-calculus with…
Talk on
Program Equivalence for Assisted Grading of Functional ProgramsJoshua Clune, Vijay Ramamurthy, Ruben Martins, Umut A. Acar16m
Zeus clusters Standard ML student submissions by proving structural equivalence with inference rules and emits an SMT formula checked by z3 so clustering is…
Talk
Deductive Optimization of Relational Data StorageJack Feser, John Feser, Sam Madden, Nan Tang, Armando Solar-Lezama14m
A system called Castor synthesizes specialized on-disk layouts and native executables from known query templates, serializing the static database ahead of time…
Talk on
Build Scripts with Perfect DependenciesSarah Spall, Neil Mitchell, Sam Tobin-Hochstadt15m
Build system that requires no author-specified deps: Rattle records per-command dependencies via file-system tracing, speculates parallel execution from…
Talk on
Eliminating Abstraction Overhead of Java Stream Pipelines using Ahead-of-Time Program OptimizationAnders Møller, Oskar Haarklou Veileborg13m
Streamliner is an ahead-of-time optimizer that inlines Java Stream pipelines by using a precise must-points-to pointer analysis, aggressive inlining, stack…
Talk on
Dynamic Dispatch of Context-Sensitive OptimizationsGabriel Poesia, Fernando Magno Quintão Pereira09m
Implements a runtime DFA-based context tracking that avoids cloning whole call chains, implemented as an LLVM link-time pass and published with code on Github…
Talk on
Verifying and Improving Halide’s Term Rewriting System with Program SynthesisJulie L. Newcomb, Andrew Adams, Steven Johnson, Rastislav Bodík, Shoaib Kamil15m
Halide’s term rewriting system is formally verified and extended using SMT and synthesis tools: Z3 proves 88% of rules automatically and Coq completes the…
Talk on
Testing Differential Privacy with Dual InterpretersHengchu Zhang, Edo Roth, Andreas Haeberlen, Benjamin C. Pierce, Aaron Roth16m
An automated tester called DPCheck converts a common DP proof pattern into a hybrid test that combines instrumented concrete traces and symbolic execution…
Talk on
Compiling Symbolic Execution with Staging and Algebraic EffectsGuannan Wei, Oliver Bračevac, Shangyin Tan, Tiark Rompf16m
Claims a first Futamura projection for symbolic interpreters and shows a pipeline that stages a definitional interpreter (Scala + Freer monads + LMS) to…
Talk on
Towards a Formal Foundation of Intermittent ComputingMilijana Surbatovich, Brandon Lucia, Limin Jia15m
Provides a formal correctness definition: an intermittent execution is correct if it is observationally equivalent to some continuous execution, and it proves…
Talk on
Adversarial Examples for Models of CodeNoam Yefet, Uri Alon, Eran Yahav15m
Claims a first adversarial attack on models of code and provides a concrete algorithm DAMP that computes gradients on token embeddings to propose new variable…
Talk on
Towards a Unified Proof Framework for Automated Fixpoint Reasoning using Matching LogicXiaohong Chen, Minh-Thai Trinh, Nishant Rodrigues, Lucas Peña, Grigore Rosu15m
A unified proof framework uses matching logic as a base to build automated provers for multiple logics, implementing 11 generic rules (including LFP based on…
Talk on
LiveDroid: Identifying and Preserving Mobile App State in Volatile Runtime EnvironmentsUmar Farooq, Zhijia Zhao, Manu Sridharan, Iulian Neamtiu15m
LiveDroid automatically discovers and preserves the minimal app state needed to survive activity restarts by static analysis and runtime patches. It defines…
Talk on
Programming with a Read-Eval-Synth LoopHila Peleg, Roi Gabay, Shachar Itzhaky, Eran Yahav13m
A live REPL extended with synthesis called Read-Eval-Synth Loop stitches examples, sketching, and new predicates (notably retain) into specifications so the…
Talk on
A Sparse Iteration Space Transformation Framework for Sparse Tensor AlgebraRyan Senanayake, Changwan Hong, Ziheng Wang, Amalee Wilson, Stephen Chou, Shoaib Kamil, Saman Amarasinghe, Fredrik Kjolstad17m
Framework implements sparse iteration-space transformations inside TACO and a CUDA backend and generates fused sparse kernels (SpMV, SpMM, SDDMM, MTTKRP) that…
Talk on
Automatic and Efficient Variability-Aware Lifting of Functional ProgramsRamy Shahin, Marsha Chechik15m
Implements a variability-aware extension of a PCF-like functional language (pattern matching, polymorphic lists and pairs) and a Haskell variability library…
Talk on
The Anchor Verifier for Blocking and Non-blocking Concurrent SoftwareCormac Flanagan, Stephen N. Freund15m
Anchor is an automatic SMT-based verifier plus compiler that checks reduction-style concurrency using concise moves_as synchronization specs and…
Talk on
CAMP: Cost-Aware Multiparty Session ProtocolsDavid Castro-Perez, Nobuko Yoshida15m
Extends multiparty session types with runtime cost annotations and extracts per-participant cost equations that account for message sizes, node/CPU counts and…
Talk on
Polymorphic Types and Effects with Boolean UnificationMagnus Madsen, Jaco van de Pol16m
Extends Hindley-Milner with Boolean unification to infer precise pure/impure effects, proven to compute principal types and soundly guarantee that terms typed…
Talk on
DiffStream: Differential Output Testing for Stream Processing ProgramsKonstantinos Kallas, Filip Niksic, Caleb Stanford, Rajeev Alur16m
DiffStream is a Flink testing library that compares a sequential and a parallel run by a matching algorithm that decides stream equivalence up to an explicit…
Talk on
Igloo: Soundly Linking Compositional Refinement and Separation Logic for Distributed System VerificaChristoph Sprenger, Tobias Klenze, Marco Eilers, Felix A. Wolf, Peter Müller, Martin Clochard, David Basin16m
A methodology that links compositional refinement to separation-logic code verification and is fully formalized in Isabelle/HOL, yielding end-to-end trace…
Talk on
Persistent Owicki-Gries Reasoning: A Program Logic for Reasoning about Persistent Programs on Intel-Azalea Raad, Ori Lahav, Viktor Vafeiadis16m
The paper introduces POG, the first program logic for persistent x86, and an Ix86 instrumented semantics that reduces Px86 by removing the pbuffer via a…
Talk on
Projection-Based Runtime Assertions for Testing and Debugging Quantum ProgramsGushu Li, Gushu Li, Li Zhou, Nengkun Yu, Yufei Ding, Mingsheng Ying, Yuan Xie16m
Proposes projection-based assertions that express quantum-state predicates more richly than classical patterns while enabling efficient runtime checks by…
Talk on
Featherweight GoRobert Griesemer, Raymond Hu, Wen Kokke, Julien Lange, Ian Lance Taylor, Bernardo Toninho, Philip Wadler, Nobuko Yoshida16m
Defines a minimal core language Featherweight Go (FG) and its generic extension Featherweight Generic Go (FGG), proves a semantics-by-translation claim that…
Talk on
Statically Verified Refinements for Multiparty ProtocolsFangyi Zhou, Francisco Ferreira, Raymond Hu, Rumyana Neykova, Nobuko Yoshida15m
Theory proves refined multiparty session types preserve trace equivalence while tracking variable knowledge with multiplicities 0 or ω; implementation builds a…
Talk on
Exposing Cache Timing Side-Channel Leaks through Out-of-Order Symbolic ExecutionShengjian Guo, Yueqi Chen, Jiyong Yu, Meng Wu, Zhiqiang Zuo, Peng Li, Yueqiang Cheng, Huibo Wang, Huibo Wang13m
Claims a practical symbolic-execution tool that models CPU out-of-order and speculative scheduling to expose cache-timing leaks. Implements Out-of-Order…
Talk on
Satune: Synthesizing Efficient SAT EncodersHamed Gorjiara, Guoqing Harry Xu, Brian Demsky15m
Satune synthesizes and auto-tunes SAT encoders from a small sample of domain problems, providing a DSL for total and partial orders, integers and booleans, a…
Talk on
Guided Linking: Dynamic Linking without the CostsSean Bartell, Will Dietz, Vikram S. Adve14m
Guided Linking merges a developer-chosen optimized set into a single merged library (LLVM-based, using LTO+PGO), then uses developer-supplied constraints like…
Talk on
A Model for Detecting Faults in Build SpecificationsThodoris Sotiropoulos, Stefanos Chaliasos, Dimitris Mitropoulos, Diomidis Spinellis16m
Proposes BuildFS, a formal execution model that maps every file read/write to the build task that performed it and defines concrete faults: missing input and…
Talk on
WATCHER: In-Situ Failure DiagnosisHongyu Liu, Hongyu Liu, Sam Silvestro, Xiangyu Zhang, Jian Huang, Tongping Liu13m
WATCHER is an automated in-situ failure diagnoser built on iReplayer that deterministically replays crashes, identifies the failing…
Talk
Precise Inference of Expressive Units of Measurement TypesTongtong Xiang, Jeff Y. Luo, Werner Dietl14m
PUnits is a static unit-of-measurement system that proves sound in Coq, encodes units as boolean and integer variables, and solves whole-program constraints…
Talk on
Formulog: Datalog for SMT-Based Static AnalysisAaron Bembenek, Michael Greenberg, Stephen Chong15m
Formulog is a DSL that combines Datalog, an ML-like term fragment, and SMT solving and a prototype runtime implements it. The authors implement three analyses…
Talk on
Scaling Exact Inference for Discrete Probabilistic ProgramsSteven Holtzen, Guy Van den Broeck, Todd Millstein15m
Introduces Dice as a discrete PPL that compiles programs to binary decision diagrams and performs inference by weighted model counting, reusing compiled…
Talk on
Handling Bidirectional Control FlowYizhou Zhang, Guido Salvaneschi, Andrew C. Myers15m
Claims that algebraic effects can themselves raise effects and still be statically safe, implemented as a core calculus and type system that forbids unhandled…
Talk on
Mossad: Defeating Software Plagiarism DetectionBreanna Devore-McDonald, Emery D. Berger16m
A tool called MOSSAD automatically rewrites a compilable submission into semantically equivalent variants that evade popular detectors like Moss by breaking…
Talk on
Learning Semantic Program Embeddings with Graph Interval Neural NetworkYu Wang, Ke Wang, Fengjuan Gao, Linzhang Wang11m
Paper presents Graph Interval Neural Network that learns program embeddings by iteratively abstracting control flow graphs into interval-based abstraction…
Talk on
How Do Programmers Use Unsafe Rust?Vytautas Astrauskas, Christoph Matheja, Federico Poli, Peter Müller, Alexander J. Summers15m
Paper analyzes unsafe Rust across the ecosystem using the Qrates framework and a modified compiler to compile and extract MIR from almost 29k compiled crates…
Talk on
Automated Policy Synthesis for System Call SandboxingShankara Pailoor, Xinyu Wang, Hovav Shacham, Işıl Dillig, Isil Dillig17m
Abhaya automatically generates sound, optimal syscall-whitelisting policies by combining a scalable static analysis with an SMT-guided synthesis phase. The…
Talk on
Multiparty Motion Coordination: From Choreographies to Robotics ProgramsRupak Majumdar, Nobuko Yoshida, Damien Zufferey14m
Combines multiparty session types with assume‑guarantee reasoning to avoid exponential state blowup and statically verify choreographies of robots; a Python…
Talk on
Assertion-Based Optimization of Quantum ProgramsThomas Häner, Torsten Hoefler, Matthias Troyer15m
An assertion-based optimizer that uses Z-basis, probability-1 pre/postconditions and triviality rules removes redundant gates and qubits by proving operations…
Talk on
An Empirical Study of Ownership, Assets, and Typestate in ObsidianMichael Coblenz, Jonathan Aldrich, Brad A. Myers, Joshua Sunshine15m
A new language, Obsidian, implements typestate and linearity to track ownership and prevent asset loss; authors run a randomized controlled trial with 20…
Talk on
Semiring Optimizations: Dynamic Elision of Expressions with Identity and Absorbing ElementsGuilherme Vieira Leobas, Fernando Magno Quintão Pereira16m
A compiler pass detects semiring patterns (c = c + ab) in LLVM IR and inserts speculative checks so identity/absorbing elements elide work; implemented in LLVM…
Talk on
Enabling Accuracy-Aware Quantum Compilers using Symbolic Resource EstimationGiulia Meuli, Mathias Soeken, Martin Roetteler, Thomas Häner17m
Claims an automatic accuracy manager that extracts closed-form cost and error formulas from source code and uses them to tune approximation parameters to…
Talk on
Certified and Efficient Instruction Scheduling: Application to Interlocked VLIW ProcessorsCyril Six, Sylvain Boulmé, David Monniaux15m
Implements a post-pass instruction scheduler for CompCert targeting the Kalray Coolidge VLIW and ships an untrusted OCaml scheduler plus a Coq-verified…
Talk on
Proving Highly-Concurrent Traversals CorrectYotam M. Y. Feldman, Artem Khyzha, Constantin Enea, Adam Morrison, Aleksandar Nanevski, Noam Rinetzky, Sharon Shoham12m
Paper proves that optimistic lock-free traversals are correct by reducing concurrent traversal correctness to sequential reasoning plus two concrete…
Talk on
A Systematic Approach to Deriving Incremental Type CheckersAndré Pacak, Sebastian Erdweg, Tamás Szabó17m
Provides a compiler from textbook-style typing rules to Datalog that yields an incremental type checker and a DSL for language specs, with a concrete encoding…
Talk on
Effects as Capabilities: Effect Handlers and Lightweight Effect PolymorphismJonathan Immanuel Brachthäuser, Philipp Schuster, Klaus Ostermann15m
A new language called Effekt implements contextual effect polymorphism by making function-like blocks second class so they cannot escape, providing a…
Talk on
Fixpoints for the Masses: Programming with First-Class Datalog ConstraintsMagnus Madsen, Ondřej Lhoták17m
Presents a concrete embedding of first-class Datalog constraints into a functional language, implemented as a 5k-line extension to the 60k-line Flix compiler…
Talk on
Flow2Vec: Value-Flow-Based Precise Code EmbeddingYulei Sui, Xiao Cheng, Guanqin Zhang, Haoyu Wang15m
Builds an interprocedural value-flow graph from LLVM IR (IVFG) and uses CFL-reachability to filter only realizable call/return paths, formulates reachability…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.