lambdaclass / lambdaclass/lambda_compiler_kit

style: proof style improvements in RegexSpec.lean

Offen
#24 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Lean
Sterne
2
Forks
1
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Items

Low-priority style items flagged by AI code review on PR #9.

1. Unused dr binding in regex_match_sound

regex_match_sound destructs the regex_match_correct result with obtain ⟨ast, _, h_parse, _, h_match⟩ — the _ discarding dr is fine. However, a comment noting why dr is intentionally discarded (we only need the AST-level match) would help readers understand the relationship.

2. Fragile DecidableEq instance comparison

Some proof branches use pattern matching on DecidableEq results that could be made more robust with cases, simp, and Subsingleton.elim to avoid depending on instance resolution order.

3. Specialized lemmas that could use general ones

Some lemmas in the Glushkov submodule have specialized proofs for things that general mathlib lemmas already cover. Replace with calls to general lemmas from Matcher.lean.

References

  • Flagged by AI code review on PR #9

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Lies RegexSpec.lean, beginnend mit regex_match_sound und den Glushkov-Beweisen, und vergleiche dann die spezialisierten Lemmata mit den allgemeinen Lemmata in Matcher.lean. Überprüfe die DecidableEq-Zweige und die verworfene dr-Bindung; abgeschlossen ist die Aufgabe, wenn die Kommentare, robusten Beweisfälle und die Wiederverwendung allgemeiner Lemmata angewendet sind, ohne das Beweisverhalten zu ändern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
compilers
Issue-Typ
Refactoring
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.