Brett Saiki
About Me

My name is Brett Saiki. I am a third-year undergraduate student at the University of Washington double-majoring in computer engineering and mathematics. I am engaged in research on computer number systems and term-rewriting techniques alongside my advisers Zach Tatlock and Pavel Panchekha. I currently work on projects like Herbie, Ruler, and FPBench.
UW Email | bsaiki@cs.washington.edu |
---|---|
Personal Email | bksaiki@gmail.com |
* If you wish to contact me about my research, please use my UW email address.
More links | Resume | Github | Blog | Papers |
---|
Research
Herbie - a tool for minimizing error in floating-point expressions.
Ruler - a framework for synthesizing rewrite rules for a particular domain.
FPBench - a collection of benchmarks, compilers, and standards for the floating-point research community.
Publications
Rewrite Rule Inference Using Equality Saturation Chandrakana Nandi, Max Willsey, Amy Zhu, Brett Saiki, Yisu Wang, Adam Anderson, Adriana Schulz, Dan Grossman, Zachary TatlockObject-Oriented Programming, Systems, Languages & Applications (OOPSLA) 2021 Distinguished Paper Awardpaper |
Combining Precision Tuning and Rewriting Brett Saiki, Oliver Flatt, Chandrakana Nandi, Pavel Panchekha, Zachary TatlockIEEE Symposium on Computer Arithmetic (ARITH) 2021 papertalk |
Side Projects
Minim - a Scheme-like language inspired by recent work in Racket.
ENL - a library of alternate number systems written in C. Currently supports quad-double.
generic-flonum - Racket interface for MPFR that supports subnormal numbers and variable exponent sizes.
Resources
FPBench community - FPBench, FPCore, number systems and more. Please start here if you want to know more about the FPBench Project.
Herbie web demo - an interactive page that runs programs through Herbie. Try it out!
News
July 14, 2021
I gave a talk at FPTalks 2021, the second annual research conference hosted by the FPBench team, complete with 20 virtual talks. Please join us next year (hopefully in person!). My talk was a shortened version of the one Oliver and I gave at ARITH '21.
March 27, 2021
I released Minim version 0.2.1. The language contains over 130 built-in procedures and constants as well as a small standard library. As of 0.2.0, Minim can be run in a REPL or on a file.
October 28, 2020
I released Minim version 0.1.0, the first release for the project, with minimal support for symbols, numbers, pairs, lists, and lambdas. It's hilarious that you can calculate e^x but you can't print "Hello, World!". Next steps: strings, hash tables, vectors, and everything else a language should have...
June 24, 2020
I attended FPTalks 2020, the first annual research conference hosted by the FPBench team, complete with 16 speakers, Zoom, and virtual hangouts. Please join us next year in June. Check out the FPBench community page for more information.