English
Related papers

Related papers: Use and abuse of instance parameters in the Lean m…

200 papers

This paper describes mathlib, a community-driven effort to build a unified library of mathematics formalized in the Lean proof assistant. Among proof assistant libraries, it is distinguished by its dependently typed foundations, focus on…

Logic in Computer Science · Computer Science 2020-01-28 The mathlib Community

Scalar actions are ubiquitous in mathematics, and therefore it is valuable to be able to write them succinctly when formalizing. In this paper we explore how Lean 3's typeclasses are used by mathlib for scalar actions with examples,…

Logic in Computer Science · Computer Science 2023-06-05 Eric Wieser

The Lean mathematical library mathlib is developed by a community of users with very different backgrounds and levels of experience. To lower the barrier of entry for contributors and to lessen the burden of reviewing contributions, we have…

Programming Languages · Computer Science 2020-07-28 Floris van Doorn , Gabriel Ebner , Robert Y. Lewis

The Lean mathematical library Mathlib is one of the fastest-growing libraries of formalised mathematics. We describe various strategies to manage this growth, while allowing for change and avoiding maintainer overload. This includes dealing…

Programming Languages · Computer Science 2025-10-08 Anne Baanen , Matthew Robert Ballard , Johan Commelin , Bryan Gin-ge Chen , Michael Rothgang , Damiano Testa

Codifying mathematical theories in a proof assistant or computer algebra system is a challenging task, of which the most difficult part is, counterintuitively, structuring definitions. This results in a steep learning curve for new users…

Symbolic Computation · Computer Science 2025-11-19 Alena Gusakov , Peter Nelson , Stephen Watt

Lie algebras are an important class of algebras which arise throughout mathematics and physics. We report on the formalisation of Lie algebras in Lean's Mathlib library. Although basic knowledge of Lie theory will benefit the reader, none…

Logic in Computer Science · Computer Science 2021-12-10 Oliver Nash

Typeclasses provide an elegant and effective way of managing ad-hoc polymorphism in both programming languages and interactive proof assistants. However, the increasingly sophisticated uses of typeclasses within proof assistants, especially…

Programming Languages · Computer Science 2020-01-22 Daniel Selsam , Sebastian Ullrich , Leonardo de Moura

We report on the higher-order differential calculus library developed inside the Lean mathematical library mathlib. To support a broad range of applications, we depart in several ways from standard textbook definitions: we allow arbitrary…

Logic in Computer Science · Computer Science 2025-09-08 Sébastien Gouëzel

We present ZFLean, a Lean 4 library for doing core mathematics inside a model of ZFC with the ergonomics expected of typed Mathlib developments. Building on Mathlib's ZFC model, we contribute a relational calculus for sets with rewriting…

Logic in Computer Science · Computer Science 2026-04-28 Vincent Trélat

Detecting design pattern instances in unfamiliar codebases remains a challenging yet essential task for improving software quality and maintainability. Traditional static analysis tools often struggle with the complexity, variability, and…

Software Engineering · Computer Science 2025-02-26 Christian Schindler , Andreas Rausch

Type classes are an elegant extension to traditional, Hindley-Milner based typing systems. They are used in modern, typed languages such as Haskell to support controlled overloading of symbols. Haskell 98 supports only single-parameter and…

Programming Languages · Computer Science 2007-05-23 Kevin Glynn , Martin Sulzmann , Peter J. Stuckey

Linear algebra is a major field of numerical computation and is widely applied. Most linear algebra libraries (in most programming languages) do not statically guarantee consistency of the dimensions of vectors and matrices, causing runtime…

Programming Languages · Computer Science 2015-12-08 Akinori Abe , Eijiro Sumii

Multivariate categorical data are routinely collected in many application areas. As the number of cells in the table grows exponentially with the number of variables, many or even most cells will contain zero observations. This severe…

Methodology · Statistics 2020-04-06 Emanuele Aliverti , David B. Dunson

In-context learning (ICL) enables large language models to perform new tasks by conditioning on a sequence of examples. Most prior work reasonably and intuitively assumes that which examples are chosen has a far greater effect on…

Computation and Language · Computer Science 2025-11-14 Warren Li , Yiqian Wang , Zihan Wang , Jingbo Shang

Development of Interactive Theorem Provers has led to the creation of big libraries and varied infrastructures for formal proofs. However, despite (or perhaps due to) their sophistication, the re-use of libraries by non-experts or across…

Artificial Intelligence · Computer Science 2014-03-10 Jónathan Heras , Ekaterina Komendantskaya

The introduction of first-class type classes in the Coq system calls for re-examination of the basic interfaces used for mathematical formalization in type theory. We present a new set of type classes for mathematics and take full advantage…

Logic in Computer Science · Computer Science 2011-02-08 Bas Spitters , Eelis van der Weegen

Abstract algebra provides a large hierarchy of properties that a collection of objects can satisfy, such as forming an abelian group or a semiring. These classifications can arranged into a broad and typically acyclic directed graph. This…

Logic in Computer Science · Computer Science 2023-07-24 Eric Wieser

Multiple instance learning (MIL) is a form of weakly supervised learning where training instances are arranged in sets, called bags, and a label is provided for the entire bag. This formulation is gaining interest because it naturally fits…

Computer Vision and Pattern Recognition · Computer Science 2022-05-10 Marc-André Carbonneau , Veronika Cheplygina , Eric Granger , Ghyslain Gagnon

Mixed-integer linear programming (MILP) is a powerful tool for addressing a wide range of real-world problems, but it lacks a clear structure for comparing instances. A reliable similarity metric could establish meaningful relationships…

Machine Learning · Computer Science 2025-07-16 Gwen Maudet , Grégoire Danoy

Linear type systems need to keep track of how programs use their resources. The standard approach is to use context splits specifying how resources are (disjointly) split across subterms. In this approach, context splits redundantly echo…

Logic in Computer Science · Computer Science 2021-09-06 Uma Zalakain , Ornela Dardha
‹ Prev 1 2 3 10 Next ›