Ruby Extension Library Verified using Coq Proof-assistant
summary
Generates C from Coq via a custom plugin and produces a working Ruby extension (html_escape) used from Ruby; Coq proofs show functional correctness (fast_power equals naive power) and prove safety properties like verified absence of overflows for inputs within specified bounds. Plugin emits Coq-generated C but the plugin itself is not machine-verified. Implementation includes SSE m128 support and microbenchmarks: the SSE path wins up to ~25% escapable characters and the generated extension runs correctly when loaded.
AI-written summary · about
chapters (11)
- 0:00Introduction to talk
- 1:48What is Coq proof assistant
- 3:20Verifying Ruby extensions with Coq
- 8:20Implementing fast power in Coq
- 12:30Curry-Howard correspondence
- 20:40Verifying HTML escape function
- 27:30Using SSE for faster HTML escape
- 31:34Generating verified C code
- 32:42Benchmarking performance
- 34:31Why learn Coq
- 38:50Q&A








