VeGo: Direct Deductive Formal Verification of Go Programs for Computer Science Education

📅 2026-08-23
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
VeGo系统通过直接验证标准Go源代码,利用Hoare风格契约等方法,为计算机科学教育中的程序形式化验证提供支持。
📝 Abstract
As formal methods are rapidly becoming accessible and practical due to AI coding agents, priority passes to assisting developers and students in generating specifications. Leveraging native HMX/SSA verifiers provide that support with rigorous mathematical guardrails. We present VeGo (Verified Go), a deductive formal verification system that enables direct verification of standard Go source code. VeGo incorporates Hoare-style contracts, loop invariants and integer variants, well-founded recursive measures, block-level scope invariants, and equational reasoning chains with primed variables directly as non-intrusive Go comments. We detail the language selection rationale justifying Go as an ideal balance over C, C++, Java, and Rust, strategically adopting Go's native multiple return values. We detail the tool architecture, exploiting the theoretical equivalence between Static Single Assignment (SSA) form and first-order functional programming to annotate code, desugar of clopen interval quantifiers, add Reynolds' skip statement, provide weakest precondition calculus, and native Hindley-Milner constraint inference, and verification condition resolution over the SSA form. We formalize contract-precision checking (weakest precondition vs. strongest postcondition) using an explicit analogy to type inference. Finally, we evaluate VeGo across educational textbooks and outline a roadmap for formal concurrency specifications using epistemic temporal logic.
Problem

Research questions and friction points this paper is trying to address.

formal verification
Go programs
computer science education
Innovation

Methods, ideas, or system contributions that make the work stand out.

Deductive Formal Verification
Static Single Assignment (SSA)
Hoare-style Contracts
Weakest Precondition Calculus
Hindley-Milner Inference
💼 Related Jobs
No related jobs found.
T
Tina Massoudi
Department of Computer Science, University of Saskatchewan, Saskatoon, SK, Canada
C
Chris Dutchyn
Department of Computer Science, University of Saskatchewan, Saskatoon, SK, Canada