~/talk

Translating canonical SQL to imperative code in Coq

Talkat OOPSLA 2023 · 2023-10-23..10-27· [databases]
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

A mechanically verified compiler named DBCert translates a canonical SQL subset with correlated queries and NULL semantics into an imperative language using Coq proofs; it first lowers SQL to a Nested Relational Algebra, runs certified query optimizations, then converts via the Nested Relational Calculus into an Imperative Imp that can target runtimes. The implementation produces executable JavaScript backend code (backend not certified) and shows the translation and proofs are mechanized and sufficiently efficient for preliminary experiments.

AI-written summary · about

  1. 0:00Certified SQL compiler intro
  2. 1:07SQL semantics and nulls
  3. 4:25Compiler pipeline example
  4. 8:43SQL algebra to nested algebra
  5. 12:21Nested algebra to imperative code
  6. 14:49Compiler challenges and future work
  7. 15:53Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.