167 citations · 176 across the 13 of their papers we have counts for
13 papers
Fast Mixed-Precision Real Evaluation
Artem Yadrov, Pavel Panchekha
Evaluating real-valued expressions to high precision is a key building block in computational mathematics, physics, and numerics. A typical implementation evaluates the whole expre…
Target-Aware Implementation of Real Expressions
Brett Saiki, Jackson Brough, Jonas Regehr +5
New low-precision accelerators, vector instruction sets, and library functions make maximizing accuracy and performance of numerical code increasingly challenging. Two lines of wor…
Fast Mixed-Precision Real Evaluation
Artem Yadrov, Pavel Panchekha
Evaluating real-valued expressions to high precision is a key building block in computational mathematics, physics, and numerics. A typical implementation evaluates the whole expre…
Implementation and Synthesis of Math Library Functions
Ian Briggs, Yash Lad, Pavel Panchekha
Achieving speed and accuracy for math library functions like exp, sin, and log is difficult. This is because low-level implementation languages like C do not help math library deve…
Odyssey: An Interactive Workbench for Expert-Driven Floating-Point Expression Rewriting
Edward Misback, Caleb C. Chan, Brett Saiki +3
In recent years, researchers have proposed a number of automated tools to identify and improve floating-point rounding error in mathematical expressions. However, users struggle to…
Small Proofs from Congruence Closure
Oliver Flatt, Samuel Coward, Max Willsey +2
Satisfiability Modulo Theory (SMT) solvers and equality saturation engines must generate proof certificates from e-graph-based congruence closure procedures to enable verification…
Synthesizing Mathematical Identities with E-Graphs
Ian Briggs, Pavel Panchekha
Identities compactly describe properties of a mathematical expression and can be leveraged into faster and more accurate function implementations. However, identities must currentl…
Optimal Heap Limits for Reducing Browser Memory Use
Marisa Kirisame, Pranav Shenoy, Pavel Panchekha
Garbage-collected language runtimes carefully tune heap limits to reduce garbage collection time and memory usage. However, there's a trade-off: a lower heap limit reduces memory u…
An Interval Arithmetic for Robust Error Estimation
Oliver Flatt, Pavel Panchekha
Interval arithmetic is a simple way to compute a mathematical expression to an arbitrary accuracy, widely used for verifying floating-point computations. Yet this simplicity belies…
Faster Math Functions, Soundly
Ian Briggs, Pavel Panchekha
Standard library implementations of functions like sin and exp optimize for accuracy, not speed, because they are intended for general-purpose use. But applications tolerate inaccu…
egg: Fast and Extensible Equality Saturation
Max Willsey, Chandrakana Nandi, Yisu Remy Wang +3
An e-graph efficiently represents a congruence relation over many expressions. Although they were originally developed in the late 1970s for use in automated theorem provers, a mor…
Combining Tools for Optimization and Analysis of Floating-Point Computations
Heiko Becker, Pavel Pancheckha, Eva Darulova +1
Recent renewed interest in optimizing and analyzing floating-point programs has lead to a diverse array of new tools for numerical programs. These tools are often complementary, ea…
Finding Root Causes of Floating Point Error with Herbgrind
Alex Sanchez-Stern, Pavel Panchekha, Sorin Lerner +1
Floating-point arithmetic plays a central role in science, engineering, and finance by enabling developers to approximate real arithmetic. To address numerical issues in large floa…