Table of Contents
Fetching ...

Computer Science as Infrastructure: the Spine of the Lean Computer Science Library (CSLib)

Christopher Henson, Fabrizio Montesi

TL;DR

This paper presents CSLib founding technical principles, operation, abstractions, and semantic framework, and contributes reusable semantic interfaces, proof automation, CI/testing support for maintaining automation and compatibility with Mathlib, and the first substantial developments of languages and models.

Abstract

Following in the footsteps of the success of Mathlib - the centralised library of formalised mathematics in Lean - CSLib is a rapidly-growing centralised library of formalised computer science and software. In this paper, we present its founding technical principles, operation, abstractions, and semantic framework. We contribute reusable semantic interfaces (reduction and labelled transition systems), proof automation, CI/testing support for maintaining automation and compatibility with Mathlib, and the first substantial developments of languages and models.

Computer Science as Infrastructure: the Spine of the Lean Computer Science Library (CSLib)

TL;DR

This paper presents CSLib founding technical principles, operation, abstractions, and semantic framework, and contributes reusable semantic interfaces, proof automation, CI/testing support for maintaining automation and compatibility with Mathlib, and the first substantial developments of languages and models.

Abstract

Following in the footsteps of the success of Mathlib - the centralised library of formalised mathematics in Lean - CSLib is a rapidly-growing centralised library of formalised computer science and software. In this paper, we present its founding technical principles, operation, abstractions, and semantic framework. We contribute reusable semantic interfaces (reduction and labelled transition systems), proof automation, CI/testing support for maintaining automation and compatibility with Mathlib, and the first substantial developments of languages and models.
Paper Structure (19 sections)