FormalConjecturesTest/Util/Linters/CategoryAnswerLinter.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: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.

Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1

5 declarations, 4 contain sorry, 0 declared as axioms

Imports (2)
  1. theorem CategoryAnswerLinter.flagged_solved_answer_sorry A solved problem should not leave its answer unfilled sorry line 36 source

    Source documentation

    A solved problem should not leave its answer unfilled.

    depends on sorry (Lean reported 4 error(s) in this file) what this means

    Statement uses: Iff, True, Eq, Nat, HAdd.hAdd, OfNat.ofNat

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    6 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem flagged_solved_answer_sorry : answer(sorry) ↔ 1 + 1 = 2 := by
    …
  2. theorem CategoryAnswerLinter.flagged_ascribed_answer_sorry The sorry is still a placeholder when it carries a type ascription sorry line 47 source

    Source documentation

    The sorry is still a placeholder when it carries a type ascription.

    depends on sorry (Lean reported 4 error(s) in this file) what this means

    Statement uses: Eq, Nat, sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous, OfNat.ofNat

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem flagged_ascribed_answer_sorry : answer((sorry : Nat)) = 2 := by
    …
  3. theorem CategoryAnswerLinter.flagged_let_answer_sorry An answer bound by a let is flagged too sorry line 58 source

    Source documentation

    An answer bound by a let is flagged too.

    depends on sorry (Lean reported 4 error(s) in this file) what this means

    Statement uses: Nat, sorryAx, Bool.false, LT.lt, OfNat.ofNat

    Proof uses: Lean.Name, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem flagged_let_answer_sorry :
        let c : Nat := answer(sorry)
    …

    Mentions: c

  4. theorem CategoryAnswerLinter.not_flagged_explicit_answer A solved problem with an explicit answer is fine line 66 source

    Source documentation

    A solved problem with an explicit answer is fine.

    theorem not_flagged_explicit_answer : answer(True) ↔ 1 + 1 = 2 := by
    …
  5. theorem CategoryAnswerLinter.not_flagged_open_answer_sorry An open problem may leave its answer unfilled sorry line 72 source

    Source documentation

    An open problem may leave its answer unfilled.

    depends on sorry (Lean reported 4 error(s) in this file) what this means

    Statement uses: Iff, True, Eq, Nat, HAdd.hAdd, OfNat.ofNat

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    6 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem not_flagged_open_answer_sorry : answer(sorry) ↔ 1 + 1 = 2 := by
    …