Questions tagged [proof-obligation]

Proof obligations are properties a programmer needs to prove about his functions to show that the program type-checks. This can occur in dependently typed programming languages, where the type checker cannot always verify everything automatically.

1 questions
3
votes
3 answers

Weird proof obligations resulting from a push/pop evaluator in Coq

I'm trying to define a simple stack-based language in Coq. For now, the instruction set contains push which pushes a nat, and an instruction pop which pops one. The idea is that programs are dependently typed; Prog 2 is a program which leaves two…
user1544337