# Coq

Coq, formerly known as the Coq Proof Assistant, is an interactive theorem prover and dependently typed programming language for mechanized reasoning and formal verification.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Dependent Types and the Challenge of Automating Proofs

DevFeed: [Dependent Types and the Challenge of Automating Proofs](<https://devfeed.tech/articles/we-have-proof-automation-now-36616.md>)

Original publisher: [Read original article](<http://www.imperialviolet.org/2026/07/26/zstd-lean.html>)

Author: Adam Langley

Published: 2026-07-26T00:00:00Z

Content type: opinion

Language: en

Sources: [ImperialViolet](<https://devfeed.tech/sources/imperialviolet.md>)

Topics: [Programming language](<https://devfeed.tech/topics/programming-language.md>), [Lean](<https://devfeed.tech/topics/lean.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Coq](<https://devfeed.tech/topics/coq.md>)

Tags: [interactive](<https://devfeed.tech/tags/interactive.md>), [language](<https://devfeed.tech/tags/language.md>), [machine](<https://devfeed.tech/tags/machine.md>), [programming](<https://devfeed.tech/tags/programming.md>), [programming-language](<https://devfeed.tech/tags/programming-language.md>)

### AI overview

The article discusses dependently typed languages such as Coq, Rocq, and Lean, which can encode subtle invariants in a type system. It explains that writing and checking proofs can require substantial effort, contributing to the niche status of these languages and motivating attempts to automate proof obligations.

### Source excerpt

I've long had a soft spot for dependently-typed languages like Coq Rocq and Lean. They offer the possibility of a type system capable of encoding and enforcing arbitrarily subtle invariants. The sort of thing that, in regular languages, ends up (at best) as a comment, and which quickly gets lost as the size of the team grows. Then you get subtle misunderstandings and components that don't quite fit together. It's often the case that those components have grown to a sufficient size that, when the problem is noticed, aligning either of them is a wearying prospect. Perhaps, say dependent types seductively, you could write those invariants formally and have a machine check them. (p.s. Coq changed its name! I remember many years ago at a Coq conference in Princeton, I tried suggesting that, in an English-speaking world, having a programming language called Coq was an impediment. I don't think the audience agreed at the time. I also joked that many of the talks there sounded like a speech by Tyrion Lannister, there being so many Coqs and Hoares. A joke that was hilarious and timely, even though it fell completely flat, coming as it did before the final season of that show and our collective memory-holing of it.) The problem has always been that with great type-system power comes great proof effort. I can certainly attest to entire days spent proving really quite simple things. Doing proofs is actually quite fun: it's challenging, interactive, and there's a clear goal. But gosh, does it take a lot of time, especially if, like me, you don't know what you're doing. There's also the periodic, galling experience, at the end of many hours of effort, where you realise that the goal that you're trying to prove is, in fact, false. The classic result here is the retrospective from the seL4 effort that found that, even though the project was large enough for the engineers to develop considerable experience, they spent about 10 times as much time proving as they did designing and imp

## Coq development team is open to renaming the project

DevFeed: [Coq development team is open to renaming the project](<https://devfeed.tech/articles/coq-will-be-renamed-29485.md>)

Original publisher: [Read original article](<http://lambda-the-ultimate.org/node/5629>)

Published: 2021-04-08T13:47:05Z

Content type: release

Language: en

Sources: [Lambda the Ultimate](<https://devfeed.tech/sources/lambda-the-ultimate.md>)

Topics: [Coq](<https://devfeed.tech/topics/coq.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [community](<https://devfeed.tech/tags/community.md>), [diversity](<https://devfeed.tech/tags/diversity.md>), [gender](<https://devfeed.tech/tags/gender.md>), [general](<https://devfeed.tech/tags/general.md>)

### AI overview

The Coq development team says it is open to renaming Coq after community discussions about the project's name, logo, and slang meaning in English, including concerns about gender diversity and its effect on participation.

### Source excerpt

From the Coq-club: The Coq development team acknowledges the recent discussions (started on the Coq-Club mailing list) around Coq's logo and name. We wish to thank everyone that participated in these discussions. Testimonies from people who experienced harassment or awkward situations, reports about students (notably women) who ended up not learning / using Coq because of its name, were all very important so that the community could fully recognize the impact of the current name and its slang meaning in English, especially with respect to gender-diversity in the Coq community. For these reasons, the Coq development team is open to a renaming. Suggestions for alternative names go here.

## Dev Update: Formal Methods

DevFeed: [Dev Update: Formal Methods](<https://devfeed.tech/articles/dev-update-formal-methods-16778.md>)

Original publisher: [Read original article](<https://blog.ethereum.org/en/2016/09/01/formal-methods-roadmap>)

Author: Christian Reitwiessner

Published: 2016-09-01T19:55:01Z

Content type: news

Language: en

Sources: [Ethereum Foundation Blog](<https://devfeed.tech/sources/ethereum-foundation-blog.md>)

Topics: [Ethereum](<https://devfeed.tech/topics/ethereum.md>), [Formal verification](<https://devfeed.tech/topics/formal-verification.md>), [Solidity](<https://devfeed.tech/topics/solidity.md>), [Formal methods](<https://devfeed.tech/topics/formal-methods.md>), [Coq](<https://devfeed.tech/topics/coq.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>), [Concurrent Programming](<https://devfeed.tech/topics/concurrent-programming.md>)

Tags: [compiler](<https://devfeed.tech/tags/compiler.md>), [developers](<https://devfeed.tech/tags/developers.md>), [ethereum](<https://devfeed.tech/tags/ethereum.md>), [formal-methods](<https://devfeed.tech/tags/formal-methods.md>), [formal-verification](<https://devfeed.tech/tags/formal-verification.md>), [language](<https://devfeed.tech/tags/language.md>), [research-development](<https://devfeed.tech/tags/research-development.md>), [university](<https://devfeed.tech/tags/university.md>), [verification](<https://devfeed.tech/tags/verification.md>)

### AI overview

Ethereum announces that Yoichi Hirai is joining the project as a formal verification engineer. The article discusses automatic analysis, manual proof development, and planned formal-methods work for Solidity and Ethereum-related tools.

### Source excerpt

Today, I am delighted to announce that Yoichi Hirai (pirapira on github) is joining the Ethereum project as a formal verification engineer. He holds a PhD from the University of Tokyo on the topic of formalizing communicating parallel processes and created formal verification tools for Ethereum in his spare time....