certified roundoff error bounds using semidefinite programming · 2017-11-26 · nonlinear programs...

44
Certified Roundoff Error Bounds using Semidefinite Programming Victor Magron, CNRS VERIMAG joint work with G. Constantinides and A. Donaldson INRIA Mescal Team Seminar 19 November 2015 Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 1 / 27

Upload: others

Post on 30-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Certified Roundoff Error Bounds usingSemidefinite Programming

Victor Magron, CNRS VERIMAG

joint work with G. Constantinides and A. Donaldson

INRIA Mescal Team Seminar19 November 2015

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 1 / 27

Page 2: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Errors and Proofs

Mathematicians and Computer Scientists want toeliminate all the uncertainties on their results. Why?

M. Lecat, Erreurs des Mathématiciens des origines à nosjours, 1935.

; 130 pages of errors! (Euler, Fermat, Sylvester, . . . )

Ariane 5 launch failure, Pentium FDIV bug

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 2 / 27

Page 3: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Errors and Proofs

Mathematicians and Computer Scientists want toeliminate all the uncertainties on their results. Why?

M. Lecat, Erreurs des Mathématiciens des origines à nosjours, 1935.

; 130 pages of errors! (Euler, Fermat, Sylvester, . . . )

Ariane 5 launch failure, Pentium FDIV bug

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 2 / 27

Page 4: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Errors and Proofs

Mathematicians and Computer Scientists want toeliminate all the uncertainties on their results. Why?

M. Lecat, Erreurs des Mathématiciens des origines à nosjours, 1935.

; 130 pages of errors! (Euler, Fermat, Sylvester, . . . )

Ariane 5 launch failure, Pentium FDIV bug

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 2 / 27

Page 5: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Errors and Proofs

GUARANTEED OPTIMIZATION

Input : Linear problem (LP), geometric, semidefinite (SDP)

Output : solution + certificate numeric-symbolic ; formal

VERIFICATION OF CRITICAL SYSTEMS

Reliable software/hardware embedded codesAerospace controlmolecular biology, robotics, code synthesis, . . .

Efficient Verification of Nonlinear Systems

Automated precision tuning of systems/programsanalysis/synthesis

Efficiency sparsity correlation patterns

Certified approximation algorithms

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 3 / 27

Page 6: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Errors and Proofs

GUARANTEED OPTIMIZATION

Input : Linear problem (LP), geometric, semidefinite (SDP)

Output : solution + certificate numeric-symbolic ; formal

VERIFICATION OF CRITICAL SYSTEMS

Reliable software/hardware embedded codesAerospace controlmolecular biology, robotics, code synthesis, . . .

Efficient Verification of Nonlinear Systems

Automated precision tuning of systems/programsanalysis/synthesis

Efficiency sparsity correlation patterns

Certified approximation algorithms

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 3 / 27

Page 7: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Errors and Proofs

GUARANTEED OPTIMIZATION

Input : Linear problem (LP), geometric, semidefinite (SDP)

Output : solution + certificate numeric-symbolic ; formal

VERIFICATION OF CRITICAL SYSTEMS

Reliable software/hardware embedded codesAerospace controlmolecular biology, robotics, code synthesis, . . .

Efficient Verification of Nonlinear Systems

Automated precision tuning of systems/programsanalysis/synthesis

Efficiency sparsity correlation patterns

Certified approximation algorithms

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 3 / 27

Page 8: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Rounding Error Bounds

Real : p(x) := x1 × x2 + x3

Floating-point : p(x, e) := [x1x2(1 + e1) + x3](1 + e2)

Input variable uncertainties x ∈ SFinite precision ; bounds over e

| ei |6 2−m m = 24 (single) or 53 (double)

Guarantees on absolute round-off error | p− p | ?

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 4 / 27

Page 9: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Nonlinear Programs

Polynomials programs : +,−,×

x2x5 + x3x6 + x1(−x1 + x2 + x3 − x4 + x5 + x6)

Semialgebraic programs: | · |,√, /, sup, inf

4x

1 +x

1.11

Transcendental programs: arctan, exp, log, . . .

log(1 + exp(x))

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 5 / 27

Page 10: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Nonlinear Programs

Polynomials programs : +,−,×

x2x5 + x3x6 + x1(−x1 + x2 + x3 − x4 + x5 + x6)

Semialgebraic programs: | · |,√, /, sup, inf

4x

1 +x

1.11

Transcendental programs: arctan, exp, log, . . .

log(1 + exp(x))

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 5 / 27

Page 11: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Nonlinear Programs

Polynomials programs : +,−,×

x2x5 + x3x6 + x1(−x1 + x2 + x3 − x4 + x5 + x6)

Semialgebraic programs: | · |,√, /, sup, inf

4x

1 +x

1.11

Transcendental programs: arctan, exp, log, . . .

log(1 + exp(x))

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 5 / 27

Page 12: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Existing Frameworks

Classical methods:

Abstract domains [Goubault-Putot 11]

FLUCTUAT: intervals, octagons, zonotopes

Interval arithmetic [Daumas-Melquiond 10]

GAPPA: interface with COQ proof assistant

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 6 / 27

Page 13: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Existing Frameworks

Recent progress:

Affine arithmetic + SMT [Darulova 14]

rosa: sound compiler for reals (in SCALA)

Symbolic Taylor expansions [Solovyev 15]

FPTaylor: certified optimization (in OCAML and HOL-LIGHT)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 6 / 27

Page 14: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Contributions

Maximal Rounding error of the program implementation of f :

r? := max |f (x, e)− f (x)|

Decomposition: linear term l w.r.t. e + nonlinear term h

r? 6 max |l(x, e)|+ max |h(x, e)|

Sparse SDP bounds for l

Coarse bound of h with interval arithmetic

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 7 / 27

Page 15: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Contributions

1 Comparison with SMT and linear/affine arithmetic:; More Efficient optimization +© Tight upper bounds

2 Extensions to transcendental/conditional programs

3 Formal verification of SDP bounds

4 Open source tool Real2Float (in OCAML and COQ)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 7 / 27

Page 16: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Introduction

Semidefinite Programming for Polynomial Optimization

Rounding Error Bounds with Sparse SDP

Conclusion

Page 17: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

What is Semidefinite Programming?

Linear Programming (LP):

minz

c>

z

s.t. A z > d .

Linear cost c

Linear inequalities “∑i Aij zj > di” Polyhedron

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 8 / 27

Page 18: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

What is Semidefinite Programming?

Semidefinite Programming (SDP):

minz

c>

z

s.t. ∑i

Fi zi < F0 .

Linear cost c

Symmetric matrices F0, Fi

Linear matrix inequalities “F < 0”(F has nonnegative eigenvalues)

Spectrahedron

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 9 / 27

Page 19: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

What is Semidefinite Programming?

Semidefinite Programming (SDP):

minz

c>

z

s.t. ∑i

Fi zi < F0 , A z = d .

Linear cost c

Symmetric matrices F0, Fi

Linear matrix inequalities “F < 0”(F has nonnegative eigenvalues)

Spectrahedron

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 10 / 27

Page 20: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Applications of SDP

Combinatorial optimization

Control theory

Matrix completion

Unique Games Conjecture (Khot ’02) :“A single concrete algorithm provides optimal guaranteesamong all efficient algorithms for a large class ofcomputational problems.”(Barak and Steurer survey at ICM’14)

Solving polynomial optimization (Lasserre ’01)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 11 / 27

Page 21: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

SDP for Polynomial Optimization

Prove polynomial inequalities with SDP:

p(a, b) := a2 − 2ab + b2 > 0 .

Find z s.t. p(a, b) =(

a b)(z1 z2

z2 z3

)︸ ︷︷ ︸

<0

(ab

).

Find z s.t. a2 − 2ab + b2 = z1a2 + 2z2ab + z3b2 (A z = d)

(z1 z2z2 z3

)=

(1 00 0

)︸ ︷︷ ︸

F1

z1 +

(0 11 0

)︸ ︷︷ ︸

F2

z2 +

(0 00 1

)︸ ︷︷ ︸

F3

z3 <(

0 00 0

)︸ ︷︷ ︸

F0

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 12 / 27

Page 22: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

SDP for Polynomial Optimization

Choose a cost c e.g. (1, 0, 1) and solve:

minz

c>

z

s.t. ∑i

Fi zi < F0 , A z = d .

Solution(

z1 z2z2 z3

)=

(1 −1−1 1

)< 0 (eigenvalues 0 and 1)

a2 − 2ab + b2 =(a b

) ( 1 −1−1 1

)︸ ︷︷ ︸

<0

(ab

)= (a− b)2 .

Solving SDP =⇒ Finding SUMS OF SQUARES certificates

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 13 / 27

Page 23: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

SDP for Polynomial Optimization

General case:

Semialgebraic set S := {x ∈ Rn : g1(x) > 0, . . . , gm(x) > 0}

p∗ := minx∈S

p(x): NP hard

Sums of squares (SOS) Σ[x] (e.g. (x1 − x2)2)

Q(S) :={

σ0(x) + ∑mj=1 σj(x)gj(x), with σj ∈ Σ[x]

}Fix the degree 2k of sums of squaresQk(S) := Q(S) ∩R2k[x]

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 14 / 27

Page 24: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

SDP for Polynomial Optimization

Hierarchy of SDP relaxations:

λk := supλ

{λ : p− λ ∈ Qk(S)

}Convergence guarantees λk ↑ p∗ [Lasserre 01]

Can be computed with SDP solvers (CSDP, SDPA)

“No Free Lunch” Rule: (n+2kn ) SDP variables

Extension to semialgebraic functions r(x) = p(x)/√

q(x)[Lasserre-Putinar 10]

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 15 / 27

Page 25: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Sparse SDP Optimization [Waki, Lasserre 06]

Correlative sparsity pattern (csp) of variables

x2x5 + x3x6 − x2x3 − x5x6 + x1(−x1 + x2 + x3 − x4 + x5 + x6)

6

4

5

1

2

3

1 Maximal cliques C1, . . . , Cl

2 Average size κ ; (κ+2kκ )

variables

C1 := {1, 4}C2 := {1, 2, 3, 5}C3 := {1, 3, 5, 6}Dense SDP: 210 variablesSparse SDP: 115 variables

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 16 / 27

Page 26: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Introduction

Semidefinite Programming for Polynomial Optimization

Rounding Error Bounds with Sparse SDP

Conclusion

Page 27: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Polynomial Programs

Input: exact f (x), floating-point f (x, e), x ∈ S, | ei |6 2−m

Output: Bound for f − f1: Error r(x, e) := f (x)− f (x, e) = ∑

α

rα(e)xα

2: Decompose r(x, e) = l(x, e) + h(x, e), l linear in e

3: l(x, e) = ∑n′i=0 si(x)ei

4: Maximal cliques correspond to {x, e1}, . . . , {x, en′}

5: Bound l(x, e) with sparse SDP relaxations (and h with IA)

Dense relaxation: (n+n′+2kn+n′ ) SDP variables

Sparse relaxation: n′(n+1+2kn+1 ) SDP variables

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 17 / 27

Page 28: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Preliminary Comparisons

f (x) := x2x5 + x3x6− x2x3− x5x6 + x1(−x1 + x2 + x3− x4 + x5 + x6)

x ∈ [4.00, 6.36]6 , e ∈ [−ε, ε]15 , ε = 2−24

Dense SDP: (6+15+46+15 ) = 12650 variables ; Out of memory

Sparse SDP Real2Float tool: 15(6+1+46+1 ) = 4950 ; 789ε

Interval arithmetic: 2023ε (17 × less CPU)

Symbolic Taylor FPTaylor tool: 936ε (16.3 ×more CPU)

SMT-based rosa tool: 789ε (4.6 ×more CPU)Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 18 / 27

Page 29: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Preliminary Comparisons

Real2Float

rosa

FPTaylor

0

200

400

600

800

1,000

789ε 789ε

936ε

CPU Time

Erro

rBo

und

(ε)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 18 / 27

Page 30: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Extensions: Transcendental Programs

Given K a compact set and f a transcendental function, boundf ∗ = inf

x∈Kf (x) and prove f ∗ > 0

f is under-approximated by a semialgebraic function fsa

Reduce the problem f ∗sa := infx∈K fsa(x) to a polynomialoptimization problem (POP)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 19 / 27

Page 31: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Extensions: Transcendental Programs

Approximation theory: Chebyshev/Taylor models

mandatory for non-polynomial problems

hard to combine with Sum-of-Squares techniques (degreeof approximation)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 19 / 27

Page 32: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Maxplus Approximations

Initially introduced to solve Optimal Control Problems[Fleming-McEneaney 00]

Curse of dimensionality reduction [McEaneney Kluberg,Gaubert-McEneaney-Qu 11, Qu 13].Allowed to solve instances of dim up to 15 (inaccessible bygrid methods)

In our context: approximate transcendental functions

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 20 / 27

Page 33: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Maxplus Approximations

DefinitionLet γ > 0. A function φ : Rn → R is said to be γ-semiconvex ifthe function x 7→ φ(x) + γ

2 ‖x‖22 is convex.

a

y

par+a1

par+a2

par−a2

par−a1

a2a1

arctan

m M

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 20 / 27

Page 34: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Maxplus Approximations

Exact parsimonious maxplus representations

a

y

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 21 / 27

Page 35: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Maxplus Approximations

Exact parsimonious maxplus representations

a

y

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 21 / 27

Page 36: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Extensions: Programs with Conditionals

if (p(x) 6 0) f (x); else g(x);

DIVERGENCE PATH ERROR:

r? := max{max

p(x)60,p(x,e)>0| f (x, e)− g(x) |

maxp(x)>0,p(x,e)60

| g(x, e)− f (x) |

maxp(x)>0,p(x,e)>0

| f (x, e)− f (x) |

maxp(x)60,p(x,e)60

| g(x, e)− g(x) |

}

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 22 / 27

Page 37: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Benchmarks

Doppler

u ∈ [−100, 100]v ∈ [20, 20000]T ∈ [−30, 50]

let t1 = 331.4 + 0.6T in−t1v

(t1 + u)2

FPTaylor

Real2Float

rosa

0

1,000

2,000

3,000

4,000

5,000

1,415ε

2,567ε

4,477ε

CPU Time

Erro

rBo

und

(ε)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 23 / 27

Page 38: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Benchmarks

Kepler2

x ∈ [4, 6.36]6

x1x4(−x1 + x2 + x3 − x4+x5 + x6) + x2x5(x1 − x2+x3 + x4 − x5 + x6)

+x3x6(x1 + x2 − x3+x4 + x5 − x6)

−x2x3x4 − x1x3x5−x1x2x6 − x4x5x6

Real2Float

FPTaylor

rosa

0

0.5

1

1.5

2

·104

17,114ε

23,509ε

19,456ε

CPU Time

Erro

rBo

und

(ε)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 24 / 27

Page 39: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Benchmarks

verhulst

x ∈ [0.1, 0.3]

4x

1 +x

1.11

Real2Float

FPTaylor

rosa

0

2

4

6

3.07ε 3.16ε

6.15ε

CPU Time

Erro

rBo

und

(ε)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 25 / 27

Page 40: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Benchmarks

logexp

x ∈ [−8, 8]

log(1 + exp(x))

Real2Float

FPTaylor

0

5

10

15

20

13.5ε

15.4ε

CPU Time

Erro

rBo

und

(ε)

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 26 / 27

Page 41: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Introduction

Semidefinite Programming for Polynomial Optimization

Rounding Error Bounds with Sparse SDP

Conclusion

Page 42: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Conclusion

Sparse SDP relaxations analyze NONLINEAR PROGRAMS:

Polynomial and transcendental programs

Handles conditionals, input uncertainties, . . .

Certified ; Formal rounding error bounds

Real2Float open source tool:

https://forge.ocamlcore.org/projects/nl-certify

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 27 / 27

Page 43: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

Conclusion

Further research:

Improve formal polynomial checker

Alternative polynomial bounds using geometricprogramming (T. de Wolff, S. Iliman)

Mixed linear/SDP certificates (trade-off CPU/precision)

More program verification: while loops

Automatic FPGA code generation

Victor Magron Certified Roundoff Error Bounds using Semidefinite Programming 27 / 27

Page 44: Certified Roundoff Error Bounds using Semidefinite Programming · 2017-11-26 · Nonlinear Programs Polynomialsprograms : +, , x2x5 +x3x6 +x1( x1 +x2 +x3 x4 +x5 +x6) Semialgebraicprograms:

End

Thank you for your attention!

http://www-verimag.imag.fr/~magron

V. Magron, G. Constantinides, A. Donaldson. CertifiedRoundoff Error Bounds Using Semidefinite Programming,arxiv.org/abs/1507.03331