~/talk

Synthesizing Vectorized Code via Verified Lifting

Talkat POPL 2023 SRC · on Wednesday, 2023-01-18· [python]
links:none on file
slides:none on file

A toolchain translates small, fixed‑size Python loops into vectorized NumPy by unrolling loops, emitting C/C++/LLVM, and using Metalift to synthesize programs from a grammar of NumPy combinators with first‑order specifications checked by an SMT solver. The prototype produces equivalent NumPy code after bounded verification, shows exponential synthesis time with search depth (depth >5 reaches 13 minutes), and finds breadth of supported functions less harmful to performance; scalability and richer tuple sizes remain open.

AI-written summary · about

  1. 0:00Start
  2. 0:39Motivation
  3. 1:54Goal
  4. 2:25Problem Definition
  5. 3:16Approach
  6. 3:46Why verified lifting?
  7. 4:17Components
  8. 5:08Source language fragments
  9. 6:29Specifications
  10. 7:21Grammar
  11. 8:07Implementation workflow
  12. 9:17Evaluation
  13. 10:28Future Work
~/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.