leanprover / leanprover/reference-manual

All axioms break canonicity?

Open
#188 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Lean
Stars
129
Forks
67
Avg merge
1d 15h
Merged PRs (30d)
16

Description

Describe the error

In 3.2.2. Propositions:

It does however block computation when using #reduce to reduce proofs directly (which is not recommended), meaning that canonicity, the property that all closed terms of type Nat normalize to numerals, fails to hold when this (or any) axiom is used:

Why is it incorrect and/or confusing?

I'm not sure what you mean by "or any". Do all axioms break canonicity, even if they have nothing to do with Nat or propositions? Maybe it's correct, I was just a little confused. Also, for people new to type theory, it might not be clear that axiom specifically refers to terms defined with the axiom command, rather than all the inference rules that built in to the type theory, and then it would be really confusing to read that all axioms break canonicity (although maybe this isn't a problem for the target audience).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with section 3.2.2, “Propositions,” linked in the issue, and check the statements about #reduce, canonicity, and axioms. Clarify whether “any axiom” is intended and distinguish the axiom command from inference rules; done when the wording answers the reported confusion.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.