rocq-prover / rocq-prover/platform-docs

Universe polymorphism comment

Open
#89 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

documentation Improvements
Dominant language
Rocq Prover
Stars
26
Forks
25
Avg merge
2d 22h
Merged PRs (30d)
1

Description

Coq implements a rule called cumulativity (which is independent from the CoC) which extends the judgement of universes to Type@{i}: Type@{j} for i < j. This makes it so that higher universes as essentially “larger” than lower universes, as if the lower universes were literally included in the higher ones.

This is correct, but it's incomplete in that it doesn't capture the inference principle x : Type@{i} |- x : Type@{j} for i<j. For example, nat : Set and Set : Type@{u}, therefore nat : Type@{u} for any u. But nat is not of the form Type@{i}, so this doesn't follow from the rule above.

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 by locating the documentation passage containing the quoted explanation of cumulativity and universe levels. Read the surrounding discussion, then update the explanation so it also accounts for the stated inference principle; done means the example and the rule are both accurately described.

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.