ComparatorChallenges/TypeSystemNormalization.lean

GitHub source file

Explanation legend Lean4 Domain Explanation Language (L4DEL)

L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.

L4DEL
Lean4 Domain Explanation Language

Credit: OpenAI's pinned repository says an unreleased internal model produced the manuscripts and supporting proof artifacts. The collection builds on the mathematics community's accumulated problems, results, language, and formal libraries; each manuscript's BibTeX and bibliography are the authority for individual scholarly credit.

Project sources: Pinned openai/math documentation, Pinned formalization catalogue

19 declarations, 1 contain sorry, 0 declared as axioms

Full annotated PTS syntax, modulo alpha-renaming via de Bruijn indices. Contexts are stored newest-first, each declaration in its prefix context. No functionality assumptions on axioms or product rules.

  1. inductive OAI.PureTypeSystem.Expr line 15

    Also declared: OAI/Computability/TypeSystem/Basic.lean:15 (same declaration text).

  2. def OAI.PureTypeSystem.Expr.liftRen line 27

    Also declared: OAI/Computability/TypeSystem/Basic.lean:27 (same declaration text).

  3. def OAI.PureTypeSystem.Expr.rename line 31

    Also declared: OAI/Computability/TypeSystem/Basic.lean:31 (same declaration text).

  4. def OAI.PureTypeSystem.Expr.liftSub line 38

    Also declared: OAI/Computability/TypeSystem/Basic.lean:38 (same declaration text).

  5. def OAI.PureTypeSystem.Expr.subst line 42

    Also declared: OAI/Computability/TypeSystem/Basic.lean:42 (same declaration text).

  6. def OAI.PureTypeSystem.Expr.single line 49

    Also declared: OAI/Computability/TypeSystem/Basic.lean:49 (same declaration text).

  7. def OAI.PureTypeSystem.Expr.instantiate line 53

    Also declared: OAI/Computability/TypeSystem/Basic.lean:53 (same declaration text).

  8. structure OAI.PureTypeSystem.Specification line 57

    Also declared: OAI/Computability/TypeSystem/Basic.lean:57 (same declaration text).

  9. inductive OAI.PureTypeSystem.Beta line 61

    Also declared: OAI/Computability/TypeSystem/Basic.lean:61 (same declaration text).

  10. def OAI.PureTypeSystem.Converts line 70

    Also declared: OAI/Computability/TypeSystem/Basic.lean:70 (same declaration text).

  11. def OAI.PureTypeSystem.Normal line 72

    Also declared: OAI/Computability/TypeSystem/Basic.lean:72 (same declaration text).

  12. def OAI.PureTypeSystem.WeaklyNormalizing line 74

    Also declared: OAI/Computability/TypeSystem/Basic.lean:74 (same declaration text).

  13. def OAI.PureTypeSystem.StronglyNormalizing Accessibility for the converse of reduction: strong normalization, including reductions in all type annotations line 79

    Source documentation

    Accessibility for the converse of reduction: strong normalization, including reductions in all type annotations.

    L4DEL explanation

    Accessibility for the converse of reduction: strong normalization, including reductions in all type annotations.

    1. This explanation is a condensed rendering of the declaration's own doc comment at the pinned source commit; consult the exact Lean statement below for authority.

    Sources and attribution: Pinned Lean source (fd4aeeb2ee4f)

    Also declared: OAI/Computability/TypeSystem/Basic.lean:79 (same declaration text).

    def StronglyNormalizing {S : Type u} (M : Expr S) : Prop :=
    …

    Mentions: OAI.PureTypeSystem.Expr

  14. inductive OAI.PureTypeSystem.HasType line 82

    Also declared: OAI/Computability/TypeSystem/Basic.lean:82 (same declaration text).

  15. inductive OAI.PureTypeSystem.ValidContext line 100

    Also declared: OAI/Computability/TypeSystem/Basic.lean:100 (same declaration text).

  16. def OAI.PureTypeSystem.Legal line 105

    Also declared: OAI/Computability/TypeSystem/Basic.lean:105 (same declaration text).

  17. def OAI.PureTypeSystem.SystemWeaklyNormalizing line 108

    Also declared: OAI/Computability/TypeSystem/Basic.lean:108 (same declaration text).

  18. def OAI.PureTypeSystem.SystemStronglyNormalizing line 111

    Also declared: OAI/Computability/TypeSystem/Basic.lean:111 (same declaration text).

  19. theorem OAI.PureTypeSystem.weak_implies_strong Challenge statement: Weak normalization implies strong normalization in pure type systems sorry line 116

    Source documentation

    System-wide weak normalization implies strong normalization for every PTS, including arbitrary sort types, nonfunctional rules and annotated terms.

    L4DEL explanation

    The formalization proves the $\beta$-Barendregt–Geuvers–Klop conjecture for pure type systems: if every legal expression in every valid context has some terminating $\beta$-reduction sequence, then every $\beta$-reduction sequence from every such expression terminates. Reduction is allowed inside type annotations, and the specification may have arbitrary sorts and nonfunctional axioms or rules.

    1. This is an exact comparator target linked by the pinned repository's formalization note for this result.
    2. The repository's comparator configuration selects OAI.Computability.TypeSystem.Normalization as the released solution module checked against this declaration.

    Sources and attribution: Pinned Lean source (fd4aeeb2ee4f)

    Distinct definitions of this name: OAI/Computability/TypeSystem/Normalization.lean:82 (same statement text; different proof or body). Qualify references as OAI.PureTypeSystem.weak_implies_strong@path.

    theorem weak_implies_strong {S : Type u} (P : Specification S)
        (h : SystemWeaklyNormalizing P) : SystemStronglyNormalizing P := by
    …

    Mentions: OAI.PureTypeSystem.Specification, OAI.PureTypeSystem.SystemWeaklyNormalizing, OAI.PureTypeSystem.SystemStronglyNormalizing