CPP 2021 - Certified Programs and Proofs - POPL 2021
Write a Blog >>
POPL 2021
Sun 17 - Fri 22 January 2021
Online
Attending
Venue: Online (How to POPL in 2021)
Supporting POPL
Student Volunteers
Code of Conduct
Registration
FAQ
Program
POPL Program
Your Program
Sun 17 Jan
Mon 18 Jan
Tue 19 Jan
Wed 20 Jan
Thu 21 Jan
Fri 22 Jan
Tracks
POPL 2021
POPL
Artifact Evaluation
Workshops and Co-located Events
TutorialFest
Student Research Competition
Student Volunteers
POPL Meetups
Co-hosted Conferences
CPP
CPP
CPP
Lightning Talks
PLMW
VMCAI
Workshops
CoqPL
LAFI
PEPM
PriSC
Co-hosted Symposia
PADL
Organization
POPL 2021 Committees
Organizing Committee
Track Committees
POPL
Artifact Evaluation
TutorialFest
Student Research Competition
Student Volunteers
Contributors
People Index
Co-hosted Conferences
CPP
Organization Committee
Program Committee
Steering Committee
PLMW
Invited Speakers
Panelists
Organizing Committee
VMCAI
Invited Speakers
Organizing Committee
Program Committee
Artifact Evaluation Committee
Workshops
CoqPL
Invited speaker
Organizing Committee
Program Committee
LAFI
Organizing Committee
Program Committee
Steering Committee
PEPM
Organizing Committee
Program Committee
Steering Committee
PriSC
Program Committee
Steering Committee
Co-hosted Symposia
PADL
Programme Chairs
Programme Committee
Series
Series
POPL 2027
POPL 2026
POPL 2025
POPL 2024
POPL 2023
POPL 2022
POPL 2021
POPL 2020
POPL 2019
POPL 2018
POPL 2017
POPL 2016
POPL 2021
series
) /
CPP 2021 (
series
) /
Certified Programs and Proofs
CPP 2021
About
Program
Accepted Papers
The CPP Series
Call for Papers
Call for Participation and Lightning Talks
Supporting CPP
Certified Programs and Proofs (CPP) is an international conference on practical and theoretical topics in all areas that consider formal verification and certification as an essential paradigm for their work. CPP spans areas of computer science, mathematics, logic, and education. CPP is sponsored by
ACM SIGPLAN
, in cooperation with
ACM SIGLOG
CPP 2021 will be co-located with
POPL 2021
and will take place on
January 17-19, 2021
(extended), as a
virtual
meeting, where all papers are presented online. The main room of the conference will be
streamed on YouTube
Our
Call for Participation and Lightning Talks
is
available and
registration
is
open.
We also offer a $10 discounted registration fee for anyone for whom the
normal registration fees could be an impediment to participation.
Finally, we would like to warmly thank our generous industrial supporters below:
Supporters
Gold
Silver
Silver
Silver
Bronze
Bronze
Bronze
Bronze
Bronze
Bronze
Dates
Plenary
Program Display Configuration
Close
You're viewing the program in a time zone which is different from your device's time zone
change time zone
Sun 17 Jan
Displayed time zone:
Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna
change
15:30 - 16:00
Social
Workshops and Co-located Events
at
Break
15:30
30m
Social Event
Sunday Breakfast Tables
Workshops and Co-located Events
16:00 - 17:00
Invited Talk
CPP
at
CPP
Chair(s):
Cătălin Hriţcu
MPI-SP
Streamed session:
16:00
60m
Talk
Invited Talk: Teaching Algorithms and Data Structures with a Proof Assistant
CPP
Tobias Nipkow
Technische Universität München
Media Attached
File Attached
17:00 - 17:30
Proof Tactics
CPP
at
CPP
Chair(s):
Jesper Cockx
TU Delft
Streamed session:
17:00
15m
Talk
A Novice-Friendly Induction Tactic for Lean
CPP
Jannis Limperg
Vrije Universiteit Amsterdam
Pre-print
Media Attached
17:15
15m
Talk
Lassie: HOL4 Tactics by Example
CPP
Heiko Becker
MPI-SWS
Nathaniel Bos
McGill University
Ivan Gavran
MPI-SWS
Eva Darulova
MPI-SWS
Rupak Majumdar
MPI-SWS
Pre-print
Media Attached
File Attached
17:30 - 18:00
Social
Workshops and Co-located Events
at
Break
17:30
30m
Break
Sunday Coffee Break
Workshops and Co-located Events
18:00 - 18:45
Logic, Set Theory, and Category Theory
CPP
at
CPP
Chair(s):
Yannick Forster
Saarland University
Streamed session:
18:00
15m
Talk
An Anti-Locally-Nameless Approach to Formalizing Quantifiers
CPP
Olivier Laurent
CNRS & ENS Lyon
Pre-print
Media Attached
18:15
15m
Talk
The Generalised Continuum Hypothesis Implies the Axiom of Choice in Coq
CPP
Dominik Kirst
Saarland University
Felix Rech
Saarland University
Pre-print
Media Attached
18:30
15m
Talk
Formalizing Category Theory in Agda
CPP
Jason Z. S. Hu
McGill University
Jacques Carette
McMaster University
Pre-print
Media Attached
18:45 - 19:30
Formalized Mathematics
CPP
at
CPP
Chair(s):
Amin Timany
Aarhus University
Streamed session:
18:45
15m
Talk
Formalizing the Ring of Witt Vectors
Distinguished Paper Award
CPP
Johan Commelin
Universität Freiburg
Robert Y. Lewis
Vrije Universiteit Amsterdam
Pre-print
Media Attached
19:00
15m
Talk
Formal Verification of Semi-algebraic Sets and Real Analytic Functions
CPP
J Tanner Slagel
NASA Langley Research Center
Lauren White
Kansas State University
Aaron Dutle
NASA Langley Research Center
Pre-print
Media Attached
19:15
15m
Talk
On the Formalisation of Kolmogorov Complexity
CPP
Elliot Catt
ANU
Michael Norrish
Data61, CSIRO & ANU
Pre-print
Media Attached
19:30 - 20:00
Social
Workshops and Co-located Events
at
Break
19:30
30m
Social Event
Sunday Hallway Time
Workshops and Co-located Events
20:00 - 21:00
Virtual CPP dinner
CPP
at
CPP
Mon 18 Jan
Displayed time zone:
Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna
change
15:30 - 16:00
Social
Workshops and Co-located Events
at
Break
15:30
30m
Social Event
Topic Oriented Discussions
Workshops and Co-located Events
16:00 - 17:00
Invited Talk
CPP
at
CPP
Chair(s):
Andrei Popescu
University of Sheffield
Streamed session:
16:00
60m
Talk
Invited Talk: Underpinning the foundations: Sail-based semantics, testing, and reasoning, for production and CHERI-enabled architectures
CPP
Peter Sewell
University of Cambridge
Media Attached
17:00 - 17:30
Program Logics
CPP
at
CPP
Chair(s):
William Mansky
University of Illinois at Chicago
Streamed session:
17:00
15m
Talk
Contextual Refinement of the Michael-Scott Queue (Proof Pearl)
CPP
Simon Friis Vindum
Aarhus University
Lars Birkedal
Aarhus University
Pre-print
Media Attached
17:15
15m
Talk
Reasoning About Monotonicity in Separation Logic
CPP
Amin Timany
Aarhus University
Lars Birkedal
Aarhus University
Pre-print
Media Attached
17:30 - 18:00
Social
Workshops and Co-located Events
at
Break
17:30
30m
Break
Monday Coffee Break 2
Workshops and Co-located Events
18:00 - 18:45
Semantics
CPP
at
CPP
Chair(s):
Yannick Zakowski
Inria
Streamed session:
18:00
15m
Talk
A Coq Formalization of Data Provenance
CPP
Véronique Benzaken
Université Paris Saclay
Sarah Cohen-Boulakia
LRI, Université de Paris Sud, CNRS (UMR8623) - Université Paris Saclay
Evelyne Contejean
CNRS
Chantal Keller
LRI, Univ. Paris-Sud
Rébecca Zucchini
LRI, Université de Paris Sud, CNRS (UMR8623) - Université Paris Saclay
Pre-print
Media Attached
18:15
15m
Talk
Developing and certifying Datalog optimizations in Coq/MathComp
CPP
Pierre-Léo Bégay
Orange Labs & Verimag
Pierre Crégut
Orange Labs
Jean-François Monin
Verimag
Pre-print
Media Attached
18:30
15m
Talk
Machine-Checked Semantic Session Typing
Distinguished Paper Award
CPP
Jonas Kastberg Hinrichsen
IT University of Copenhagen
Daniël Louwrink
University of Amsterdam
Robbert Krebbers
Radboud University Nijmegen
Jesper Bengtson
IT University of Copenhagen
Pre-print
Media Attached
18:45 - 19:30
Security, Blockchains, and Smart Contracts
CPP
at
CPP
Chair(s):
Andreas Lochbihler
Digital Asset
Streamed session:
18:45
15m
Talk
Extracting Smart Contracts Tested and Verified in Coq
CPP
Danil Annenkov
Concordium Blockchain Research Center, Aarhus University
Mikkel Milo
Concordium Blockchain Research Center, Aarhus University
Jakob Botsch Nielsen
Concordium Blockchain Research Center, Aarhus University
Bas Spitters
Concordium Blockchain Research Center, Aarhus University
Pre-print
Media Attached
File Attached
19:00
15m
Talk
Formal Verification of Authenticated, Append-Only Skip Lists in Agda
CPP
Victor Cacciari Miraldo
DFINITY Foundation
Harold Carr
Oracle Labs, USA
Mark Moir
Oracle Labs, New Zealand
Lisandra Silva
University of Minho
Guy L. Steele Jr.
Oracle Labs
Pre-print
Media Attached
19:15
15m
Talk
Towards formally verified compilation of tag-based policy enforcement
CPP
CHR Chhak
Portland State University
Andrew Tolmach
Portland State University
Sean Anderson
Portland State University
Pre-print
Media Attached
19:30 - 20:00
Social
Workshops and Co-located Events
at
Break
19:30
30m
Social Event
Monday Shuffle-Space Time
Workshops and Co-located Events
20:00 - 21:00
Lightning Talks
CPP Lightning Talks
CPP
at
CPP
Chair(s):
Natarajan Shankar
SRI International, USA
Streamed sessions:
20:00
5m
Talk
Certified Semantics for miniKanren
CPP Lightning Talks
Dmitry Rozplokhas
Saint Petersburg State University and JetBrains Research
Andrey Vyatkin
Saint Petersburg State University
Petr Lozov
Sain Petersburg State University, SPbGU
Dmitri Boulytchev
Saint Petersburg State University / JetBrains Research
Media Attached
20:05
5m
Talk
Cameleer: a Deductive Verification Tool for OCaml
CPP Lightning Talks
Mário Pereira
NOVA LINCS & Nova School of Sciences and Tecnhology
António Ravara
Department of Informatics, Faculty of Sciences and Technology, NOVA University of Lisbon and NOVA LINCS
20:10
5m
Talk
Gradualizing the Calculus of Inductive Constructions
CPP Lightning Talks
Meven Lennon-Bertrand
Inria – LS2N, Université de Nantes
Kenji Maillard
Inria Nantes & University of Chile
Nicolas Tabareau
Inria
Éric Tanter
University of Chile
Pre-print
20:15
5m
Talk
Formally Verified Decentralized Exchange with Mi-Cho-Coq
CPP Lightning Talks
Arvid Jakobsson
Nomadic Labs
Colin González
Université de Paris, Irif -- Nomadic Labs
Bruno Bernardo
Nomadic Labs
Raphaël Cauderlier
Nomadic Labs
20:20
5m
Talk
A semantic domain for privacy-aware smart contracts and interoperable sharded ledgers
CPP Lightning Talks
Sören Bleikertz
Digital Asset
Andreas Lochbihler
Digital Asset
Ognjen Marić
Digital Asset
Simon Meier
Digital Asset
Phoebe Nichols
Digital Asset
Matthias Schmalz
Digital Asset
Ratko G. Veprek
Digital Asset
File Attached
20:25
5m
Talk
Specification and model checking of Tendermint consensus in TLA+
CPP Lightning Talks
Igor Konnov
Informal Systems Inc
Zarko Milosevic
Informal Systems
Josef Widder
Informal Systems
20:30
5m
Talk
Formalization of Combinatorics on Words in Isabelle/HOL
CPP Lightning Talks
Štěpán Holub
Charles University
Štěpán Starosta
Faculty of Information Technology, Czech Technical University in Prague
Link to publication
Media Attached
File Attached
20:35
5m
Talk
Formalising MPC-in-the-head-based zero-knowledge
CPP Lightning Talks
Nikolaj Sidorenco
Aarhus University
Sabine Oechsner
Aarhus University
Bas Spitters
Concordium Blockchain Research Center, Aarhus University
File Attached
20:40
5m
Talk
Mechanically-checked soundness of type-based null safety
CPP Lightning Talks
Alexander Kogtenkov
Schaffhausen Institute of Technology, Switzerland
Media Attached
File Attached
20:45
5m
Talk
Formalising MiniSail in Isabelle
CPP Lightning Talks
Mark Wassell
University of Cambridge
20:50
5m
Talk
How to verify an ASN.1 Protocol C-language Stack in Coq?
CPP Lightning Talks
Nika Pona
Digamma.ai
Vadim Zaliva
Carnegie Mellon University, USA
File Attached
20:55
5m
Talk
Monadic Second-Order Logic and Pomset Languages
CPP Lightning Talks
Tobias Kappé
Cornell University
Tue 19 Jan
Displayed time zone:
Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna
change
15:30 - 16:00
Social
Workshops and Co-located Events
at
Break
15:30
30m
Social Event
Tuesday Shuffle-Space Time
Workshops and Co-located Events
16:00 - 16:45
Compilers and Interpreters
CPP
at
CPP
Chair(s):
Freek Wiedijk
Radboud University Nijmegen
Streamed session:
16:00
15m
Talk
A Minimalistic Verified Bootstrapped Compiler (Proof Pearl)
Distinguished Paper Award
CPP
Magnus O. Myreen
Chalmers University of Technology
Pre-print
Media Attached
16:15
15m
Talk
Lutsig: A Verified Verilog Compiler for Verified Circuit Development
CPP
Andreas Lööw
Chalmers University of Technology
Pre-print
Media Attached
16:30
15m
Talk
Towards Efficient and Verified Virtual Machines for Dynamic Languages
CPP
Martin Desharnais
Universität der Bundeswehr München
Stefan Brunthaler
Universität der Bundeswehr München
Pre-print
Media Attached
16:45 - 17:30
Rewriting and Automated Reasoning
CPP
at
CPP
Chair(s):
Cyril Cohen
Université Côte d’Azur, Inria, France
Streamed session:
16:45
15m
Talk
A Modular Isabelle Framework for Verifying Saturation Provers
CPP
Sophie Tourret
Max Planck Institute for Informatics
Jasmin Blanchette
Vrije Universiteit Amsterdam
Pre-print
Media Attached
17:00
15m
Talk
An Isabelle/HOL Formalization of AProVE's Termination Method for LLVM IR
CPP
Max W. Haslbeck
University of Innsbruck
René Thiemann
University of Innsbruck
Pre-print
Media Attached
17:15
15m
Talk
A Verified Decision Procedure for the First-Order Theory of Rewriting for Linear Variable-Separated Rewrite Systems
CPP
Alexander Lochmann
University of Innsbruck
Aart Middeldorp
University of Innsbruck
Fabian Mitterwallner
University of Innsbruck
Bertram Felgenhauer
Pre-print
Media Attached
17:30 - 18:00
Social
Workshops and Co-located Events
at
Break
17:30
30m
Break
Tuesday Coffee Break 2
Workshops and Co-located Events
18:00 - 18:30
AI and Machine Learning
CPP
at
CPP
Chair(s):
Ekaterina Komendantskaya
Heriot-Watt University, UK
Streamed session:
18:00
15m
Talk
A Formal Proof of PAC Learnability for Decision Stumps
CPP
Joseph Tassarotti
Boston College
Koundinya Vajjha
University of Pittsburgh
Anindya Banerjee
IMDEA Software Institute
Jean-Baptiste Tristan
Boston College
Pre-print
Media Attached
18:15
15m
Talk
CertRL: Formalizing Convergence Proofs for Value and Policy Iteration in Coq
CPP
Koundinya Vajjha
University of Pittsburgh
Avraham Shinnar
IBM Research
Barry Trager
IBM Research
Vasily Pestun
IBM Research; IHES
Nathan Fulton
IBM Research
Pre-print
Media Attached
18:30 - 19:30
Chairs' report and community meeting
CPP
at
CPP
Streamed session:
18:30
60m
Talk
Chairs' report and community meeting
CPP
Cătălin Hriţcu
MPI-SP
Andrei Popescu
University of Sheffield
Lennart Beringer
Princeton University
Media Attached
File Attached
19:30 - 20:00
Social
Workshops and Co-located Events
at
Break
19:30
30m
Break
Welcome to Copenhagen!
Workshops and Co-located Events
Accepted Papers
Title
A Coq Formalization of Data Provenance
CPP
Véronique Benzaken
Sarah Cohen-Boulakia
Evelyne Contejean
Chantal Keller
Rébecca Zucchini
Pre-print
Media Attached
A Formal Proof of PAC Learnability for Decision Stumps
CPP
Joseph Tassarotti
Koundinya Vajjha
Anindya Banerjee
Jean-Baptiste Tristan
Pre-print
Media Attached
A Minimalistic Verified Bootstrapped Compiler (Proof Pearl)
Distinguished Paper Award
CPP
Magnus O. Myreen
Pre-print
Media Attached
A Modular Isabelle Framework for Verifying Saturation Provers
CPP
Sophie Tourret
Jasmin Blanchette
Pre-print
Media Attached
An Anti-Locally-Nameless Approach to Formalizing Quantifiers
CPP
Olivier Laurent
Pre-print
Media Attached
An Isabelle/HOL Formalization of AProVE's Termination Method for LLVM IR
CPP
Max W. Haslbeck
René Thiemann
Pre-print
Media Attached
A Novice-Friendly Induction Tactic for Lean
CPP
Jannis Limperg
Pre-print
Media Attached
A Verified Decision Procedure for the First-Order Theory of Rewriting for Linear Variable-Separated Rewrite Systems
CPP
Alexander Lochmann
Aart Middeldorp
Fabian Mitterwallner
Bertram Felgenhauer
Pre-print
Media Attached
CertRL: Formalizing Convergence Proofs for Value and Policy Iteration in Coq
CPP
Koundinya Vajjha
Avraham Shinnar
Barry Trager
Vasily Pestun
Nathan Fulton
Pre-print
Media Attached
Chairs' report and community meeting
CPP
Cătălin Hriţcu
Andrei Popescu
Lennart Beringer
Media Attached
File Attached
Contextual Refinement of the Michael-Scott Queue (Proof Pearl)
CPP
Simon Friis Vindum
Lars Birkedal
Pre-print
Media Attached
Developing and certifying Datalog optimizations in Coq/MathComp
CPP
Pierre-Léo Bégay
Pierre Crégut
Jean-François Monin
Pre-print
Media Attached
Extracting Smart Contracts Tested and Verified in Coq
CPP
Danil Annenkov
Mikkel Milo
Jakob Botsch Nielsen
Bas Spitters
Pre-print
Media Attached
File Attached
Formalizing Category Theory in Agda
CPP
Jason Z. S. Hu
Jacques Carette
Pre-print
Media Attached
Formalizing the Ring of Witt Vectors
Distinguished Paper Award
CPP
Johan Commelin
Robert Y. Lewis
Pre-print
Media Attached
Formal Verification of Authenticated, Append-Only Skip Lists in Agda
CPP
Victor Cacciari Miraldo
Harold Carr
Mark Moir
Lisandra Silva
Guy L. Steele Jr.
Pre-print
Media Attached
Formal Verification of Semi-algebraic Sets and Real Analytic Functions
CPP
J Tanner Slagel
Lauren White
Aaron Dutle
Pre-print
Media Attached
Lassie: HOL4 Tactics by Example
CPP
Heiko Becker
Nathaniel Bos
Ivan Gavran
Eva Darulova
Rupak Majumdar
Pre-print
Media Attached
File Attached
Lutsig: A Verified Verilog Compiler for Verified Circuit Development
CPP
Andreas Lööw
Pre-print
Media Attached
Machine-Checked Semantic Session Typing
Distinguished Paper Award
CPP
Jonas Kastberg Hinrichsen
Daniël Louwrink
Robbert Krebbers
Jesper Bengtson
Pre-print
Media Attached
On the Formalisation of Kolmogorov Complexity
CPP
Elliot Catt
Michael Norrish
Pre-print
Media Attached
Reasoning About Monotonicity in Separation Logic
CPP
Amin Timany
Lars Birkedal
Pre-print
Media Attached
The Generalised Continuum Hypothesis Implies the Axiom of Choice in Coq
CPP
Dominik Kirst
Felix Rech
Pre-print
Media Attached
Towards Efficient and Verified Virtual Machines for Dynamic Languages
CPP
Martin Desharnais
Stefan Brunthaler
Pre-print
Media Attached
Towards formally verified compilation of tag-based policy enforcement
CPP
CHR Chhak
Andrew Tolmach
Sean Anderson
Pre-print
Media Attached
Call for Papers
Certified Programs and Proofs (CPP) is an international conference on practical and theoretical topics in all areas that consider formal verification and certification as an essential paradigm for their work. CPP spans areas of computer science, mathematics, logic, and education.
CPP 2021 will be held on 17-19 January 2021 and will be co-located with POPL 2021. CPP 2021 is sponsored by ACM SIGPLAN, in cooperation with ACM SIGLOG.
News
CPP 2021 will take place on January 17-19, 2021 as a virtual meeting, where all papers are presented online.
CPP 2021 will feature Distinguished Paper Awards.
The submission deadline is one month earlier than usual.
Important Dates
Abstract Deadline: 16 September 2020 at 23:59 AoE (UTC-12h)
Paper Submission Deadline: 22 September 2020 at 23:59 AoE (UTC-12h)
Notification: 24 November 2020
Camera Ready Deadline: 15 December 2020
Conference:
17-19 January 2021
(extended)
Deadlines expire at the end of the day, anywhere on earth. Abstract and submission deadlines are strict and there will be
no extensions
Topics of Interest
We welcome submissions in research areas related to formal certification of programs and proofs. The following is a non-exhaustive list of topics of interest to CPP:
certified or certifying programming, compilation, linking, OS kernels, runtime systems, security monitors, and hardware;
certified mathematical libraries and mathematical theorems;
proof assistants (e.g, ACL2, Agda, Coq, Dafny, F*, HOL4, HOL Light, Idris, Isabelle, Lean, Mizar, Nuprl, PVS, etc);
new languages and tools for certified programming;
program analysis, program verification, and program synthesis;
program logics, type systems, and semantics for certified code;
logics for certifying concurrent and distributed systems;
mechanized metatheory, formalized programming language semantics, and logical frameworks;
higher-order logics, dependent type theory, proof theory, logical systems, separation logics, and logics for security;
verification of correctness and security properties;
formally verified blockchains and smart contracts;
certificates for decision procedures, including linear algebra, polynomial systems, SAT, SMT, and unification in algebras of interest;
certificates for semi-decision procedures, including equality, first-order logic, and higher-order unification;
certificates for program termination;
formal models of computation;
mechanized (un)decidability and computational complexity proofs;
formally certified methods for induction and coinduction;
integration of interactive and automated provers;
logical foundations of proof assistants;
applications of AI and machine learning to formal certification;
user interfaces for proof assistants and theorem provers;
teaching mathematics and computer science with proof assistants.
Distinguished Paper Awards
Around 10
% of the accepted papers at CPP 2021 will be designated as Distinguished Papers. This award highlights papers that the CPP program committee thinks should be read by a broad audience due to their relevance, originality, significance and clarity.
Submission Guidelines
Prior to the abstract deadline, the authors should register their paper in the HotCRP system at
by entering the title, abstract (entered as
plain text
in the corresponding field of the registration form), authors, affiliations, topics, and conflicts. No PDF upload is needed at registration time, see next paragraph.
Prior to the paper submission deadline, the authors should also upload their
anonymized
paper in PDF format through the HotCRP system. Any PDF uploaded into HotCRP is immediately visible to the PC and uploading a non-anonymous PDF at any time is grounds for desk rejection of your paper.
The submissions must be written in English and provide sufficient detail to allow the program committee to assess the merits of the contribution. They must be formatted following the
ACM SIGPLAN Proceedings
format using the
acmart
style with the
sigplan
option, which provides a two-column style, using 10 point font for the main text, and a header for
double blind review submission
, i.e.,
\documentclass[sigplan,10pt,anonymous,review]{acmart}\settopmatter{printfolios=true,printccs=false,printacmref=false}
The submitted papers should not exceed 12 pages, including tables and figures, but
excluding bibliography and clearly marked appendices
. The papers should be self-contained without the appendices. Shorter papers are welcome and will be given equal consideration. Submissions not conforming to the requirements concerning format and maximum length may be rejected without further consideration.
CPP 2021 will employ a
lightweight double-blind reviewing process
. To facilitate this, the submissions must adhere to two rules:
author names and institutions must be omitted, and
references to authors’ own related work should be in the third person (e.g., not “We build on our previous work …” but rather “We build on the work of …").
The purpose of this process is to help the PC and external reviewers come to an initial judgment about the paper without bias, not to make it impossible for them to discover the authors if they were to try. Nothing should be done in the name of anonymity that weakens the submission or makes the job of reviewing it more difficult. In particular, important background references should not be omitted or anonymized. In addition, authors are free to disseminate their ideas or draft versions of their papers as usual. For example, authors may post drafts of their papers on the web or give talks on their research ideas. POPL has answers to frequently asked questions addressing many common concerns:
We strongly encourage the authors to provide any
supplementary material
that is required to support the claims made in the paper, such as proof scripts or experimental data. This material must be uploaded at submission time, as an archive, not via a URL. Two forms of supplementary material may be submitted:
Anonymous supplementary material is made available to the reviewers before they submit their first-draft reviews.
Non-anonymous supplementary material is made available to the reviewers after they have submitted their first-draft reviews and have learned the identity of the authors.
Please use anonymous supplementary material whenever possible, so that it can be taken into account from the beginning of the reviewing process.
The submitted papers must adhere to the
SIGPLAN Republication Policy
and the
ACM Policy on Plagiarism
. Concurrent submissions to other conferences, journals, workshops with proceedings, or similar forums of publication are not allowed. The PC chairs should be informed of closely related work submitted to a conference or journal in advance of submission.
One author of each accepted paper is expected to present it at the virtual conference.
Publication, Copyright, and Open Access
The limit for the camera-ready version is 14 pages, excluding appendices of up to 5 pages (which should be clearly marked and appear before the references) and references. This is 2 pages extra for the paper body compared to the submission.
The CPP proceedings will be published by the ACM, and authors of accepted papers will be required to choose one of the following publication options:
Author retains copyright of the work and grants ACM
a non-exclusive permission-to-publish license
and, optionally, licenses the work under a Creative Commons license.
Author retains copyright of the work and grants ACM
an exclusive permission-to-publish license
Author
transfers copyright
of the work to ACM.
For authors who can afford it, we recommend option 1, which will make your paper
Gold Open Access
, and also encourage such authors to license their work under the CC-BY license. ACM will charge you an article processing fee for this option (currently, US$700 for SIGPLAN members), which you have to pay directly with the ACM. You may be able to avoid this fee if the institution of the corresponding author is a member of “
ACM OPEN
” (so please choose the corresponding author wisely).
For everyone else, we recommend option 2, which is free and allows you to achieve
Green Open Access
, by uploading a preprint of your paper to a repository that guarantees permanent archival such as
arXiv
HAL
, or
eprint
. This is anyway a good idea for
timely dissemination
even if you chose option 1. Ensuring timely dissemination is particularly important for this edition, since, because of the very tight schedule, the official proceedings might not be available in time for CPP.
The official CPP 2021 proceedings will also be available via
SIGPLAN OpenTOC
For ACM’s take on this, see their
Copyright Policy
and
Author Rights
Contact
For any questions please contact the two PC chairs:
Catalin Hritcu
and
Andrei Popescu
Call for Participation and Lightning Talks
Executive Summary
Conference dates:
17-19 January 2021
(extended to 3 days!)
Lightning talks submission deadline:
8 January 2021 (AoE)
Lightning talks session: 18 January 2021 at 20:00 CET
Registration
Early registration deadline:
10 January 2021
(!)
Discounted registration available (
see below
Long pre-recorded talks available by the end of 11 January 2021 (AoE)
General Information
Certified Programs and Proofs (CPP) is an international conference on practical and theoretical topics in all areas that consider formal verification and certification as an essential paradigm. CPP spans areas of computer science, mathematics, logic, and education. CPP is sponsored by ACM SIGPLAN, in cooperation with ACM SIGLOG. For more information please
visit the CPP page
CPP 2021 will be co-located with POPL 2021 and will take place on 17-19 January 2021, as a virtual meeting, where all papers are presented online. For more information about virtual conference organization have a look
here
. CPP will also have both long and short versions of presentations, just that for us the short versions are 10 minutes long (not 5). The short presentation versions will be given during the virtual conference, and the authors have a choice between giving this live or playing the pre-recording. The long presentations (30 minutes) will be pre-recorded and made available for asynchronous consumption before the conference, by the end of 11 January 2021 (AoE).
Call for Lightning Talks
CPP 2021 will include a session of 5-minute talks where attendees can present work-in-progress, preliminary research results, and emerging topics. Submission of such lightning talks proposals is lightweight: all we need is a title, an abstract, and the author names, affiliations, and contact information.
Lightning talks submission deadline:
8 January 2021 (AoE)
Lightning talks session: 18 January 2021 at 20:00 CET
Submission is now open at:
Lightning talks will be given live via Zoom and the 5 minute limit will be strictly enforced (and there will be no Q&A). You need to be a registered participant to give a lightning talk at CPP, but there is also a $10 registration option (see below).
Discounted Registration
We offer a $10 alternative registration fee for anyone for whom the normal registration fees could be an impediment to participation.
Industrial Supporters
Warm thanks to our generous industrial supporters:
Gold supporter:
JetBrains
Silver supporters:
Algorand
IOHK
, and
Nomadic Labs
Bronze supporters:
Arm
BedRock Systems Inc
Digital Asset
Galois
Informal Systems Inc
, and
Zilliqa
Invited Talks
Tobias Nipkow
(Technische Universität München):
Teaching Algorithms and Data Structures with a Proof Assistant
Peter Sewell
(University of Cambridge):
Underpinning the foundations: Sail-based semantics, testing, and reasoning, for production and CHERI-enabled architectures
Accepted Papers, Program, and Distinguished Paper Awards
The list of papers accepted at CPP 2021 is available
here
A preliminary program is also available
here
Starting with this edition we introduced the CPP Distinguished Paper Awards, aimed at accepted submissions that stand out with respect to originality, significance, and clarity. The three Distinguished Papers selected for CPP 2021 are:
A Minimalistic Verified Bootstrapped Compiler (Proof Pearl)
by Magnus O. Myreen
Formalizing the Ring of Witt Vectors
by Johan Commelin and Robert Y. Lewis
Machine-Checked Semantic Session Typing
by Jonas Kastberg Hinrichsen, Daniel Louwrink, Robbert Krebbers and Jesper Bengtson
Contact
For any questions please contact the chairs: Catalin Hritcu (
catalin.hritcu@gmail.com
), Andrei Popescu (
a.popescu@sheffield.ac.uk
), Lennart Beringer (
eberinge@cs.princeton.edu
Supporting CPP
The ACM SIGPLAN International Conference on Certified Programs and Proofs (CPP) covers all areas that consider formal verification and certification as an essential paradigm for their work. CPP spans areas of computer science, mathematics, logic, and education and brings together 100+ researchers and practitioners to present the latest developments in formal verification.
CPP welcomes corporate donations to help maintain and improve the overall experience at the conference. The money we get from corporate sponsors will generally be used to subsidize student attendance (e.g., registration waiving, which generally increases student participation), to pay for live streaming and recording CPP, facilitate online interaction, and introduce a new distinguished paper award. This will also allow us explore new ideas such as covering the fees that would make CPP open access for everyone.
News
CPP 2021 will take place on January 17-19, 2021 as a virtual meeting, where all papers are presented online.
CPP Support Levels
Bronze – Suggested donation $1000
your name and logo prominently displayed on the CPP website
acknowledgment in the CPP PC chairs’ statement for the proceedings
a dedicated text chat room in the messaging system
big thank you in the CPP chairs’ report talk
one complementary registration to CPP (17-19 January 2021)
Silver – Suggested donation $2500
as above plus:
logo will be displayed on the splash screen before each talk video
a dedicated videoconference room to interact with attendees for the duration of CPP (17-19 January 2021).
two complementary registrations to CPP (17-19 January 2021)
Gold – Suggested donation $5000
as above plus:
acknowledgement as a sponsor of the CPP keynote talks
an opportunity for a representative from the company to address the attendees for 10 minutes (immediately before or after the chairs’ report or in case of a physical conference at the start of the conference dinner)
four complementary registrations to CPP (17-19 January 2021)
Sponsorship Policy
Sponsors help offset the considerable expense involved in staging the conference, reducing the financial barriers to participation and enhancing inclusivity. We aim to foster a diverse community with participants from varied disciplines, organizations, and geographic locations. We value and encourage participation from across academia, industry, government, and civil society. At the same time, outside contributions can raise concerns about the independence of the conference and the legitimacy the conference may confer on sponsors. We take these concerns seriously and have taken steps to maintain a transparent and appropriate relationship with our sponsors:
We acknowledge all sources of financial support.
We disclose all benefits that sponsors receive in exchange for their contribution.
We ensure that sponsors have no say over the paper selection process, the composition of the program committees, the choice of invited speakers, or the selection of award winners. The substance and structure of the conference are determined independently by the program committee using a rigorous, lightweight double-blind peer review process.
We only allow sponsors to contribute to a general fund and do not allow sponsors to further specify how their contributions should be spent.
We are grateful to receive financial support from organizations that respect our twin goals of inclusivity and independence.
Acknowledgment: CPP’s sponsorship policy is adapted from the
ACM FAccT conference
and used under a
CC-BY 2.0 license
Contact
Questions about how to support CPP may be directed to Lennart Beringer
The CPP Series
Previous CPP conferences
CPP 2020
, New Orleans, Louisiana, United States, January 20-21, 2020 (co-located with POPL’20)
CPP 2019
, Cascais/Lisbon, Portugal, January 14-15, 2019 (co-located with POPL’19)
CPP 2018
, Los Angeles, USA, January 8-9, 2018 (co-located with POPL’18)
CPP 2017
, Paris, France, January 16-17, 2017 (co-located with POPL’17)
CPP 2016
, Saint Petersburg, Florida, USA, January 18-19, 2016 (co-located with POPL’16)
CPP 2015
, Mumbai, India, January 13-14, 2015 (co-located with POPL’15)
CPP 2013
, Melbourne, Australia, December 11-13, 2013 (co-located with APLAS’13)
CPP 2012
, Kyoto, Japan, December 13-15, 2012 (collocation with APLAS’12)
CPP 2011
, Kenting, Taiwan, December 7-9, 2011 (co-located with APLAS’11)
The CPP Manifesto (from 2011)
In this manifesto, we advocate for the creation of a new international conference in the area of formal methods and programming languages, called Certified Programs and Proofs (CPP). Certification here means formal, mechanized verification of some sort, preferably with the production of independently checkable certificates. CPP would target any research promoting formal development of certified software and proofs, that is:
The development of certified or certifying programs
The development of certified mathematical theories
The development of new languages and tools for certified programming
New program logics, type systems, and semantics for certified code
New automated or interactive tools and provers for certification
Results assessed by an original open source formal development
Original teaching material based on a proof assistant
Software today is still developed without precise specification. A developer often starts the programming task with a rather informal specification. After careful engineering, the developer delivers a program that may not fully satisfy the specification. Extensive testing and debugging may shrink the gap between the two, but there is no assurance that the program accurately follows the specification. Such inaccuracy may not always be significant, but when a developer links a large number of such modules together, these “noises” may multiply, leading to a system that nobody can understand and manage. System software built this way often contains hard-to-find “zero-day vulnerabilities” that become easy targets for Stuxnet-like attacks. CPP aims to promote the development of new languages and tools for building certified programs and for making programming precise.
Certified software consists of an executable program plus a formal proof that the software is free of bugs with respect to a particular dependability claim. With certified software, the dependability of a software system is measured by the actual formal claim that it is able to certify. Because the claim comes with a mechanized proof, the dependability can be checked independently and automatically in an extremely reliable way. The formal dependability claim can range from making almost no guarantee, to simple type safety property, or all the way to deep liveness, security, and correctness properties. It provides a great metric for comparing different techniques and making steady progress in constructing dependable software.
The conventional wisdom is that certified software will never be practical because any real software must also rely on the underlying runtime system which is too low-level and complex to be verifiable. In recent years, however, there have been many advances in the theory and engineering of mechanized proof systems applied to verification of low-level code, including proof-carrying code, certified assembly programming, local reasoning and separation logic, certified linking of heterogeneous components, certified protocols, certified garbage collectors, certified or certifying compilation, and certified OS-kernels. CPP intends to be a driving force that would facilitate the rapid development of this exciting new area, and be a natural international forum for such work.
The recent development in several areas of modern mathematics requires mathematical proofs containing enormous computation that cannot be verified by mathematicians in an entire lifetime. Such development has puzzled the mathematical community and prompted some of our colleagues in mathematics and computer science to start developing a new paradigm, formal mathematics, which requires proofs to be verified by a reliable theorem prover. As particular examples, such an effort has been made for the four-color theorem and has started for the sphere packing problem and the classification of finite groups. We believe that this emerging paradigm is the beginning of a new era. No essential existing theorem in computer science has yet been considered worth a similar effort, but it could well happen in the very near future. For example, existing results in security would often benefit from a formal development allowing us to exhibit the essential hypotheses under which the result really holds. CPP would again be a natural international forum for this kind of work, either in mathematics or in computer science, and would participate strongly in the emergence of this paradigm.
On the other hand, there is a recent trend in computer science to formally prove new results in highly technical subjects such as computational logic, at least in part. In whichever scientific area, formal proofs have three major advantages: no assumption can be missing, as is sometimes the case; the result cannot be disputed by a wrong counterexample, as sometimes happens; and more importantly, a formal development often results in a better understanding of the proof or program, and hence results in easier and better implementation. This new trend is becoming strong in computer science work, but is not recognized yet as it should be by traditional conferences. CPP would be a natural forum promoting this trend.
There are not many proof assistants around. There should be more, because progress benefits from competition. On the other hand, there is much theoretical work that could be implemented in the form of a proof assistant, but this does not really happen. One reason is that it is hard to publish a development work, especially when this requires a long-term effort as is the case for a proof assistant. It is even harder to publish work about libraries which, we all know, are fundamental for the success of a proof assistant. CPP would pay particular attention in publishing, publicizing, and promoting this kind of work.
Finally, CPP also aims to be a publication arena for innovative teaching experiences, in computer science or mathematics, using proof assistants in an essential way. These experiences could be submitted in an innovative format to be defined.
Questions? Use the
CPP contact form
Important Dates
AoE (UTC-12h)
Sun 17 - Tue 19 Jan 2021
Conference
Fri 8 Jan 2021 23:59
Lightning talks submission deadline
Tue 15 Dec 2020
Camera ready version
Tue 24 Nov 2020
Notification
Tue 22 Sep 2020 23:59
Paper submission deadline
Wed 16 Sep 2020 23:59
Abstract submission deadline
Submission Link
Organization Committee
Lennart Beringer
Conference Co-Chair
Princeton University
United States
Cătălin Hriţcu
PC and Conference Co-Chair
MPI-SP
Germany
Andrei Popescu
PC Co-Chair
University of Sheffield
United Kingdom
Program Committee
Cătălin Hriţcu
Co-chair
MPI-SP
Germany
Andrei Popescu
Co-chair
University of Sheffield
United Kingdom
Reynald Affeldt
National Institute of Advanced Industrial Science and Technology (AIST), Japan
June Andronick
CSIRO's Data61 and UNSW
Australia
Arthur
Azevedo de Amorim
Carnegie Mellon University, USA
United States
Joachim Breitner
DFINITY Foundation
Germany
Jesper Cockx
TU Delft
Netherlands
Cyril Cohen
Université Côte d’Azur, Inria, France
Nils Anders
Danielsson
University of Gothenburg, Chalmers University of Technology
Brijesh Dongol
University of Surrey
Yannick Forster
Saarland University
Germany
Shilpi Goel
Centaur Technology, Inc.
Chung-Kil Hur
Seoul National University, South Korea
Moa Johansson
Chalmers University of Technology
Sweden
Ekaterina Komendantskaya
Heriot-Watt University, UK
Angeliki Koutsoukou-Argyraki
University of Cambridge, Department of Computer Science and Technology
United Kingdom
Robert Y.
Lewis
Vrije Universiteit Amsterdam
Netherlands
Hongjin Liang
Nanjing University, China
China
Andreas Lochbihler
Digital Asset
Switzerland
Petar Maksimović
Imperial College London, UK
William Mansky
University of Illinois at Chicago
United States
Anders Mörtberg
Department of Mathematics, Stockholm University
Sweden
Sam Owre
SRI International
United States
Karl Palmskog
KTH Royal Institute of Technology
Sweden
Damien Pous
CNRS
Tahina Ramananandro
Microsoft Research
United States
Ilya Sergey
Yale-NUS College and National University of Singapore
Singapore
Natarajan Shankar
SRI International, USA
Kathrin Stark
Princeton University, USA
United States
René Thiemann
University of Innsbruck
Amin Timany
Aarhus University
Denmark
Josef Urban
Czech Technical University in Prague
Czechia
Floris
van Doorn
University of Pittsburgh
United States
Christoph Weidenbach
MPI-INF
Germany
Freek Wiedijk
Radboud University Nijmegen
Netherlands
Yannick Zakowski
Inria
France
Johannes
Åman Pohjola
Data61 at CSIRO / UNSW
Steering Committee
Zhong Shao
Steering Committee Chair
Yale University
June Andronick
CSIRO's Data61 and UNSW
Australia
Jasmin Blanchette
Vrije Universiteit Amsterdam
Netherlands
Adam Chlipala
Massachusetts Institute of Technology
United States
Amy Felty
University of Ottawa
Canada
Georges Gonthier
Inria
Cătălin Hriţcu
MPI-SP
Germany
Gerwin Klein
CSIRO's Data61 and UNSW Sydney
Australia
Assia Mahboubi
INRIA
France
Dale Miller
INRIA Saclay and LIX
France
Magnus O.
Myreen
Chalmers University of Technology
Tobias Nipkow
Technische Universität München
Sat 25 Apr 02:06
US