proof: add parseRaw_iff end-to-end correctness theorem

Aberta
#28 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
38/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Domínio
compilers

Direção de pesquisa

Comece pelos pontos de entrada parseRaw e parse e, em seguida, leia o teorema existente parseValue_iff e os resultados de correção do tokenizer. Componha as garantias do tokenizer e do parser em um teorema iff no nível de strings que caracterize ValidJson; considera-se concluído quando parseRaw_iff e/ou parse_iff declarar diretamente essa relação.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Problem

There is no end-to-end iff theorem connecting parseRaw / parse directly to the ValidJson spec predicate at the string level. The existing theorems operate at the token level (parseValue_iff etc.), requiring callers to reason about tokenization separately.

Expected fix

Add parseRaw_iff (and/or parse_iff):

theorem parseRaw_iff (input : String) :
    parseRaw input = .ok v ↔ ... -- ValidJson characterization over input

This requires composing tokenizer correctness with parser correctness.

References

  • Suggested by AI code review on PR #8
Linguagem predominante
Lean
Estrelas
2
Forks
1
Métricas de merge de PRs
Nenhum PR com merge em 30d

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de lambdaclass/lambda_compiler_kit

Todas as issues de lambdaclass/lambda_compiler_kit

Issues semelhantes

Mais issues de Compilers

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.