coq / coq

Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs.
https://coq.inria.fr/
GNU Lesser General Public License v2.1
4.66k stars 632 forks source link

Experiment the addition of sealed/unsealed attributes #19029

Open herbelin opened 2 weeks ago

herbelin commented 2 weeks ago

The PR experiments an implementation of the proposition made in CEP #42 of attributes sealed and unsealed that allows to indicate the opacity of a definition defined non-interactively, and that provides the current role of Qed/Defined without having to break the intuitive matching of keywords Theorem/Qed and Definition/Defined.

The main changes are:

At the current time, there is a warning in case of a sealed/Defined or unsealed/Qed mismatch, as well as when the attribute is defined and there is mismatch Theorem/Defined or Definition/Qed. But the warning is deactivated because it is too much work to adapt the stdlib to the warning.

proux01 commented 2 days ago

Draft PR, removing the milestone.