+ All Categories
Home > Documents > Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf ·...

Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf ·...

Date post: 01-Jan-2021
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
25
sa pa APPROX 2014 Adrian Sampson Two Approximate- Programmability Birds, One Statistical- Inference Stone University of Washington
Transcript
Page 1: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

sa paAPPROX 2014

Adrian Sampson

Two Approximate-Programmability Birds, One Statistical-Inference StoneUniversity of Washington

Page 2: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Page 3: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

Cheap check generation

Statistical inference

Page 4: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

Cheap check generation

Statistical inference

1

2

3

4 Next steps

Page 5: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Expressing quality

Pr[d(f(x), f 0(x)) b] � p

original programrelaxed version

distance metric

input

bounding parameters

Page 6: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

f f 0

Page 7: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

f f 0

int p = 5;!@Approx int a = 7;!for (int x = 0..) {!

a += func(2);!@Approx int z;!z = p * 2;!p += 4;!

}!a /= 9;!func2(p);!a += func(2);!@Approx int y;!z = p * 22 + z;!p += 10;

int p = 5;!int a = 7;!for (int x = 0..) {!

a += func(2);!int z;!z = p * 2;!p += 4;!

}!a /= 9;!func2(p);!a += func(2);!int y;!z = p * 22 + z;!p += 10;

Manual

Page 8: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

f f 0

+Pr[d(f(x), f 0(x)) b] � p

ExpAX [Esmaeilzadeh+] Syndy [Misailovic and Rinard, WACAS]

Optimization in Rely [Misailovic+] ⋮

Page 9: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

Cheap check generation

Statistical inference

Page 10: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Quality: the fantasy

Corre

ctne

ss P

roba

bility

Inputs

average probability

Page 11: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Quality: the reality

Corre

ctne

ss P

roba

bility

Inputs

average probability

Page 12: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Cheap checks to fall back to precise execution

Corre

ctne

ss P

roba

bility

Inputs

average probability

Page 13: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Cheap checks

f f 0Pr[d(f(x), f 0(x)) b] � p

x

s.t. Pr[d(f(x), f 0(x)) b] � p

Page 14: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

Cheap check generation

Statistical inference

Page 15: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Approximate program

def dist(x1, y1, x2, y2):! return sqrt((x1 − x2) ∗∗ 2 + (y1 − y2) ∗∗ 2)

approximate operations

Page 16: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Approximate program → probabilistic program

def dist(x1, y1, x2, y2):! return sqrt((x1 − x2 + error()) ∗∗ 2! + (y1 − y2 + error()) ∗∗ 2)! + error()

Page 17: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming as statistical inference

def dist(x1, y1, x2, y2):! return sqrt((x1 − x2 + error(?)) ∗∗ 2! + (y1 − y2 + error(?)) ∗∗ 2)! + error(?)

s.t. Pr[d(f(x), f 0(x)) b] � p

Page 18: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Cheap check generation as statistical inference

def dist(x1, y1, x2, y2):! return sqrt((x1 − x2 + error()) ∗∗ 2! + (y1 − y2 + error()) ∗∗ 2)! + error()

s.t. Pr[d(f(x), f 0(x)) b] � p

x1 = dist(?)!y1 = dist(?)!x2 = dist(?)!y2 = dist(?)

Page 19: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

First steps

Page 20: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

First steps: translate to a probability distribution

int p = 5;!int a = 7;!for (int x = 0..) {!

a += func(2);!int z;!z = p * 2;!p += 4;!

}!a /= 9;!func2(p);!a += func(2);!int y;!z = p * 22 + z;!p += 10;

? ? ?

Page 21: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

First steps: statistical inference with constraints?

? ? ?

Pr[d(f(x), f 0(x)) b] � p

Page 22: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

First steps: statistical inference with constraints and objectives?

? ? ?

Pr[d(f(x), f 0(x)) b] � p

minimize

Page 23: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

First steps: statistical inference with constraints and objectives scalably?

? ? ?

Pr[d(f(x), f 0(x)) b] � p

minimize

Page 24: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Assisted approximate programming

Cheap check generation

Statistical inference

Page 25: Two Approximate- Programmability Birds, One Statistical ...asampson/media/approx2014-slides.pdf · APPROX 2014 sa pa Adrian Sampson Two Approximate-Programmability Birds, One Statistical-Inference

Recommended